Req - the request typeResp - the response typepublic class SimpleReqRespChannel<Req,Resp> extends Object implements ReqRespChannel<Req,Resp>
ReqRespChannel using ConversationChannels.ReqRespChannel.AsyncResponseHandler<Req,Resp>, ReqRespChannel.ResponseHandler<Req,Resp>EMPTY| Constructor and Description |
|---|
SimpleReqRespChannel(Messenger messenger,
String name,
com.google.common.reflect.TypeToken<Req> reqType,
com.google.common.reflect.TypeToken<Resp> respType) |
| Modifier and Type | Method and Description |
|---|---|
void |
asyncResponseHandler(ReqRespChannel.AsyncResponseHandler<Req,Resp> handler)
Registers a response handler that returns a Promise.
|
void |
close()
Closes this resource.
|
Promise<Resp> |
request(Req req)
Sends a request and returns a promise encapsulating the response.
|
void |
responseHandler(ReqRespChannel.ResponseHandler<Req,Resp> handler)
Registers a response handler.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbindWith, closeAndReportException, closeSilently, isClosedpublic Promise<Resp> request(Req req)
ReqRespChannelThe promise will complete exceptionally if a response is not received before the timeout expires, by default after 5 seconds.
request in interface ReqRespChannel<Req,Resp>req - the request objectpublic void responseHandler(ReqRespChannel.ResponseHandler<Req,Resp> handler)
ReqRespChannelresponseHandler in interface ReqRespChannel<Req,Resp>handler - the response handlerpublic void asyncResponseHandler(ReqRespChannel.AsyncResponseHandler<Req,Resp> handler)
ReqRespChannelasyncResponseHandler in interface ReqRespChannel<Req,Resp>handler - the response handlerpublic void close()
Terminableclose in interface AutoCloseableclose in interface TerminableCopyright © 2022. All rights reserved.