- Added `makeRequest(BaseMessage request, Queue responseQueue)`
This commit is contained in:
Tristan B. Velloza Kildaire 2023-10-02 21:59:12 +02:00
parent 8bdaec9ded
commit 113e793111
1 changed files with 28 additions and 0 deletions

View File

@ -122,6 +122,34 @@ public class DanteClient
return future;
}
/**
* Makes a request described by the provided message
* which, we will then return a future which will
* wait for a reply on the queue provided
*
* Params:
* request = the request message
* responseQueue = the queue which the future
* should await a reply from on
* Returns: a `Future`
*/
private Future makeRequest(BaseMessage request, Queue responseQueue)
{
BaseMessage doRequest()
{
TaggedMessage message = new TaggedMessage(responseQueue.getID(), request.encode());
this.manager.sendMessage(message);
TaggedMessage response = responseQueue.dequeue();
return BaseMessage.decode(response.getPayload());
}
Future future = this.executor.submitTask!(doRequest);
return future;
}
}