blob: c2dee53e7161b89db39a1c8eaf69a99f556c4982 [file] [log] [blame]
<!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:42:02 EST 2016 -->
<title>AbstractLookupDiscoveryManager.ProxyReg (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="AbstractLookupDiscoveryManager.ProxyReg (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":10,"i7":10,"i8":10};
var tabs = {65535:["t0","All 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/AbstractLookupDiscoveryManager.ProxyReg.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><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.LocatorDiscoveryListener.html" title="class in net.jini.discovery"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../net/jini/discovery/AbstractLookupLocatorDiscovery.html" title="class in net.jini.discovery"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html" target="_top">Frames</a></li>
<li><a href="AbstractLookupDiscoveryManager.ProxyReg.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</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.discovery</div>
<h2 title="Class AbstractLookupDiscoveryManager.ProxyReg" class="title">Class AbstractLookupDiscoveryManager.ProxyReg</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.discovery.AbstractLookupDiscoveryManager.ProxyReg</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.html" title="class in net.jini.discovery">AbstractLookupDiscoveryManager</a></dd>
</dl>
<hr>
<br>
<pre>final class <span class="typeNameLabel">AbstractLookupDiscoveryManager.ProxyReg</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></pre>
<div class="block">Wrapper class in which each instance corresponds to a lookup service
that has been discovered via either group discovery, locator discovery,
or both.
Note that each element of the set of discovered registrars managed by
this <code>LookupDiscoveryManager</code> (referred to as the "managed
set of registrars" or simply, the "managed set"), is actually an
instance of this class.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== 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">&nbsp;</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 boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#bDiscarded">bDiscarded</a></span></code>
<div class="block">Indicates whether the registrar referenced by this class is
currently in the process of being discarded.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#commDiscard">commDiscard</a></span></code>
<div class="block">Special-purpose flag used in the discard process.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#from">from</a></span></code>
<div class="block">Integer restricted to the values 0, 1, 2, and 3.</div>
</td>
</tr>
<tr class="rowColor">
<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/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#memberGroups">memberGroups</a></span></code>
<div class="block">The groups to which the discovered registrar belongs</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../net/jini/core/lookup/ServiceRegistrar.html" title="interface in net.jini.core.lookup">ServiceRegistrar</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#proxy">proxy</a></span></code>
<div class="block">The discovered registrar to be managed</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">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#ProxyReg-net.jini.core.lookup.ServiceRegistrar-java.lang.String:A-int-">ProxyReg</a></span>(<a href="../../../net/jini/core/lookup/ServiceRegistrar.html" title="interface in net.jini.core.lookup">ServiceRegistrar</a>&nbsp;proxy,
<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>[]&nbsp;memberGroups,
int&nbsp;from)</code>
<div class="block">Constructs an instance of this wrapper class.</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">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#addFrom-int-">addFrom</a></span>(int&nbsp;from)</code>
<div class="block">Sets the appropriate bit in the 'from' variable to indicate the
mechanism or mechanisms through which the registrar referenced by
this class was discovered (group discovery, locator discovery, or
both).</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#discard--">discard</a></span>()</code>
<div class="block">Discards the registrar referenced in this class from either the
<code>LookupDiscovery</code> or <code>LookupLocatorDiscovery</code>
utility employed by this <code>LookupDiscoveryManager</code>.</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/discovery/AbstractLookupDiscoveryManager.ProxyReg.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>&nbsp;obj)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#getFrom--">getFrom</a></span>()</code>
<div class="block">Accessor method that returns the value of the 'from' variable.</div>
</td>
</tr>
<tr id="i4" 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/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#getMemberGroups--">getMemberGroups</a></span>()</code>
<div class="block">Accessor method that returns the <code>String</code> array
containing the names of the groups to which the registrar
referenced in this class belongs.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#isDiscarded--">isDiscarded</a></span>()</code>
<div class="block">Accessor method that returns the value of the <code>boolean</code>
variable <code>bDiscarded</code>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#removeFrom-int-">removeFrom</a></span>(int&nbsp;from)</code>
<div class="block">Un-sets the appropriate bit in the 'from' variable to remove
the indication that the registrar referenced by this class
was discovered via the mechanism identified by the input
parameter.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html#setMemberGroups-java.lang.String:A-">setMemberGroups</a></span>(<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>[]&nbsp;newMemberGroups)</code>
<div class="block">Modifier method that changes the set of member groups - stored in
this class and associated with the registrar referenced in this
class - to the given set of member groups.</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&nbsp;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#toString--" title="class or interface in java.lang">toString</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="proxy">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>proxy</h4>
<pre>public final&nbsp;<a href="../../../net/jini/core/lookup/ServiceRegistrar.html" title="interface in net.jini.core.lookup">ServiceRegistrar</a> proxy</pre>
<div class="block">The discovered registrar to be managed</div>
</li>
</ul>
<a name="memberGroups">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>memberGroups</h4>
<pre>public&nbsp;<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>[] memberGroups</pre>
<div class="block">The groups to which the discovered registrar belongs</div>
</li>
</ul>
<a name="commDiscard">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commDiscard</h4>
<pre>public&nbsp;boolean commDiscard</pre>
<div class="block">Special-purpose flag used in the discard process. This flag is
only relevant to <code>LocatorDiscoveryListener.discarded</code>.
This flag is set to <code>true</code> only when the method
<code>LookupDiscoveryManager.discard</code> is called by the
client.
A <code>true</code> value for this flag indicates to
<code>LocatorDiscoveryListener.discarded</code> that the registrar
referenced by a given discarded event was discarded because the
registrar was determined to be unreachable (a "communication
discard"). A <code>false</code> value for this flag indicates to
<code>LocatorDiscoveryListener.discarded</code> that the registrar
was discarded due to lost interest in the registrar's locator
(a "no-interest discard").
This flag is necessary because the locators of the discovered
registrars are not retrieved and stored with the registrars and
their member groups. The locators are not retrieved because to
do so would require a remote call which is viewed as undesirable
here since such a call cannot be guaranteed to complete in a timely
fashion. Without the locator of the discarded registrar, the
<code>LocatorDiscoveryListener.discarded</code> method cannot
determine if the discarded event received from the
<code>LookupLocatorDiscovery</code> is a communication discard
or a no-interest discard. It is important for that method to
be able to make such a determination because the action taken
by that <code>discarded</code> method is dependent on that
determination. For more information, refer to the API
documentation (generated by the <code>javadoc</code> tool) of
the <code>LocatorDiscoveryListener.discarded</code> method.
Note that the mechanism that uses this flag assumes that
neither the <code>LookupDiscovery</code> utility nor the
<code>LookupLocatorDiscovery</code> utility employed by this
<code>LookupDiscoveryManager</code> are accessible outside of
this <code>LookupDiscoveryManager</code>. If either were
accessible, then there would be no way to guarantee that a
value of <code>true</code> in this flag is equivalent to a
communication discard.</div>
</li>
</ul>
<a name="from">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>from</h4>
<pre>private&nbsp;int from</pre>
<div class="block">Integer restricted to the values 0, 1, 2, and 3. Each value
represents a bit (or set of bits) that, when set, indicates the
mechanism (group discovery, locator discovery, or both) through
which the registrar referenced by the current instance of
this class (proxy) has currently been (or not been) discovered.
That is, if
from = 0 (no bits set) ==> discovered by neither group nor locator
= 1 (bit 0 set) ==> discovered by only group discovery
= 2 (bit 1 set) ==> discovered by only locator discovery
= 3 (bits 1&2 set) ==> discovered by both group and locator</div>
</li>
</ul>
<a name="bDiscarded">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>bDiscarded</h4>
<pre>private&nbsp;boolean bDiscarded</pre>
<div class="block">Indicates whether the registrar referenced by this class is
currently in the process of being discarded. This flag is used to
prevent access, or inadvertent modifications to, the discovered
state of registrars that are in the process of being discarded,
but which have not yet been removed from the managed set.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ProxyReg-net.jini.core.lookup.ServiceRegistrar-java.lang.String:A-int-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ProxyReg</h4>
<pre>public&nbsp;ProxyReg(<a href="../../../net/jini/core/lookup/ServiceRegistrar.html" title="interface in net.jini.core.lookup">ServiceRegistrar</a>&nbsp;proxy,
<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>[]&nbsp;memberGroups,
int&nbsp;from)</pre>
<div class="block">Constructs an instance of this wrapper class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>proxy</code> - reference to a registrar that has been newly
discovered or re-discovered</dd>
<dd><code>memberGroups</code> - the groups to which the discovered registrar
belongs</dd>
<dd><code>from</code> - indicates the mechanism by which the registrar
was discovered (group or locator discovery).
The only values which are valid for this
parameter are FROM_GROUP or FROM_LOCATOR.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="equals-java.lang.Object-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>equals</h4>
<pre>public&nbsp;boolean&nbsp;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>&nbsp;obj)</pre>
<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>&nbsp;in class&nbsp;<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&nbsp;int&nbsp;hashCode()</pre>
<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>&nbsp;in class&nbsp;<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="addFrom-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addFrom</h4>
<pre>public&nbsp;void&nbsp;addFrom(int&nbsp;from)</pre>
<div class="block">Sets the appropriate bit in the 'from' variable to indicate the
mechanism or mechanisms through which the registrar referenced by
this class was discovered (group discovery, locator discovery, or
both).
This method is typically called during the discovery process; and
the value input should always be either FROM_GROUP or FROM_LOCATOR.</div>
</li>
</ul>
<a name="removeFrom-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeFrom</h4>
<pre>public&nbsp;boolean&nbsp;removeFrom(int&nbsp;from)</pre>
<div class="block">Un-sets the appropriate bit in the 'from' variable to remove
the indication that the registrar referenced by this class
was discovered via the mechanism identified by the input
parameter. If, after un-setting the appropriate bit, the
'from' variable is equal to 0 (indicating the registrar was
previously discovered by neither group nor locator discovery),
this method returns <code>true</code>; otherwise it returns
<code>false</code>, which indicates that the registrar was
still discovered by the "opposite" mechanism from that identified
by the input parameter.
This method is typically called during the discard process; and
the value input should always be either FROM_GROUP or FROM_LOCATOR.</div>
</li>
</ul>
<a name="getFrom--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFrom</h4>
<pre>public&nbsp;int&nbsp;getFrom()</pre>
<div class="block">Accessor method that returns the value of the 'from' variable.
The value returned indicates the mechanism or mechanisms through
which the registrar referenced by this class was previously
discovered (group discovery, locator discovery, or both).</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>int</code> representing either group discovery (1),
or locator discovery (2), or both (3).</dd>
</dl>
</li>
</ul>
<a name="discard--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>discard</h4>
<pre>public&nbsp;void&nbsp;discard()</pre>
<div class="block">Discards the registrar referenced in this class from either the
<code>LookupDiscovery</code> or <code>LookupLocatorDiscovery</code>
utility employed by this <code>LookupDiscoveryManager</code>.
The utility from which that registrar is discarded is dependent on
whether the registrar was previously discovered via group or both
group and locator discovery, or via locator discovery alone.
This method enables a mechanism for sequentially "chaining" the
discard process of the <code>LookupDiscovery</code> utility with
the discard process of the <code>LookupLocatorDiscovery</code>.
That is, rather than discarding the registrar from both utilities
at the same time, by invoking this method, the registrar will be
discarded from only one of those utilities. Then when the discarded
event is received by the listener registered with the utility from
which the registrar was discarded, the listener - based on the
current discovered state of the registrar - determines whether to:
discard the registrar from the other utility, send a discarded
event out to the client's listener, or simply update state and
do nothing more.
This chaining mechanism helps to present a single event
source to the client listeners. That is, even though the
two discovery utilities used internally by this
<code>LookupDiscoveryManager</code> operate independently,
sending discarded events to the group discovery listener and/or
the locator discovery listener, this chaining mechanism enables
the coordination of those separate events so that only one
event is sent to the client listeners, even though multiple
events may have been received here.
Although this chaining mechanism is helpful in coordinating the
discarded events received from the <code>LookupDiscovery</code>
and <code>LookupLocatorDiscovery</code> utilities, the
actual reason it must be used is due to the fact that
<code>LookupDiscovery</code> can send a certain type of
discarded event - referred to as "passive communication
discard"; whereas <code>LookupLocatorDiscovery</code> cannot.
Recall that <code>LookupDiscovery</code> monitors the
registrars it has discovered for reachability, whereas
<code>LookupLocatorDiscovery</code> does not. When the
<code>LookupDiscovery</code> sends a passive communication
discard because it has determined that one of its registrars
has become unreachable, if that registrar was also discovered
via locator discovery, it is necessary to discard the registrar
from the <code>LookupLocatorDiscovery</code> as well. In
that case, this method is called to create a discard chain
which ultimately will result in the registrar being discarded
from the <code>LookupLocatorDiscovery</code>.</div>
</li>
</ul>
<a name="isDiscarded--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDiscarded</h4>
<pre>public&nbsp;boolean&nbsp;isDiscarded()</pre>
<div class="block">Accessor method that returns the value of the <code>boolean</code>
variable <code>bDiscarded</code>.</div>
</li>
</ul>
<a name="getMemberGroups--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMemberGroups</h4>
<pre>public&nbsp;<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>[]&nbsp;getMemberGroups()</pre>
<div class="block">Accessor method that returns the <code>String</code> array
containing the names of the groups to which the registrar
referenced in this class belongs.</div>
</li>
</ul>
<a name="setMemberGroups-java.lang.String:A-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setMemberGroups</h4>
<pre>public&nbsp;void&nbsp;setMemberGroups(<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>[]&nbsp;newMemberGroups)</pre>
<div class="block">Modifier method that changes the set of member groups - stored in
this class and associated with the registrar referenced in this
class - to the given set of member groups.</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/AbstractLookupDiscoveryManager.ProxyReg.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><a href="../../../net/jini/discovery/AbstractLookupDiscoveryManager.LocatorDiscoveryListener.html" title="class in net.jini.discovery"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../net/jini/discovery/AbstractLookupLocatorDiscovery.html" title="class in net.jini.discovery"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?net/jini/discovery/AbstractLookupDiscoveryManager.ProxyReg.html" target="_top">Frames</a></li>
<li><a href="AbstractLookupDiscoveryManager.ProxyReg.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</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>