📄 crossgroupmessenger.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!--NewPage--><HTML><HEAD><TITLE>CrossGroupMessenger (Project JXTA J2SE)</TITLE><META NAME="keywords" CONTENT="net.jxta.impl.endpoint.CrossGroupMessenger class"><LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"><SCRIPT type="text/javascript">function windowTitle(){ parent.document.title="CrossGroupMessenger (Project JXTA J2SE)";}</SCRIPT></HEAD><BODY BGCOLOR="white" onload="windowTitle();"><!-- ========= START OF TOP NAVBAR ======= --><A NAME="navbar_top"><!-- --></A><A HREF="#skip-navbar_top" title="Skip navigation links"></A><TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""><TR><TD COLSPAN=3 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"><A NAME="navbar_top_firstrow"><!-- --></A><TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> <TR ALIGN="center" VALIGN="top"> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/CrossGroupMessenger.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> </TR></TABLE></TD><TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM><a href='http://www.jxta.org' target='_blank'>Project JXTA</a></EM></TD></TR><TR><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../net/jxta/impl/endpoint/BlockingMessenger.html" title="class in net.jxta.impl.endpoint"><B>PREV CLASS</B></A> <A HREF="../../../../net/jxta/impl/endpoint/EndpointServiceImpl.html" title="class in net.jxta.impl.endpoint"><B>NEXT CLASS</B></A></FONT></TD><TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> <A HREF="../../../../index.html" target="_top"><B>FRAMES</B></A> <A HREF="CrossGroupMessenger.html" target="_top"><B>NO FRAMES</B></A> <SCRIPT type="text/javascript"> <!-- if(window==top) { document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); } //--></SCRIPT><NOSCRIPT> <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A></NOSCRIPT></FONT></TD></TR><TR><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD><TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD></TR></TABLE><A NAME="skip-navbar_top"></A><!-- ========= END OF TOP NAVBAR ========= --><HR><!-- ======== START OF CLASS DATA ======== --><H2><FONT SIZE="-1">net.jxta.impl.endpoint</FONT><BR>Class CrossGroupMessenger</H2><PRE>java.lang.Object <IMG SRC="../../../../resources/inherit.gif" ALT="extended by"><B>net.jxta.impl.endpoint.CrossGroupMessenger</B></PRE><DL><DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../net/jxta/endpoint/EndpointMessenger.html" title="interface in net.jxta.endpoint">EndpointMessenger</A>, <A HREF="../../../../net/jxta/endpoint/Messenger.html" title="interface in net.jxta.endpoint">Messenger</A></DD></DL><HR><DL><DT> class <B>CrossGroupMessenger</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../net/jxta/endpoint/Messenger.html" title="interface in net.jxta.endpoint">Messenger</A></DL><P>Provides address translation for messages which cross betweene groups.<P><P><HR><P><!-- ======== NESTED CLASS SUMMARY ======== --><!-- =========== FIELD SUMMARY =========== --><!-- ======== CONSTRUCTOR SUMMARY ======== --><A NAME="constructor_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Constructor Summary</B></FONT></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#CrossGroupMessenger(net.jxta.endpoint.Messenger, java.lang.String, java.lang.String, java.lang.String)">CrossGroupMessenger</A></B>(<A HREF="../../../../net/jxta/endpoint/Messenger.html" title="interface in net.jxta.endpoint">Messenger</A> real, java.lang.String insertedService, java.lang.String origService, java.lang.String origServiceParam)</CODE><BR> Create a new Cross Group Messenger</TD></TR></TABLE> <!-- ========== METHOD SUMMARY =========== --><A NAME="method_summary"><!-- --></A><TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""><TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"><TD COLSPAN=2><FONT SIZE="+2"><B>Method Summary</B></FONT></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/endpoint/CrossGroupMessenger.html#close()">close</A></B>()</CODE><BR> Close this messenger after processing any pending messages. Messengers which manage shared resources internally may ignore this operation. Specifically: <p/><code><pre> messenger.close(); closed = messenger.isClosed(); </pre></code> <p/><code>closed</code> may be <code>false</code>.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../../net/jxta/endpoint/EndpointAddress.html" title="class in net.jxta.endpoint">EndpointAddress</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#getDestinationAddress()">getDestinationAddress</A></B>()</CODE><BR> Returns the destination of this messenger. The returned EndpointAddress is a clone and can be freely used by the caller.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../../net/jxta/endpoint/EndpointAddress.html" title="class in net.jxta.endpoint">EndpointAddress</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#getDestinationAddressObject()">getDestinationAddressObject</A></B>()</CODE><BR> Returns the internal EndpointAddress object of the destination of the user. Changing the content of the object may have unpredictable consequence on the behavior of the EndpointMessenger. This method is intended to be used for applications that requires to have weak or soft reference to an EndpointMessenger: the returned Endpoint Address object will be unreferenced when this messenger will finalize.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> <A HREF="../../../../net/jxta/endpoint/EndpointAddress.html" title="class in net.jxta.endpoint">EndpointAddress</A></CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#getLogicalDestinationAddress()">getLogicalDestinationAddress</A></B>()</CODE><BR> Returns the logical destination of this messenger. This may be a different address than is returned by <A HREF="../../../../net/jxta/endpoint/EndpointMessenger.html#getDestinationAddress()"><CODE>getDestinationAddress</CODE></A> and refers to the entity which is located at the destination address. <p/>By analogy, a telephone number would be the destination address, and the owner of that telephone number would be the logical destination. Each logical destination may be known by one or more destination addresses.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#isClosed()">isClosed</A></B>()</CODE><BR> Returns <code>true</code> if this messenger is closed and no longer accepting messages to be sent. The messenger should be discarded.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#isIdle()">isIdle</A></B>()</CODE><BR> Returns <code>true</code> if this messenger is not currently sending any messages and the messenger has not been used for "a long time". Thus suggesting that closing it would be good. <p/>The definition of idleness is up to the implementing message transport, but is usually based upon the cost of re-opening a closed connection versus continued idleness.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#isSynchronous()">isSynchronous</A></B>()</CODE><BR> Returns <code>true</code> if the <code>sendMessage</code> methods of this messenger are fully synchronous. If this messenger is syncrhonous then it should be understood that <code>sendMessage</code> methods may : <p/><ul> <li>Not return until the message is fully sent.</li> <li>Block if another message is in the process of being sent.</li> </ul> <p/>If either of these conditions can occur then this method will return <code>true</code>.</TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#sendMessage(net.jxta.endpoint.Message)">sendMessage</A></B>(<A HREF="../../../../net/jxta/endpoint/Message.html" title="class in net.jxta.endpoint">Message</A> msg)</CODE><BR> Sends a message to the destination. <p/><b>WARNING:</b> The Message object should not be reused or modified until <code>sendMessage</code> has completed. Concurrent modification of a message while a messenger is sending the message will produce incorrect and unpredictable results. For asynchronous messengers this method provides no notification of message send completion thus the message should <b>never</b> be reused. It is reccommended that a clone of the message be provided to send message: <p/><code><pre> messenger.sendMessage( (Message) myMessage.clone() ); </pre></code> <p/>Error Handling: <ul> <li>Common Aspects: <ul> <li>An <CODE>IOException</CODE> means that the message was not sent and this message cannot be used to send subsequent messages. Instances of <CODE>RuntimeException</CODE> mean that the message was not sent, but retries may or may not be possible based upon the status returned by <A HREF="../../../../net/jxta/endpoint/Messenger.html#isClosed()"><CODE>Messenger.isClosed()</CODE></A>.</li> <li>A return result of <code>false</code> indicates that the message was not accepted to be sent. Usually this is due to local resource limits being reached. Attempts may be made to later resend the message, usually after waiting for congestion to clear.</li> <li>A return result of <code>true</code> indicates that the message was accepted to be sent and possibly sent sucessfully. <b>It does not generally imply that the destination will successfully receive the message.</b></li> </ul> </li> <li>Synchronous Messengers: <ul> <li>A return result of <code>true</code> indicates that the message was successfully sent. <b>It does not generally imply that the destination will successfully receive the message.</b></li> </ul></li> <li>Asynchronous Messengers: <ul> <li>A return result of <code>true</code> indicates that the message was accepted to be sent. <b>It does not imply that the message will be sent or that the destination will receive the message.</b> There will be no notification of any errors in sending the message.</li> </ul></li> </ul></TD></TR><TR BGCOLOR="white" CLASS="TableRowColor"><TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"><CODE> boolean</CODE></FONT></TD><TD><CODE><B><A HREF="../../../../net/jxta/impl/endpoint/CrossGroupMessenger.html#sendMessage(net.jxta.endpoint.Message, java.lang.String, java.lang.String)">sendMessage</A></B>(<A HREF="../../../../net/jxta/endpoint/Message.html" title="class in net.jxta.endpoint">Message</A> msg, java.lang.String service, java.lang.String serviceParam)</CODE><BR> Sends a message to the destination. The message will be sent to the location specified by the destination endpoint address. The destination address will be modified to include the provided optional service name
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -