<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
<!-- NewPage --> | |
<html lang="en"> | |
<head> | |
<!-- Generated by javadoc (1.8.0) on Sun Aug 28 20:41:59 EST 2016 --> | |
<title>ActivatableInvocationHandler (Apache River v3.0.0 API Documentation (internals))</title> | |
<meta name="date" content="2016-08-28"> | |
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style"> | |
<script type="text/javascript" src="../../../script.js"></script> | |
</head> | |
<body> | |
<script type="text/javascript"><!-- | |
try { | |
if (location.href.indexOf('is-external=true') == -1) { | |
parent.document.title="ActivatableInvocationHandler (Apache River v3.0.0 API Documentation (internals))"; | |
} | |
} | |
catch(err) { | |
} | |
//--> | |
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":9,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10}; | |
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; | |
var altColor = "altColor"; | |
var rowColor = "rowColor"; | |
var tableTab = "tableTab"; | |
var activeTableTab = "activeTableTab"; | |
</script> | |
<noscript> | |
<div>JavaScript is disabled on your browser.</div> | |
</noscript> | |
<!-- ========= START OF TOP NAVBAR ======= --> | |
<div class="topNav"><a name="navbar.top"> | |
<!-- --> | |
</a> | |
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> | |
<a name="navbar.top.firstrow"> | |
<!-- --> | |
</a> | |
<ul class="navList" title="Navigation"> | |
<li><a href="../../../overview-summary.html">Overview</a></li> | |
<li><a href="package-summary.html">Package</a></li> | |
<li class="navBarCell1Rev">Class</li> | |
<li><a href="class-use/ActivatableInvocationHandler.html">Use</a></li> | |
<li><a href="package-tree.html">Tree</a></li> | |
<li><a href="../../../deprecated-list.html">Deprecated</a></li> | |
<li><a href="../../../index-all.html">Index</a></li> | |
<li><a href="../../../help-doc.html">Help</a></li> | |
</ul> | |
</div> | |
<div class="subNav"> | |
<ul class="navList"> | |
<li>Prev Class</li> | |
<li><a href="../../../net/jini/activation/ActivatableInvocationHandler.Failure.html" title="class in net.jini.activation"><span class="typeNameLink">Next Class</span></a></li> | |
</ul> | |
<ul class="navList"> | |
<li><a href="../../../index.html?net/jini/activation/ActivatableInvocationHandler.html" target="_top">Frames</a></li> | |
<li><a href="ActivatableInvocationHandler.html" target="_top">No Frames</a></li> | |
</ul> | |
<ul class="navList" id="allclasses_navbar_top"> | |
<li><a href="../../../allclasses-noframe.html">All Classes</a></li> | |
</ul> | |
<div> | |
<script type="text/javascript"><!-- | |
allClassesLink = document.getElementById("allclasses_navbar_top"); | |
if(window==top) { | |
allClassesLink.style.display = "block"; | |
} | |
else { | |
allClassesLink.style.display = "none"; | |
} | |
//--> | |
</script> | |
</div> | |
<div> | |
<ul class="subNavList"> | |
<li>Summary: </li> | |
<li><a href="#nested.class.summary">Nested</a> | </li> | |
<li><a href="#field.summary">Field</a> | </li> | |
<li><a href="#constructor.summary">Constr</a> | </li> | |
<li><a href="#method.summary">Method</a></li> | |
</ul> | |
<ul class="subNavList"> | |
<li>Detail: </li> | |
<li><a href="#field.detail">Field</a> | </li> | |
<li><a href="#constructor.detail">Constr</a> | </li> | |
<li><a href="#method.detail">Method</a></li> | |
</ul> | |
</div> | |
<a name="skip.navbar.top"> | |
<!-- --> | |
</a></div> | |
<!-- ========= END OF TOP NAVBAR ========= --> | |
<!-- ======== START OF CLASS DATA ======== --> | |
<div class="header"> | |
<div class="subTitle">net.jini.activation</div> | |
<h2 title="Class ActivatableInvocationHandler" class="title">Class ActivatableInvocationHandler</h2> | |
</div> | |
<div class="contentContainer"> | |
<ul class="inheritance"> | |
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> | |
<li> | |
<ul class="inheritance"> | |
<li>net.jini.activation.ActivatableInvocationHandler</li> | |
</ul> | |
</li> | |
</ul> | |
<div class="description"> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<dl> | |
<dt>All Implemented Interfaces:</dt> | |
<dd><a href="http://docs.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationHandler.html?is-external=true" title="class or interface in java.lang.reflect">InvocationHandler</a>, <a href="../../../net/jini/security/proxytrust/TrustEquivalence.html" title="interface in net.jini.security.proxytrust">TrustEquivalence</a></dd> | |
</dl> | |
<hr> | |
<br> | |
<pre>public final class <span class="typeNameLabel">ActivatableInvocationHandler</span> | |
extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> | |
implements <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationHandler.html?is-external=true" title="class or interface in java.lang.reflect">InvocationHandler</a>, <a href="../../../net/jini/security/proxytrust/TrustEquivalence.html" title="interface in net.jini.security.proxytrust">TrustEquivalence</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></pre> | |
<div class="block">An invocation handler for activatable remote objects. If the client | |
constraints of this activatable invocation handler are not | |
<code>null</code>, then the invocation handler's underlying proxy (if | |
any) must implement <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a> or a remote invocation | |
will fail with an <a href="../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io"><code>UnsupportedConstraintException</code></a>.</div> | |
<dl> | |
<dt><span class="simpleTagLabel">Since:</span></dt> | |
<dd>2.0</dd> | |
<dt><span class="simpleTagLabel">Author:</span></dt> | |
<dd>Sun Microsystems, Inc.</dd> | |
<dt><span class="seeLabel">See Also:</span></dt> | |
<dd><a href="../../../serialized-form.html#net.jini.activation.ActivatableInvocationHandler">Serialized Form</a></dd> | |
<dt><span class="simpleTagLabel">Implementation Specifics:</span></dt> | |
<dd>This implementation recognizes the following system property: | |
<ul> | |
<li><code>org.apache.river.activation.enableActivateGrant</code> - This | |
property is interpreted as a <code>boolean</code> value (see <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Boolean.html?is-external=true#getBoolean-java.lang.String-" title="class or interface in java.lang"><code>Boolean.getBoolean</code></a>). If <code>true</code>, this | |
implementation invokes <a href="../../../net/jini/security/Security.html#grant-java.lang.Class-java.lang.Class-"><code>Security.grant</code></a> | |
as defined in the specification. | |
</ul> | |
<p>This implementation's <a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"><code>invoke</code></a> method throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a> if a remote invocation is to be made and | |
the <code>proxy</code> argument is an instance of an interface | |
whose binary name is | |
<code>javax.management.MBeanServerConnection</code> or any of the | |
names produced by the following procedure: | |
<blockquote> | |
For each resource named | |
<code>org/apache/river/proxy/resources/InvocationHandler.moreProhibitedProxyInterfaces</code> | |
that is visible to the system class loader, the contents of the | |
resource are parsed as UTF-8 text to produce a list of interface | |
names. The resource must contain a list of binary names of | |
interfaces, one per line. Space and tab characters surrounding | |
each name, as well as blank lines, are ignored. The comment | |
character is <tt>'#'</tt>; on each line, all characters starting | |
with the first comment character are ignored. | |
</blockquote> | |
<p>This implementation uses the <a href="http://docs.oracle.com/javase/6/docs/api/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging"><code>Logger</code></a> named | |
<code>net.jini.activation.ActivatableInvocationHandler</code> to log | |
information at the following levels: | |
<table summary="Describes what is logged by ActivatableInvocationHandler | |
at various logging levels" border=1 cellpadding=5> | |
<tr> <th> Level <th> Description | |
<tr> <td> <a href="../../../org/apache/river/logging/Levels.html#FAILED"><code>FAILED</code></a> <td> exception thrown from final | |
attempt to communicate a remote call | |
<tr> <td> <a href="../../../org/apache/river/logging/Levels.html#FAILED"><code>FAILED</code></a> <td> exception thrown activating | |
the object | |
<tr> <td> <a href="../../../org/apache/river/logging/Levels.html#HANDLED"><code>HANDLED</code></a> <td> exception caught in | |
attempt to communicate a remote call | |
</table></dd> | |
</dl> | |
</li> | |
</ul> | |
</div> | |
<div class="summary"> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<!-- ======== NESTED CLASS SUMMARY ======== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="nested.class.summary"> | |
<!-- --> | |
</a> | |
<h3>Nested Class Summary</h3> | |
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> | |
<caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> | |
<tr> | |
<th class="colFirst" scope="col">Modifier and Type</th> | |
<th class="colLast" scope="col">Class and Description</th> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private static class </code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.Failure.html" title="class in net.jini.activation">ActivatableInvocationHandler.Failure</a></span></code> | |
<div class="block">Holds information about the communication failure of a remote | |
call attempt.</div> | |
</td> | |
</tr> | |
</table> | |
</li> | |
</ul> | |
<!-- =========== FIELD SUMMARY =========== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="field.summary"> | |
<!-- --> | |
</a> | |
<h3>Field Summary</h3> | |
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> | |
<caption><span>Fields</span><span class="tabEnd"> </span></caption> | |
<tr> | |
<th class="colFirst" scope="col">Modifier and Type</th> | |
<th class="colLast" scope="col">Field and Description</th> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private <a href="../../../net/jini/core/constraint/MethodConstraints.html" title="interface in net.jini.core.constraint">MethodConstraints</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#clientConstraints">clientConstraints</a></span></code> | |
<div class="block">The client constraints or <code>null</code>.</div> | |
</td> | |
</tr> | |
<tr class="rowColor"> | |
<td class="colFirst"><code>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>[]</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#constructorArgs">constructorArgs</a></span></code> | |
<div class="block">Constructor parameter classes for proxy classes.</div> | |
</td> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private static boolean</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#enableGrant">enableGrant</a></span></code> | |
<div class="block">Flag to enable use of Security.grant.</div> | |
</td> | |
</tr> | |
<tr class="rowColor"> | |
<td class="colFirst"><code>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#getPtiMethod">getPtiMethod</a></span></code> </td> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#id">id</a></span></code> | |
<div class="block">The activation identifier.</div> | |
</td> | |
</tr> | |
<tr class="rowColor"> | |
<td class="colFirst"><code>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging">Logger</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#logger">logger</a></span></code> | |
<div class="block">logger</div> | |
</td> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private static int</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#MAX_RETRIES">MAX_RETRIES</a></span></code> | |
<div class="block">The number of times to retry a call, with varying degrees of | |
reactivation in between.</div> | |
</td> | |
</tr> | |
<tr class="rowColor"> | |
<td class="colFirst"><code>private static long</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#serialVersionUID">serialVersionUID</a></span></code> </td> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#uproxy">uproxy</a></span></code> | |
<div class="block">The underlying proxy or <code>null</code>.</div> | |
</td> | |
</tr> | |
</table> | |
</li> | |
</ul> | |
<!-- ======== CONSTRUCTOR SUMMARY ======== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="constructor.summary"> | |
<!-- --> | |
</a> | |
<h3>Constructor Summary</h3> | |
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> | |
<caption><span>Constructors</span><span class="tabEnd"> </span></caption> | |
<tr> | |
<th class="colFirst" scope="col">Modifier</th> | |
<th class="colLast" scope="col">Constructor and Description</th> | |
</tr> | |
<tr class="altColor"> | |
<td class="colFirst"><code> </code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#ActivatableInvocationHandler-java.rmi.activation.ActivationID-java.rmi.Remote-">ActivatableInvocationHandler</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> id, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a> underlyingProxy)</code> | |
<div class="block">Creates an instance with the specified activation identifier, a | |
possibly-<code>null</code> underlying proxy, and <code>null</code> | |
client constraints.</div> | |
</td> | |
</tr> | |
<tr class="rowColor"> | |
<td class="colFirst"><code>private </code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#ActivatableInvocationHandler-java.rmi.activation.ActivationID-java.rmi.Remote-net.jini.core.constraint.MethodConstraints-">ActivatableInvocationHandler</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> id, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a> underlyingProxy, | |
<a href="../../../net/jini/core/constraint/MethodConstraints.html" title="interface in net.jini.core.constraint">MethodConstraints</a> clientConstraints)</code> | |
<div class="block">Creates an instance with the specified activation identifier, optional | |
underlying proxy, and client constraints.</div> | |
</td> | |
</tr> | |
</table> | |
</li> | |
</ul> | |
<!-- ========== METHOD SUMMARY =========== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="method.summary"> | |
<!-- --> | |
</a> | |
<h3>Method Summary</h3> | |
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> | |
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> | |
<tr> | |
<th class="colFirst" scope="col">Modifier and Type</th> | |
<th class="colLast" scope="col">Method and Description</th> | |
</tr> | |
<tr id="i0" class="altColor"> | |
<td class="colFirst"><code>private void</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#activate-boolean-java.lang.Object-java.lang.reflect.Method-">activate</a></span>(boolean force, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method)</code> | |
<div class="block">Activate the object (see activate0).</div> | |
</td> | |
</tr> | |
<tr id="i1" class="rowColor"> | |
<td class="colFirst"><code>private void</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#activate0-boolean-java.lang.Object-">activate0</a></span>(boolean force, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy)</code> | |
<div class="block">Activate the object and update the underlying proxy.</div> | |
</td> | |
</tr> | |
<tr id="i2" class="altColor"> | |
<td class="colFirst"><code>boolean</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#checkTrustEquivalence-java.lang.Object-">checkTrustEquivalence</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</code> | |
<div class="block">Returns <code>true</code> if the specified object (which is not | |
yet known to be trusted) is equivalent in trust, content, and | |
function to this known trusted object, and <code>false</code> | |
otherwise.</div> | |
</td> | |
</tr> | |
<tr id="i3" class="rowColor"> | |
<td class="colFirst"><code>boolean</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#equals-java.lang.Object-">equals</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</code> | |
<div class="block">Compares the specified object with this | |
<code>ActivatableInvocationHandler</code> for equality.</div> | |
</td> | |
</tr> | |
<tr id="i4" class="altColor"> | |
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#getActivationID--">getActivationID</a></span>()</code> | |
<div class="block">Returns the activation identifier supplied during construction of | |
this invocation handler.</div> | |
</td> | |
</tr> | |
<tr id="i5" class="rowColor"> | |
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#getCurrentProxy--">getCurrentProxy</a></span>()</code> | |
<div class="block">Returns the current value for the underlying proxy.</div> | |
</td> | |
</tr> | |
<tr id="i6" class="altColor"> | |
<td class="colFirst"><code>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#getProxyLoader-java.lang.Class-">getProxyLoader</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> proxyClass)</code> | |
<div class="block">Returns the class loader for the specified proxy class.</div> | |
</td> | |
</tr> | |
<tr id="i7" class="rowColor"> | |
<td class="colFirst"><code>protected <a href="../../../net/jini/security/proxytrust/ProxyTrustIterator.html" title="interface in net.jini.security.proxytrust">ProxyTrustIterator</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#getProxyTrustIterator--">getProxyTrustIterator</a></span>()</code> | |
<div class="block">Returns a proxy trust iterator for an activatable object that is | |
suitable for use by <a href="../../../net/jini/security/proxytrust/ProxyTrustVerifier.html" title="class in net.jini.security.proxytrust"><code>ProxyTrustVerifier</code></a>.</div> | |
</td> | |
</tr> | |
<tr id="i8" class="altColor"> | |
<td class="colFirst"><code>private boolean</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#hasConsistentConstraints--">hasConsistentConstraints</a></span>()</code> | |
<div class="block">Returns true if the constraints on the underlying proxy (if it | |
implements <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a>) are equivalent to the | |
constraints of this invocation handler, or if the underlying proxy | |
does not implement RemoteMethodControl.</div> | |
</td> | |
</tr> | |
<tr id="i9" class="rowColor"> | |
<td class="colFirst"><code>int</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#hashCode--">hashCode</a></span>()</code> | |
<div class="block">Returns a hash code value for this object.</div> | |
</td> | |
</tr> | |
<tr id="i10" class="altColor"> | |
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invoke</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Processes a method invocation made on the encapsulating | |
proxy instance, <code>proxy</code>, and returns the result.</div> | |
</td> | |
</tr> | |
<tr id="i11" class="rowColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeMethod</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> m, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Reflectively invokes the method on the supplied proxy and returns | |
the result in a <code>Result</code> object.</div> | |
</td> | |
</tr> | |
<tr id="i12" class="altColor"> | |
<td class="colFirst"><code>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeMethod0-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeMethod0</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> m, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Reflectively invokes the method on the supplied <code>proxy</code> | |
as follows: | |
If the <code>method</code>'s declaring class is not | |
<code>public</code>, the proxy is an instance of the | |
<code>method</code>'s declaring class, and the proxy class is | |
<code>public</code>, a <code>public</code> method with the same name and | |
parameter types is obtained from the proxy class, and if such a | |
method exists, that method is | |
reflectively invoked on the proxy passing it the specified | |
<code>args</code> and the result is returned, otherwise if such a | |
method doesn't exist an <code>ActivateFailedException</code> | |
is thrown with <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/NoSuchMethodException.html?is-external=true" title="class or interface in java.lang"><code>NoSuchMethodException</code></a> as the cause.</div> | |
</td> | |
</tr> | |
<tr id="i13" class="rowColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeObjectMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeObjectMethod</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Handles java.lang.Object methods.</div> | |
</td> | |
</tr> | |
<tr id="i14" class="altColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeRemoteMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeRemoteMethod</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Handles remote methods.</div> | |
</td> | |
</tr> | |
<tr id="i15" class="rowColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeRemoteMethodControlMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeRemoteMethodControlMethod</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Handles RemoteMethodControl methods.</div> | |
</td> | |
</tr> | |
<tr id="i16" class="altColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#invokeTrustEquivalenceMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-">invokeTrustEquivalenceMethod</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</code> | |
<div class="block">Handles TrustEquivalence methods.</div> | |
</td> | |
</tr> | |
<tr id="i17" class="rowColor"> | |
<td class="colFirst"><code>private void</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#logThrow-java.util.logging.Level-java.lang.String-java.lang.String-java.lang.reflect.Method-java.lang.Throwable-">logThrow</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/logging/Level.html?is-external=true" title="class or interface in java.util.logging">Level</a> level, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> logRecordText, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> sourceMethodName, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a> t)</code> | |
<div class="block">Log the throw of an outbound remote call.</div> | |
</td> | |
</tr> | |
<tr id="i18" class="altColor"> | |
<td class="colFirst"><code>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#proxyToString-java.lang.Object-">proxyToString</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy)</code> | |
<div class="block">Returns a string representation for a proxy that uses this invocation | |
handler.</div> | |
</td> | |
</tr> | |
<tr id="i19" class="rowColor"> | |
<td class="colFirst"><code>private void</code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#readObject-java.io.ObjectInputStream-">readObject</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/io/ObjectInputStream.html?is-external=true" title="class or interface in java.io">ObjectInputStream</a> s)</code> | |
<div class="block">Verifies that the activation identifier is not <code>null</code>, | |
and that the constraints on this invocation handler and the | |
underlying proxy are consistent.</div> | |
</td> | |
</tr> | |
<tr id="i20" class="altColor"> | |
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> | |
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/activation/ActivatableInvocationHandler.html#toString--">toString</a></span>()</code> | |
<div class="block">Returns a string representation of this object.</div> | |
</td> | |
</tr> | |
</table> | |
<ul class="blockList"> | |
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> | |
<!-- --> | |
</a> | |
<h3>Methods inherited from class java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> | |
<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> | |
</ul> | |
</li> | |
</ul> | |
</li> | |
</ul> | |
</div> | |
<div class="details"> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<!-- ============ FIELD DETAIL =========== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="field.detail"> | |
<!-- --> | |
</a> | |
<h3>Field Detail</h3> | |
<a name="serialVersionUID"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>serialVersionUID</h4> | |
<pre>private static final long serialVersionUID</pre> | |
<dl> | |
<dt><span class="seeLabel">See Also:</span></dt> | |
<dd><a href="../../../constant-values.html#net.jini.activation.ActivatableInvocationHandler.serialVersionUID">Constant Field Values</a></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="MAX_RETRIES"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>MAX_RETRIES</h4> | |
<pre>private static final int MAX_RETRIES</pre> | |
<div class="block">The number of times to retry a call, with varying degrees of | |
reactivation in between.</div> | |
<dl> | |
<dt><span class="seeLabel">See Also:</span></dt> | |
<dd><a href="../../../constant-values.html#net.jini.activation.ActivatableInvocationHandler.MAX_RETRIES">Constant Field Values</a></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="logger"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>logger</h4> | |
<pre>private static final <a href="http://docs.oracle.com/javase/6/docs/api/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging">Logger</a> logger</pre> | |
<div class="block">logger</div> | |
</li> | |
</ul> | |
<a name="constructorArgs"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>constructorArgs</h4> | |
<pre>private static final <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>[] constructorArgs</pre> | |
<div class="block">Constructor parameter classes for proxy classes.</div> | |
</li> | |
</ul> | |
<a name="enableGrant"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>enableGrant</h4> | |
<pre>private static final boolean enableGrant</pre> | |
<div class="block">Flag to enable use of Security.grant.</div> | |
</li> | |
</ul> | |
<a name="id"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>id</h4> | |
<pre>private final <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> id</pre> | |
<div class="block">The activation identifier.</div> | |
</li> | |
</ul> | |
<a name="uproxy"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>uproxy</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a> uproxy</pre> | |
<div class="block">The underlying proxy or <code>null</code>.</div> | |
</li> | |
</ul> | |
<a name="clientConstraints"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>clientConstraints</h4> | |
<pre>private final <a href="../../../net/jini/core/constraint/MethodConstraints.html" title="interface in net.jini.core.constraint">MethodConstraints</a> clientConstraints</pre> | |
<div class="block">The client constraints or <code>null</code>.</div> | |
</li> | |
</ul> | |
<a name="getPtiMethod"> | |
<!-- --> | |
</a> | |
<ul class="blockListLast"> | |
<li class="blockList"> | |
<h4>getPtiMethod</h4> | |
<pre>private static final <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> getPtiMethod</pre> | |
</li> | |
</ul> | |
</li> | |
</ul> | |
<!-- ========= CONSTRUCTOR DETAIL ======== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="constructor.detail"> | |
<!-- --> | |
</a> | |
<h3>Constructor Detail</h3> | |
<a name="ActivatableInvocationHandler-java.rmi.activation.ActivationID-java.rmi.Remote-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>ActivatableInvocationHandler</h4> | |
<pre>public ActivatableInvocationHandler(<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> id, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a> underlyingProxy)</pre> | |
<div class="block">Creates an instance with the specified activation identifier, a | |
possibly-<code>null</code> underlying proxy, and <code>null</code> | |
client constraints. If the underlying proxy implements <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a> and its constraints are not <code>null</code>, | |
the underlying proxy of this instance is a copy of that proxy with | |
<code>null</code> constraints.</div> | |
<dl> | |
<dt><span class="paramLabel">Parameters:</span></dt> | |
<dd><code>id</code> - the activation identifier</dd> | |
<dd><code>underlyingProxy</code> - an underlying proxy, or <code>null</code></dd> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if <code>id</code> is <code>null</code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="ActivatableInvocationHandler-java.rmi.activation.ActivationID-java.rmi.Remote-net.jini.core.constraint.MethodConstraints-"> | |
<!-- --> | |
</a> | |
<ul class="blockListLast"> | |
<li class="blockList"> | |
<h4>ActivatableInvocationHandler</h4> | |
<pre>private ActivatableInvocationHandler(<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> id, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/Remote.html?is-external=true" title="class or interface in java.rmi">Remote</a> underlyingProxy, | |
<a href="../../../net/jini/core/constraint/MethodConstraints.html" title="interface in net.jini.core.constraint">MethodConstraints</a> clientConstraints)</pre> | |
<div class="block">Creates an instance with the specified activation identifier, optional | |
underlying proxy, and client constraints. This constructor assumes | |
that the client constraints are equivalent to the constraints on the | |
underlying proxy.</div> | |
</li> | |
</ul> | |
</li> | |
</ul> | |
<!-- ============ METHOD DETAIL ========== --> | |
<ul class="blockList"> | |
<li class="blockList"><a name="method.detail"> | |
<!-- --> | |
</a> | |
<h3>Method Detail</h3> | |
<a name="hasConsistentConstraints--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>hasConsistentConstraints</h4> | |
<pre>private boolean hasConsistentConstraints()</pre> | |
<div class="block">Returns true if the constraints on the underlying proxy (if it | |
implements <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a>) are equivalent to the | |
constraints of this invocation handler, or if the underlying proxy | |
does not implement RemoteMethodControl.</div> | |
</li> | |
</ul> | |
<a name="getActivationID--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>getActivationID</h4> | |
<pre>public <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true" title="class or interface in java.rmi.activation">ActivationID</a> getActivationID()</pre> | |
<div class="block">Returns the activation identifier supplied during construction of | |
this invocation handler.</div> | |
<dl> | |
<dt><span class="returnLabel">Returns:</span></dt> | |
<dd>the activation identifier</dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="getCurrentProxy--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>getCurrentProxy</h4> | |
<pre>public <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> getCurrentProxy()</pre> | |
<div class="block">Returns the current value for the underlying proxy.</div> | |
<dl> | |
<dt><span class="returnLabel">Returns:</span></dt> | |
<dd>the underlying proxy</dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invoke</h4> | |
<pre>public <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invoke(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre> | |
<div class="block">Processes a method invocation made on the encapsulating | |
proxy instance, <code>proxy</code>, and returns the result. | |
This method is invoked when a method is invoked on a proxy | |
instance that this handler is associated with. | |
<p>If the specified method is one of the following | |
<code>java.lang.Object</code> methods, it will be processed as follows: | |
<p><ul> | |
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang"><code>equals</code></a>: returns | |
<code>true</code> if the argument is an | |
instance of a dynamically generated <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Proxy.html?is-external=true" title="class or interface in java.lang.reflect"><code>Proxy</code></a> | |
class that implements the same ordered set of interfaces as the | |
specified proxy, and this invocation handler is equal to the invocation | |
handler of that parameter, and returns <code>false</code> otherwise. | |
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang"><code>hashCode</code></a>: returns the hash code for the | |
proxy. | |
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang"><code>toString</code></a>: returns a string | |
representation of the specified <code>proxy</code> object. | |
</ul> | |
<p>If the specified method is <a href="../../../net/jini/core/constraint/RemoteMethodControl.html#setConstraints-net.jini.core.constraint.MethodConstraints-"><code>RemoteMethodControl.setConstraints</code></a>, then if <code>proxy</code> is an | |
instance of a dynamic proxy class containing this invocation | |
handler, returns a new proxy containing a copy of this invocation | |
handler with the same activation identifier, the new specified | |
client constraints (<code>args[0]</code>), and the current | |
underlying proxy, or if the current underlying proxy implements | |
<a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a>, a copy of that proxy with the new | |
specified client constraints. An exception is thrown if | |
<code>proxy</code> is not an instance of a dynamic proxy class | |
containing this invocation handler. | |
<p>If the specified method is <a href="../../../net/jini/core/constraint/RemoteMethodControl.html#getConstraints--"><code>RemoteMethodControl.getConstraints</code></a>, returns the client constraints. | |
<p>If the specified method is | |
<a href="../../../net/jini/security/proxytrust/TrustEquivalence.html#checkTrustEquivalence-java.lang.Object-"><code>TrustEquivalence.checkTrustEquivalence</code></a>, returns <code>true</code> if | |
the argument (<code>args[0]</code>) is an instance of a dynamic proxy | |
class (that is, a class generated by <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Proxy.html?is-external=true" title="class or interface in java.lang.reflect"><code>Proxy</code></a>) that implements the | |
same interfaces as the specified proxy and calling the | |
<a href="../../../net/jini/activation/ActivatableInvocationHandler.html#checkTrustEquivalence-java.lang.Object-"><code>checkTrustEquivalence</code></a> method of this | |
invocation handler with the invocation handler of that argument | |
returns <code>true</code>, and returns <code>false</code> otherwise. | |
<p>For all other methods, a remote invocation is made as follows: | |
<p>A single set of absolute constraints (if any) is used for the | |
duration of the remote invocation, including any activation that may | |
occur. | |
<p><ul> | |
<li>If the underlying proxy is non-<code>null</code>, the method is | |
invoked as follows: | |
<ul> | |
<li>If the client constraints of this object are not | |
<code>null</code> and the underlying proxy does not implement <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a> then an <a href="../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io"><code>UnsupportedConstraintException</code></a> | |
is thrown. | |
<li>If <code>method</code>'s declaring class is not | |
<code>public</code>, the underlying proxy is an instance of the | |
<code>method</code>'s declaring class, and the underlying proxy's | |
class is <code>public</code>, then a <code>public</code> method with | |
the same name and parameter types is obtained from the underlying | |
proxy's class, and if such a method exists, that method is | |
reflectively invoked on the underlying proxy passing it the | |
specified <code>args</code> and the result is returned; otherwise if | |
such a method doesn't exist an <code>ActivateFailedException</code> | |
is thrown with <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/NoSuchMethodException.html?is-external=true" title="class or interface in java.lang"><code>NoSuchMethodException</code></a> as the cause. | |
<li>Otherwise, the original <code>method</code> is reflectively | |
invoked on the underlying proxy passing it the specified | |
<code>args</code>. | |
</ul> | |
<p>If this reflective invocation throws an exception other than | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalAccessException.html?is-external=true" title="class or interface in java.lang"><code>IllegalAccessException</code></a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a>, | |
the <code>ActivateFailedException</code> described above, or | |
an <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationTargetException.html?is-external=true" title="class or interface in java.lang.reflect"><code>InvocationTargetException</code></a> containing <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectException</code></a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectIOException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectIOException</code></a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/NoSuchObjectException.html?is-external=true" title="class or interface in java.rmi"><code>NoSuchObjectException</code></a>, or <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/UnknownHostException.html?is-external=true" title="class or interface in java.rmi"><code>UnknownHostException</code></a>, then if the | |
exception an <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationTargetException.html?is-external=true" title="class or interface in java.lang.reflect"><code>InvocationTargetException</code></a> the contained | |
exception is thrown to the caller, otherwise the exception is thrown | |
directly. | |
<p><li>If the underlying proxy is <code>null</code> or if the | |
reflective invocation does not throw an exception to the caller as | |
described above: | |
<ul> | |
<li>If permitted by some implementation-specific mechanism, | |
dynamically grants permissions to the class loader of the | |
activation identifier's class by invoking <a href="../../../net/jini/security/Security.html#grant-java.lang.Class-java.lang.Class-"><code>Security.grant</code></a> passing the class of the | |
proxy and the class of the activation identifier. If this | |
invocation throws an <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang"><code>UnsupportedOperationException</code></a>, the | |
exception is ignored. | |
<li>A new proxy is obtained by invoking the <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true#activate-boolean-" title="class or interface in java.rmi.activation"><code>activate</code></a> method on the activation identifier, | |
passing <code>false</code> as the argument. That method must return | |
an instance of a dynamic <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Proxy.html?is-external=true" title="class or interface in java.lang.reflect"><code>Proxy</code></a> class, with an invocation | |
handler that is an instance of this class, containing the same | |
activation identifier. If the returned proxy does not meet this | |
criteria, then an <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivateFailedException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivateFailedException</code></a> is thrown. If the | |
<code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectException</code></a>, then | |
a new <code>ConnectException</code> is thrown with the original | |
<code>ConnectException</code> as the cause. If the | |
<code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/RemoteException.html?is-external=true" title="class or interface in java.rmi"><code>RemoteException</code></a>, then | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectIOException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectIOException</code></a> is thrown with the | |
<code>RemoteException</code> as the cause. If the | |
<code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/UnknownObjectException.html?is-external=true" title="class or interface in java.rmi.activation"><code>UnknownObjectException</code></a>, then | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/NoSuchObjectException.html?is-external=true" title="class or interface in java.rmi"><code>NoSuchObjectException</code></a> is thrown with the | |
<code>UnknownObjectException</code> as the cause. Finally, if the | |
<code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivationException</code></a>, | |
then <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivateFailedException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivateFailedException</code></a> is thrown with the | |
<code>ActivationException</code> as the cause. | |
<li>If a valid, new proxy is returned by the <code>activate</code> | |
call, the underlying proxy of the new proxy is obtained from the new | |
proxy's activatable invocation handler. If the obtained underlying | |
proxy implements <code>RemoteMethodControl</code>, this invocation | |
handler's underlying proxy is set to a copy of the obtained | |
underlying proxy with the client constraints of this instance. | |
Otherwise, this invocation handler's underlying proxy is set to the | |
obtained underlying proxy. | |
<li>The reflective invocation is then retried (as above) on the new | |
underlying proxy. Activation and retry can occur up to three | |
times. On subsequent attempts, <code>true</code> will be passed to | |
the activation identifier's <code>activate</code> method, if passing | |
<code>false</code> returned the same underlying proxy as before or | |
if <code>NoSuchObjectException</code> was thrown by the call to the | |
underlying proxy. | |
<li>If the final attempt at reflective invocation throws | |
<code>IllegalAccessException</code> or | |
<code>IllegalArgumentException</code> an | |
<code>ActivateFailedException</code> is thrown with the original | |
exception as the cause. If this reflective invocation throws | |
<code>InvocationTargetException</code>, the contained target | |
exception is thrown. | |
</ul> | |
</ul> | |
<p>The implementation of remote method invocation defined by this class | |
preserves at-most-once call semantics: the remote call either does not | |
execute, partially executes, or executes exactly once at the remote | |
site. Note that for remote calls to activatable objects, arguments may | |
be marshalled more than once. | |
<p>The semantics of this method are unspecified if the arguments could | |
not have been produced by an instance of some valid dynamic proxy | |
class containing this invocation handler. | |
This method throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a> if | |
<code>proxy</code> is an instance of | |
<code>InvocationHandler</code> or, if a remote invocation is to be | |
made, any of the superinterfaces of <code>proxy</code>'s class | |
have a method with the same name and parameter types as | |
<code>method</code> but that does not declare | |
<code>RemoteException</code> or a superclass of | |
<code>RemoteException</code> in its <code>throws</code> clause | |
(even if such a method is not a member of any of the direct | |
superinterfaces of <code>proxy</code>'s class because of | |
overriding).</div> | |
<dl> | |
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationHandler.html?is-external=true#invoke-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-" title="class or interface in java.lang.reflect">invoke</a></code> in interface <code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationHandler.html?is-external=true" title="class or interface in java.lang.reflect">InvocationHandler</a></code></dd> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></dd> | |
<dt><span class="seeLabel">See Also:</span></dt> | |
<dd><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/UndeclaredThrowableException.html?is-external=true" title="class or interface in java.lang.reflect"><code>UndeclaredThrowableException</code></a></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="invokeObjectMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeObjectMethod</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeObjectMethod(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</pre> | |
<div class="block">Handles java.lang.Object methods.</div> | |
</li> | |
</ul> | |
<a name="invokeRemoteMethodControlMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeRemoteMethodControlMethod</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeRemoteMethodControlMethod(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre> | |
<div class="block">Handles RemoteMethodControl methods.</div> | |
<dl> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="invokeTrustEquivalenceMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeTrustEquivalenceMethod</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeTrustEquivalenceMethod(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args)</pre> | |
<div class="block">Handles TrustEquivalence methods.</div> | |
</li> | |
</ul> | |
<a name="invokeRemoteMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeRemoteMethod</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeRemoteMethod(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre> | |
<div class="block">Handles remote methods.</div> | |
<dl> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="logThrow-java.util.logging.Level-java.lang.String-java.lang.String-java.lang.reflect.Method-java.lang.Throwable-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>logThrow</h4> | |
<pre>private void logThrow(<a href="http://docs.oracle.com/javase/6/docs/api/java/util/logging/Level.html?is-external=true" title="class or interface in java.util.logging">Level</a> level, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> logRecordText, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> sourceMethodName, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a> t)</pre> | |
<div class="block">Log the throw of an outbound remote call.</div> | |
</li> | |
</ul> | |
<a name="invokeMethod-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeMethod</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeMethod(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> m, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre> | |
<div class="block">Reflectively invokes the method on the supplied proxy and returns | |
the result in a <code>Result</code> object. If a | |
<code>RemoteException</code> is thrown as a result of the remote | |
invocation, then the result object contains a non-<code>null</code> | |
exception and the retry field indicates whether invocation retry | |
is possible without violating "at-most-once" call semantics. If the | |
result object contains a <code>null</code> exception, then the value | |
field is the return value of the remote invocation.</div> | |
<dl> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="invokeMethod0-java.lang.Object-java.lang.reflect.Method-java.lang.Object:A-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>invokeMethod0</h4> | |
<pre>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> invokeMethod0(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> m, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[] args) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></pre> | |
<div class="block">Reflectively invokes the method on the supplied <code>proxy</code> | |
as follows: | |
<p>If the <code>method</code>'s declaring class is not | |
<code>public</code>, the proxy is an instance of the | |
<code>method</code>'s declaring class, and the proxy class is | |
<code>public</code>, a <code>public</code> method with the same name and | |
parameter types is obtained from the proxy class, and if such a | |
method exists, that method is | |
reflectively invoked on the proxy passing it the specified | |
<code>args</code> and the result is returned, otherwise if such a | |
method doesn't exist an <code>ActivateFailedException</code> | |
is thrown with <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/NoSuchMethodException.html?is-external=true" title="class or interface in java.lang"><code>NoSuchMethodException</code></a> as the cause. | |
<p>Otherwise, the original <code>method</code> is reflectively | |
invoked on the proxy passing it the specified | |
<code>args</code> and the result is returned. | |
<p>If the reflective invocation throws | |
<code>IllegalAccessException</code> or | |
<code>IllegalArgumentException</code>, an | |
<code>ActivateFailedException</code> exception is thrown with the | |
original exception as the cause. If the reflective invocation throws | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/InvocationTargetException.html?is-external=true" title="class or interface in java.lang.reflect"><code>InvocationTargetException</code></a> the contained target exception is | |
thrown.</div> | |
<dl> | |
<dt><span class="paramLabel">Parameters:</span></dt> | |
<dd><code>proxy</code> - a proxy</dd> | |
<dd><code>m</code> - a method</dd> | |
<dd><code>args</code> - arguments</dd> | |
<dt><span class="returnLabel">Returns:</span></dt> | |
<dd>result of reflective invocation</dd> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivateFailedException.html?is-external=true" title="class or interface in java.rmi.activation">ActivateFailedException</a></code> - if the reflective invocation throws | |
<code>IllegalAccessException</code> or | |
<code>IllegalArgumentException</code></dd> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></code> - if the reflective invocation throws | |
<code>InvocationTargetException</code>, the contained | |
target exception is thrown</dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="getProxyTrustIterator--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>getProxyTrustIterator</h4> | |
<pre>protected <a href="../../../net/jini/security/proxytrust/ProxyTrustIterator.html" title="interface in net.jini.security.proxytrust">ProxyTrustIterator</a> getProxyTrustIterator()</pre> | |
<div class="block">Returns a proxy trust iterator for an activatable object that is | |
suitable for use by <a href="../../../net/jini/security/proxytrust/ProxyTrustVerifier.html" title="class in net.jini.security.proxytrust"><code>ProxyTrustVerifier</code></a>. | |
<p>The iterator produces the current underlying proxy on each | |
iteration. The iterator produces up to three elements, but after | |
the first element, iteration terminates unless the exception set by | |
a call to <a href="../../../net/jini/security/proxytrust/ProxyTrustIterator.html#setException-java.rmi.RemoteException-"><code>setException</code></a> on | |
the previous iteration is an instance of <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectException</code></a>, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectIOException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectIOException</code></a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/NoSuchObjectException.html?is-external=true" title="class or interface in java.rmi"><code>NoSuchObjectException</code></a>, or <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/UnknownHostException.html?is-external=true" title="class or interface in java.rmi"><code>UnknownHostException</code></a>. | |
<p>On each iteration, if the current underlying proxy is | |
<code>null</code> or the same as the underlying proxy produced by | |
the previous iteration: | |
<p>A new proxy is obtained by invoking the <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationID.html?is-external=true#activate-boolean-" title="class or interface in java.rmi.activation"><code>activate</code></a> method on the activation identifier, | |
passing <code>false</code> as the argument. That method must return | |
an instance of a dynamic <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Proxy.html?is-external=true" title="class or interface in java.lang.reflect"><code>Proxy</code></a> class, with an invocation | |
handler that is an instance of this class, containing the same | |
activation identifier. If this activation | |
throws one of the following exceptions, the exception is thrown | |
by the <code>next</code> method of the iterator and the iteration | |
terminates: | |
<blockquote>If the proxy returned by the <code>activate</code> call | |
does not meet the criteria listed above, then an <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivateFailedException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivateFailedException</code></a> is thrown. If the <code>activate</code> | |
call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/RemoteException.html?is-external=true" title="class or interface in java.rmi"><code>RemoteException</code></a>, then <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/ConnectIOException.html?is-external=true" title="class or interface in java.rmi"><code>ConnectIOException</code></a> | |
is thrown with the <code>RemoteException</code> as the cause. If | |
the <code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/UnknownHostException.html?is-external=true" title="class or interface in java.rmi"><code>UnknownHostException</code></a>, | |
then <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/NoSuchObjectException.html?is-external=true" title="class or interface in java.rmi"><code>NoSuchObjectException</code></a> is thrown with the | |
<code>UnknownHostException</code> as the cause. Finally, if the | |
<code>activate</code> call throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivationException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivationException</code></a>, then | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/activation/ActivateFailedException.html?is-external=true" title="class or interface in java.rmi.activation"><code>ActivateFailedException</code></a> is thrown with the | |
<code>ActivationException</code> as the cause. | |
</blockquote> | |
<p>If a valid, new proxy is returned by the <code>activate</code> | |
call, the underlying proxy of the new proxy is obtained from the new | |
proxy's activatable invocation handler. If the obtained underlying | |
proxy implements <code>RemoteMethodControl</code>, this invocation | |
handler's underlying proxy is set to a copy of the obtained | |
underlying proxy with the client constraints of this instance. | |
Otherwise, this invocation handler's underlying proxy is set to the | |
obtained underlying proxy. | |
<p>On the first call to the activation identifier's | |
<code>activate</code> method, <code>false</code> is passed as an | |
argument; on subsequent calls <code>true</code> will be passed, if | |
passing <code>false</code> returned the same underlying proxy as | |
before (when compared using the <code>equals</code> method) or if | |
the exception passed to <code>setException</code> is an instance of | |
<code>NoSuchObjectException</code>. If an activation attempt results | |
in an exception, that exception is thrown by the <code>next</code> | |
method of the iterator and iteration terminates.</div> | |
<dl> | |
<dt><span class="returnLabel">Returns:</span></dt> | |
<dd>a proxy trust iterator suitable for use by | |
<code>ProxyTrustVerifier</code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="checkTrustEquivalence-java.lang.Object-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>checkTrustEquivalence</h4> | |
<pre>public boolean checkTrustEquivalence(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</pre> | |
<div class="block">Returns <code>true</code> if the specified object (which is not | |
yet known to be trusted) is equivalent in trust, content, and | |
function to this known trusted object, and <code>false</code> | |
otherwise. | |
<p><code>ActivatableInvocationHandler</code> implements this | |
method as follows: | |
<p>This method returns <code>true</code> if and only if the | |
following conditions are met: | |
<ul> | |
<li> The specified object has the same class as this object. | |
<li> This object's activation identifier implements <a href="../../../net/jini/security/proxytrust/TrustEquivalence.html" title="interface in net.jini.security.proxytrust"><code>TrustEquivalence</code></a>. | |
<li> Invoking the <code>checkTrustEquivalence</code> method on | |
this object's activation identifier passing the specified object's | |
activation identifier returns <code>true</code>. | |
<li> The client constraints in the specified object are equal to the | |
ones in this object. | |
</ul> | |
<p>The underlying proxy of the specified object is set to | |
<code>null</code> if this method returns <code>true</code> and any | |
of the following conditions are met: | |
<ul> | |
<li> This object's underlying proxy is <code>null</code>. | |
<li> This object's underlying proxy is not an instance of <a href="../../../net/jini/security/proxytrust/TrustEquivalence.html" title="interface in net.jini.security.proxytrust"><code>TrustEquivalence</code></a>. | |
<li> Invoking the <code>checkTrustEquivalence</code> method on this | |
object's underlying proxy, passing the underlying proxy of the | |
specified object, returns <code>false</code>. | |
</ul></div> | |
<dl> | |
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt> | |
<dd><code><a href="../../../net/jini/security/proxytrust/TrustEquivalence.html#checkTrustEquivalence-java.lang.Object-">checkTrustEquivalence</a></code> in interface <code><a href="../../../net/jini/security/proxytrust/TrustEquivalence.html" title="interface in net.jini.security.proxytrust">TrustEquivalence</a></code></dd> | |
<dt><span class="paramLabel">Parameters:</span></dt> | |
<dd><code>obj</code> - object to check that is not yet known to be trusted</dd> | |
<dt><span class="returnLabel">Returns:</span></dt> | |
<dd><code>true</code> if the specified object (that is not yet | |
known to be trusted) is equivalent in trust, content, and function to | |
this known trusted object, and returns <code>false</code> otherwise</dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="activate-boolean-java.lang.Object-java.lang.reflect.Method-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>activate</h4> | |
<pre>private void activate(boolean force, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a> method) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre> | |
<div class="block">Activate the object (see activate0).</div> | |
<dl> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="activate0-boolean-java.lang.Object-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>activate0</h4> | |
<pre>private void activate0(boolean force, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/RemoteException.html?is-external=true" title="class or interface in java.rmi">RemoteException</a></pre> | |
<div class="block">Activate the object and update the underlying proxy. The force | |
argument is passed on to the activate method of the activation | |
identifier. If this method does not throw an exception, the value | |
of uproxy is updated to the value returned by calling the id's | |
activate method. Note: The caller should be synchronized on "this" | |
while calling this method.</div> | |
<dl> | |
<dt><span class="paramLabel">Parameters:</span></dt> | |
<dd><code>force</code> - boolean to pass to activation id's activate method</dd> | |
<dd><code>proxy</code> - outer proxy from which dynamic grants are inherited, | |
or null</dd> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/rmi/RemoteException.html?is-external=true" title="class or interface in java.rmi">RemoteException</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="equals-java.lang.Object-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>equals</h4> | |
<pre>public boolean equals(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</pre> | |
<div class="block">Compares the specified object with this | |
<code>ActivatableInvocationHandler</code> for equality. | |
<p> This method returns <code>true</code> if and only if the | |
specified object has the same class as this object, and the | |
activation identifier and client constraints in the specified object | |
are equal to the ones in this object.</div> | |
<dl> | |
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code> in class <code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="hashCode--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>hashCode</h4> | |
<pre>public int hashCode()</pre> | |
<div class="block">Returns a hash code value for this object.</div> | |
<dl> | |
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code> in class <code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="toString--"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>toString</h4> | |
<pre>public <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString()</pre> | |
<div class="block">Returns a string representation of this object.</div> | |
<dl> | |
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code> in class <code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="proxyToString-java.lang.Object-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>proxyToString</h4> | |
<pre>private <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> proxyToString(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> proxy)</pre> | |
<div class="block">Returns a string representation for a proxy that uses this invocation | |
handler.</div> | |
</li> | |
</ul> | |
<a name="readObject-java.io.ObjectInputStream-"> | |
<!-- --> | |
</a> | |
<ul class="blockList"> | |
<li class="blockList"> | |
<h4>readObject</h4> | |
<pre>private void readObject(<a href="http://docs.oracle.com/javase/6/docs/api/java/io/ObjectInputStream.html?is-external=true" title="class or interface in java.io">ObjectInputStream</a> s) | |
throws <a href="http://docs.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>, | |
<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></pre> | |
<div class="block">Verifies that the activation identifier is not <code>null</code>, | |
and that the constraints on this invocation handler and the | |
underlying proxy are consistent.</div> | |
<dl> | |
<dt><span class="throwsLabel">Throws:</span></dt> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/io/InvalidObjectException.html?is-external=true" title="class or interface in java.io">InvalidObjectException</a></code> - if the activation identifier is | |
<code>null</code>, or if the underlying proxy implements <a href="../../../net/jini/core/constraint/RemoteMethodControl.html" title="interface in net.jini.core.constraint"><code>RemoteMethodControl</code></a> and the constraints on the underlying proxy are | |
not equivalent to this invocation handler's constraints</dd> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> | |
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></code></dd> | |
</dl> | |
</li> | |
</ul> | |
<a name="getProxyLoader-java.lang.Class-"> | |
<!-- --> | |
</a> | |
<ul class="blockListLast"> | |
<li class="blockList"> | |
<h4>getProxyLoader</h4> | |
<pre>private static <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/ClassLoader.html?is-external=true" title="class or interface in java.lang">ClassLoader</a> getProxyLoader(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a> proxyClass)</pre> | |
<div class="block">Returns the class loader for the specified proxy class.</div> | |
</li> | |
</ul> | |
</li> | |
</ul> | |
</li> | |
</ul> | |
</div> | |
</div> | |
<!-- ========= END OF CLASS DATA ========= --> | |
<!-- ======= START OF BOTTOM NAVBAR ====== --> | |
<div class="bottomNav"><a name="navbar.bottom"> | |
<!-- --> | |
</a> | |
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> | |
<a name="navbar.bottom.firstrow"> | |
<!-- --> | |
</a> | |
<ul class="navList" title="Navigation"> | |
<li><a href="../../../overview-summary.html">Overview</a></li> | |
<li><a href="package-summary.html">Package</a></li> | |
<li class="navBarCell1Rev">Class</li> | |
<li><a href="class-use/ActivatableInvocationHandler.html">Use</a></li> | |
<li><a href="package-tree.html">Tree</a></li> | |
<li><a href="../../../deprecated-list.html">Deprecated</a></li> | |
<li><a href="../../../index-all.html">Index</a></li> | |
<li><a href="../../../help-doc.html">Help</a></li> | |
</ul> | |
</div> | |
<div class="subNav"> | |
<ul class="navList"> | |
<li>Prev Class</li> | |
<li><a href="../../../net/jini/activation/ActivatableInvocationHandler.Failure.html" title="class in net.jini.activation"><span class="typeNameLink">Next Class</span></a></li> | |
</ul> | |
<ul class="navList"> | |
<li><a href="../../../index.html?net/jini/activation/ActivatableInvocationHandler.html" target="_top">Frames</a></li> | |
<li><a href="ActivatableInvocationHandler.html" target="_top">No Frames</a></li> | |
</ul> | |
<ul class="navList" id="allclasses_navbar_bottom"> | |
<li><a href="../../../allclasses-noframe.html">All Classes</a></li> | |
</ul> | |
<div> | |
<script type="text/javascript"><!-- | |
allClassesLink = document.getElementById("allclasses_navbar_bottom"); | |
if(window==top) { | |
allClassesLink.style.display = "block"; | |
} | |
else { | |
allClassesLink.style.display = "none"; | |
} | |
//--> | |
</script> | |
</div> | |
<div> | |
<ul class="subNavList"> | |
<li>Summary: </li> | |
<li><a href="#nested.class.summary">Nested</a> | </li> | |
<li><a href="#field.summary">Field</a> | </li> | |
<li><a href="#constructor.summary">Constr</a> | </li> | |
<li><a href="#method.summary">Method</a></li> | |
</ul> | |
<ul class="subNavList"> | |
<li>Detail: </li> | |
<li><a href="#field.detail">Field</a> | </li> | |
<li><a href="#constructor.detail">Constr</a> | </li> | |
<li><a href="#method.detail">Method</a></li> | |
</ul> | |
</div> | |
<a name="skip.navbar.bottom"> | |
<!-- --> | |
</a></div> | |
<!-- ======== END OF BOTTOM NAVBAR ======= --> | |
<p class="legalCopy"><small>Copyright 2007-2013, multiple authors.<br>Licensed under the <a href=http://www.apache.org/licenses/LICENSE-2.0 target=child >Apache License, Version 2.0</a>, see the <a href=../../../doc-files/NOTICE target=child >NOTICE</a> file for attributions.</small></p> | |
</body> | |
</html> |