パッケージ org.piax.gtrans.impl
クラス RequestTransportImpl<D extends Destination>
java.lang.Object
org.piax.gtrans.impl.TransportImpl<D>
org.piax.gtrans.impl.RequestTransportImpl<D>
- すべての実装されたインタフェース:
Closeable,AutoCloseable,RequestTransport<D>,Transport<D>
- 直系の既知のサブクラス:
OverlayImpl
public abstract class RequestTransportImpl<D extends Destination> extends TransportImpl<D> implements RequestTransport<D>
-
ネストされたクラスの概要
ネストされたクラス 修飾子とタイプ クラス 説明 static classRequestTransportImpl.IsEasySend -
フィールドの概要
クラスから継承されたフィールド org.piax.gtrans.impl.TransportImpl
defaultAppId, isActive, isBaseTransport, listenersByUpper, lowerTrans, peer, peerId, transId, transIdPath, uppers -
コンストラクタの概要
コンストラクタ 修飾子 コンストラクタ 説明 protectedRequestTransportImpl(Peer peer, TransportId transId, Transport<?> lowerTrans)Generate a request transport. -
メソッドの概要
修飾子とタイプ メソッド 説明 protected ObjectcheckAndClearIsEasySend(Object msg)protected TransportListener<D>getListener0(ObjectId upper)FutureQueue<?>request(D dst, Object msg)FutureQueue<?>request(D dst, Object msg, int timeout)FutureQueue<?>request(D dst, Object msg, TransOptions opts)FutureQueue<?>request(ObjectId appId, D dst, Object msg)FutureQueue<?>request(ObjectId appId, D dst, Object msg, TransOptions opts)FutureQueue<?>request(ObjectId sender, ObjectId receiver, D dst, Object msg)Send a request message.FutureQueue<?>request(ObjectId sender, ObjectId receiver, D dst, Object msg, int timeout)Send a request message.FutureQueue<?>request(TransportId upperTrans, D dst, Object msg)Send a request message.FutureQueue<?>request(TransportId upperTrans, D dst, Object msg, int timeout)Send a request message.FutureQueue<?>request(TransportId upperTrans, D dst, Object msg, TransOptions opts)Send a request message.voidrequestAsync(ObjectId sender, ObjectId receiver, D dst, Object msg, BiConsumer<Object,Exception> resultsReceiver, TransOptions opts)protected ObjectselectOnReceive(RequestTransportListener<D> listener, RequestTransport<D> trans, ReceivedMessage rmsg)voidsend(ObjectId sender, ObjectId receiver, D dst, Object msg)Send a message from a local object to a remote object.voidsend(ObjectId sender, ObjectId receiver, D dst, Object msg, TransOptions opts)Send a message from a local object to a remote object with options.クラスから継承されたメソッド org.piax.gtrans.impl.TransportImpl
checkActive, fin, getBaseTransport, getDefaultAppId, getListener, getListener, getLowerTransport, getLowerTransports, getMTU, getPeer, getPeerId, getTransportId, getTransportIdPath, getUppers, hasStableLocator, isUp, send, send, send, send, send, send, setBaseTransport, setDefaultAppId, setListener, setListener, toString, toString0クラスから継承されたメソッド java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitインタフェースから継承されたメソッド org.piax.gtrans.RequestTransport
request, requestAsync, requestAsync, requestAsync, requestAsync, requestAsync, requestAsync, singletonFutureQueue, singletonFutureQueueインタフェースから継承されたメソッド org.piax.gtrans.Transport
close, fin, getBaseTransport, getEndpoint, getListener, getListener, getLowerTransport, getLowerTransports, getMTU, getPeer, getPeerId, getTransportId, getTransportIdPath, hasStableLocator, isUp, send, send, send, send, send, send, sendAsync, sendAsync, sendAsync, sendAsync, sendAsync, sendAsync, setListener, setListener
-
フィールド詳細
-
コンストラクタの詳細
-
RequestTransportImpl
protected RequestTransportImpl(Peer peer, TransportId transId, Transport<?> lowerTrans) throws IdConflictExceptionGenerate a request transport.- パラメータ:
peer- the peer objecttransId- the id of the transport object.lowerTrans- the transport object.- 例外:
IdConflictException- thrown when the transport id is conflicted.
-
-
メソッドの詳細
-
getListener0
-
request
public FutureQueue<?> request(ObjectId appId, D dst, Object msg) throws ProtocolUnsupportedException, IOException- 定義:
requestインタフェース内RequestTransport<D extends Destination>- 例外:
ProtocolUnsupportedExceptionIOException
-
request
public FutureQueue<?> request(ObjectId appId, D dst, Object msg, TransOptions opts) throws ProtocolUnsupportedException, IOException- 定義:
requestインタフェース内RequestTransport<D extends Destination>- 例外:
ProtocolUnsupportedExceptionIOException
-
request
- 定義:
requestインタフェース内RequestTransport<D extends Destination>- 例外:
ProtocolUnsupportedExceptionIOException
-
request
public FutureQueue<?> request(D dst, Object msg, TransOptions opts) throws ProtocolUnsupportedException, IOException- 定義:
requestインタフェース内RequestTransport<D extends Destination>- 例外:
ProtocolUnsupportedExceptionIOException
-
request
public FutureQueue<?> request(D dst, Object msg, int timeout) throws ProtocolUnsupportedException, IOException- 定義:
requestインタフェース内RequestTransport<D extends Destination>- 例外:
ProtocolUnsupportedExceptionIOException
-
request
public FutureQueue<?> request(ObjectId sender, ObjectId receiver, D dst, Object msg) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:RequestTransportSend a request message. FutureQueue object is returned to access arrived responses.- 定義:
requestインタフェース内RequestTransport<D extends Destination>- パラメータ:
sender- the object ID of the sender.receiver- the object ID of the receiver.dst- the destination.msg- the request message.- 戻り値:
- the future queue to access responses.
- 例外:
ProtocolUnsupportedException- thrown when the protocol is not supported.IOException- thrown when an I/O error occurs.
-
request
public FutureQueue<?> request(ObjectId sender, ObjectId receiver, D dst, Object msg, int timeout) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:RequestTransportSend a request message. FutureQueue object is returned to access arrived responses.- 定義:
requestインタフェース内RequestTransport<D extends Destination>- パラメータ:
sender- the object ID of the sender.receiver- the object ID of the receiver.dst- the destination.msg- the request message.timeout- the timeout.- 戻り値:
- the future queue to access responses.
- 例外:
ProtocolUnsupportedException- thrown when the protocol is not supported.IOException- thrown when an I/O error occurs.
-
request
public FutureQueue<?> request(TransportId upperTrans, D dst, Object msg, int timeout) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:RequestTransportSend a request message. FutureQueue object is returned to access arrived responses.- 定義:
requestインタフェース内RequestTransport<D extends Destination>- パラメータ:
upperTrans- the transport ID of the transport.dst- the destination.msg- the request message.timeout- the timeout.- 戻り値:
- the future queue to access responses.
- 例外:
ProtocolUnsupportedException- thrown when the protocol is not supported.IOException- thrown when an I/O error occurs.
-
request
public FutureQueue<?> request(TransportId upperTrans, D dst, Object msg) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:RequestTransportSend a request message. FutureQueue object is returned to access arrived responses.- 定義:
requestインタフェース内RequestTransport<D extends Destination>- パラメータ:
upperTrans- the transport ID of the transport.dst- the destination.msg- the request message.- 戻り値:
- the future queue to access responses.
- 例外:
ProtocolUnsupportedException- thrown when the protocol is not supported.IOException- thrown when an I/O error occurs.
-
request
public FutureQueue<?> request(TransportId upperTrans, D dst, Object msg, TransOptions opts) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:RequestTransportSend a request message. FutureQueue object is returned to access arrived responses.- 定義:
requestインタフェース内RequestTransport<D extends Destination>- パラメータ:
upperTrans- the transport ID of the transport.dst- the destination.msg- the request message.opts- the options.- 戻り値:
- the future queue to access responses.
- 例外:
ProtocolUnsupportedException- thrown when the protocol is not supported.IOException- thrown when an I/O error occurs.
-
requestAsync
public void requestAsync(ObjectId sender, ObjectId receiver, D dst, Object msg, BiConsumer<Object,Exception> resultsReceiver, TransOptions opts)- 定義:
requestAsyncインタフェース内RequestTransport<D extends Destination>
-
send
public void send(ObjectId sender, ObjectId receiver, D dst, Object msg, TransOptions opts) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:TransportSend a message from a local object to a remote object with options. The message is delivered to a object with ObjectIdreceiveron the peer with destinationdst. This type of send is used when the sender and the receiver have different ObjectId, which means upper layer exchanges the message using Transport.- 定義:
sendインタフェース内Transport<D extends Destination>- 定義:
sendクラス内TransportImpl<D extends Destination>- パラメータ:
sender- The ObjectId of the sender.receiver- The ObjectId of the receiver.dst- The Destination of the peer.msg- The message itself.opts- The options for the message transmission.- 例外:
ProtocolUnsupportedException- Raises if the 'dst' peer does not handle the protocol.IOException- Raises if I/O-related exceptions occured.
-
send
public void send(ObjectId sender, ObjectId receiver, D dst, Object msg) throws ProtocolUnsupportedException, IOExceptionインタフェースからコピーされた説明:TransportSend a message from a local object to a remote object. The message is delivered to a object with ObjectIdreceiveron the peer with destinationdst. This type of send is used when the sender and the receiver have different ObjectId, which means upper layer exchanges the message using Transport.- 定義:
sendインタフェース内Transport<D extends Destination>- オーバーライド:
sendクラス内TransportImpl<D extends Destination>- パラメータ:
sender- The ObjectId of the sender.receiver- The ObjectId of the receiver.dst- The Destination of the peer.msg- The message itself.- 例外:
ProtocolUnsupportedException- Raises if the 'dst' peer does not handle the protocol.IOException- Raises if I/O-related exceptions occured.
-
checkAndClearIsEasySend
-
selectOnReceive
protected Object selectOnReceive(RequestTransportListener<D> listener, RequestTransport<D> trans, ReceivedMessage rmsg)
-