📄 rendezvousserviceinterface.html
字号:
<BR> Register a notification monitor that is called each time a RendezVous peer is not reachable anymore.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> int</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#startApp(java.lang.String[])">startApp</A></B>(java.lang.String[] arg)</CODE><BR> Some Modules will wait for this method being invoked, before completing their initializatino to the point that they are fully functional. That is also the opportunity to supply arbitrary arguments (mostly to applications). <p/>If this module is a <A HREF="../../../../net/jxta/peergroup/PeerGroup.html" title="interface in net.jxta.peergroup"><CODE>PeerGroup</CODE></A> service, it may be invoked several times depending on its return value. <p/>Note: the name of this method is historical and no-longer adequate. <p/>This is here for temporary class hierarchy reasons. </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#startRendezVous()">startRendezVous</A></B>()</CODE><BR> Start the local peer as a RendezVous peer with the default manager.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#startRendezVous(net.jxta.rendezvous.RendezVousManager)">startRendezVous</A></B>(<A HREF="../../../../net/jxta/rendezvous/RendezVousManager.html" title="interface in net.jxta.rendezvous">RendezVousManager</A> handler)</CODE><BR> Start the local peer as a RendezVous peer. The caller must provide a monitor to an authorization manager.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#stopApp()">stopApp</A></B>()</CODE><BR> One can ask a Module to stop. The Module cannot be forced to comply, but in the future we might be able to deny it access to anything after some timeout. <p/>Note: the name of this method is no-longer adequate. <p/>This is here for temporary class hierarchy reasons. </TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#stopRendezVous()">stopRendezVous</A></B>()</CODE><BR> Stop the RendezVous function on the local Peer. All connected Peer are disconnected.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#walk(net.jxta.endpoint.Message, java.lang.String, java.lang.String, int)">walk</A></B>(<A HREF="../../../../net/jxta/endpoint/Message.html" title="class in net.jxta.endpoint">Message</A> msg, java.lang.String serviceName, java.lang.String serviceParam, int defaultTTL)</CODE><BR> Walk a message through the rendezvous peers of the network: only rendezvous peers will receive the message. <p/>Only a single HOP at a time is performed. Messages are always delivered to the destination handler on arrival. This handler is responsible for repropagating further, if deemed appropropriate. <p/>Loop and TTL control are performed automatically. <p/>Messages can be propagated via this method for the first time or can be re-propagated by re-using a message that came in via propagation. In the later case, the TTL and loop detection parameters CANNOT be re-initialized. If one wants to "re-propagate" a message with a new TTL and blank gateways list one must generate a completely new message. This limits the risk of accidental propagation storms, although they can always be engineered deliberately. <p/><b>Note</b>: The original msg is not modified and may be reused upon return.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> void</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceInterface.html#walk(java.util.Vector, net.jxta.endpoint.Message, java.lang.String, java.lang.String, int)">walk</A></B>(java.util.Vector destPeerIDs, <A HREF="../../../../net/jxta/endpoint/Message.html" title="class in net.jxta.endpoint">Message</A> msg, java.lang.String serviceName, java.lang.String serviceParam, int defaultTTL)</CODE><BR> <p/>Walk a message through the rendezvous peers of the network: only rendezvous peers will receive the message. <p/>Only a single HOP at a time is performed. Messages are always delivered to the destination handler on arrival. This handler is responsible for repropagating further, if deemed appropropriate. <p/>Loop and TTL control are performed automatically. <p/>Messages can be propagated via this method for the first time or can be re-propagated by re-using a message that came in via propagation. In the later case, the TTL and loop detection parameters CANNOT be re-initialized. If one wants to "re-propagate" a message with a new TTL and blank gateways list one must generate a completely new message. This limits the risk of accidental propagation storms, although they can always be engineered deliberately. <p/><b>Note</b>: The original msg is not modified and may be reused upon return.</TD></TR></TABLE> <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"><TD><B>Methods inherited from class java.lang.Object</B></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD></TR></TABLE> <P><!-- ============ FIELD DETAIL =========== --><A NAME="field_detail"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=1><FONT SIZE="+2"><B>Field Detail</B></FONT></TD></TR></TABLE><A NAME="impl"><!-- --></A><H3>impl</H3><PRE><A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceImpl.html" title="class in net.jxta.impl.rendezvous">RendezVousServiceImpl</A> <B>impl</B></PRE><DL><DL></DL></DL><!-- ========= CONSTRUCTOR DETAIL ======== --><A NAME="constructor_detail"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=1><FONT SIZE="+2"><B>Constructor Detail</B></FONT></TD></TR></TABLE><A NAME="RendezVousServiceInterface(net.jxta.impl.rendezvous.RendezVousServiceImpl)"><!-- --></A><H3>RendezVousServiceInterface</H3><PRE><B>RendezVousServiceInterface</B>(<A HREF="../../../../net/jxta/impl/rendezvous/RendezVousServiceImpl.html" title="class in net.jxta.impl.rendezvous">RendezVousServiceImpl</A> theRealThing)</PRE><DL><DD>The only authorized constructor.<P></DL><!-- ============ METHOD DETAIL ========== --><A NAME="method_detail"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=1><FONT SIZE="+2"><B>Method Detail</B></FONT></TD></TR></TABLE><A NAME="getInterface()"><!-- --></A><H3>getInterface</H3><PRE>public <A HREF="../../../../net/jxta/service/Service.html" title="interface in net.jxta.service">Service</A> <B>getInterface</B>()</PRE><DL><DD>Service objects are not manipulated directly to protect usage of the service. A Service interface is returned to access the service methods. <p/>Since THIS is already such an object, it returns itself. FIXME: it is kind of absurd to have this method part of the interface but we do not want to define two levels of Service interface just for that.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/jxta/service/Service.html#getInterface()">getInterface</A></CODE> in interface <CODE><A HREF="../../../../net/jxta/service/Service.html" title="interface in net.jxta.service">Service</A></CODE></DL></DD><DD><DL><DT><B>Returns:</B><DD>Service public interface of the service</DL></DD></DL><HR><A NAME="getImplAdvertisement()"><!-- --></A><H3>getImplAdvertisement</H3><PRE>public <A HREF="../../../../net/jxta/document/Advertisement.html" title="class in net.jxta.document">Advertisement</A> <B>getImplAdvertisement</B>()</PRE><DL><DD>Returns the advertisment for this service.<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/jxta/service/Service.html#getImplAdvertisement()">getImplAdvertisement</A></CODE> in interface <CODE><A HREF="../../../../net/jxta/service/Service.html" title="interface in net.jxta.service">Service</A></CODE></DL></DD><DD><DL><DT><B>Returns:</B><DD>Advertisement the advertisement.</DL></DD></DL><HR><A NAME="init(net.jxta.peergroup.PeerGroup, net.jxta.id.ID, net.jxta.document.Advertisement)"><!-- --></A><H3>init</H3><PRE>public void <B>init</B>(<A HREF="../../../../net/jxta/peergroup/PeerGroup.html" title="interface in net.jxta.peergroup">PeerGroup</A> pg, <A HREF="../../../../net/jxta/id/ID.html" title="class in net.jxta.id">ID</A> assignedID, <A HREF="../../../../net/jxta/document/Advertisement.html" title="class in net.jxta.document">Advertisement</A> impl)</PRE><DL><DD>Initialize the module, passing it its peer group and advertisement. <p/>Note: when subclassing one of the existing PeerGroup implementations (which implement Module), it may not be recommended to overload the init method. See the documentation of the PeerGroup class being subclassed. <p/>FIXME: This is meaningless for the interface object; it is there only to satisfy the requirements of the interface that we implement. Ultimately, the API should define two levels of interfaces: one for the real service implementation and one for the interface object. Right now it feels a bit heavy to so that since the only different between the two would be init() and may-be getName().<P><DD><DL><DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/jxta/platform/Module.html#init(net.jxta.peergroup.PeerGroup, net.jxta.id.ID, net.jxta.document.Advertisement)">init</A></CODE> in interface <CODE><A HREF="../../../../net/jxta/platform/Module.html" title="interface in net.jxta.platform">Module</A></CODE></DL></DD><DD><DL><DT><B>Parameters:</B><DD><CODE>pg</CODE> - The PeerGroup from which this Module can obtain services. If this module is a service, this is also the PeerGroup of which this module is a service.<DD><CODE>assignedID</CODE> - Identity of Module within group. modules can use it as a the root of their namespace to create names that are unique within the group but predictible by the same module on another peer. This is normaly the ModuleClassID which is also the name under which the module is known by other
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -