Package at.qubic.api.network
Class BasicNodeOperations
java.lang.Object
at.qubic.api.network.BasicNodeOperations
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<? extends reactor.netty.Connection> send(Node node, reactor.core.publisher.Mono<QubicRequest> requestMessage) Send the request message but do not process a response.reactor.core.publisher.Flux<QubicMessage> sendAndReceive(Node node, reactor.core.publisher.Mono<? extends QubicRequest> request, MessageType type) Send the request message and return the response messages after the peer exchange.reactor.core.publisher.Flux<QubicMessage> sendAndReceive(Node node, reactor.core.publisher.Mono<QubicRequest> request) Send the request message and return the response messages after the peer exchange.reactor.core.publisher.Mono<QubicMessage> sendAndReceiveNext(Node node, reactor.core.publisher.Mono<? extends QubicRequest> request, MessageType messageType) Send the request message and return the first response message after the peer exchange.reactor.core.publisher.Mono<QubicMessage> sendAndReceiveNext(Node node, reactor.core.publisher.Mono<QubicRequest> request) Send the request message and return the first response message after the peer exchange.
-
Constructor Details
-
BasicNodeOperations
public BasicNodeOperations()
-
-
Method Details
-
sendAndReceiveNext
public reactor.core.publisher.Mono<QubicMessage> sendAndReceiveNext(Node node, reactor.core.publisher.Mono<QubicRequest> request) Send the request message and return the first response message after the peer exchange.- Parameters:
node- The node to use for the operation.request- The message to send.- Returns:
- The response message.
-
sendAndReceiveNext
public reactor.core.publisher.Mono<QubicMessage> sendAndReceiveNext(Node node, reactor.core.publisher.Mono<? extends QubicRequest> request, MessageType messageType) Send the request message and return the first response message after the peer exchange.- Parameters:
node- The node to use for the operation.request- The message to send.messageType- The type of the expected messages.- Returns:
- The response message.
-
sendAndReceive
public reactor.core.publisher.Flux<QubicMessage> sendAndReceive(Node node, reactor.core.publisher.Mono<QubicRequest> request) Send the request message and return the response messages after the peer exchange. In case there is no end response the caller needs to terminate the flux.- Parameters:
node- The node to use for the operation.request- The message to send.- Returns:
- The response messages (without the peer exchange and the optional end message).
-
sendAndReceive
public reactor.core.publisher.Flux<QubicMessage> sendAndReceive(Node node, reactor.core.publisher.Mono<? extends QubicRequest> request, MessageType type) Send the request message and return the response messages after the peer exchange. In case there is no end response the caller needs to terminate the flux.- Parameters:
node- The node to use for the operation.request- The message to send.type- The type of the expected messages. The flux will terminate if another message is received.- Returns:
- The response messages (without the peer exchange and the optional end message).
-
send
public reactor.core.publisher.Mono<? extends reactor.netty.Connection> send(Node node, reactor.core.publisher.Mono<QubicRequest> requestMessage) Send the request message but do not process a response.- Parameters:
node- The node to use for the operation.requestMessage- The message to send.- Returns:
- The connection for additional operations if needed.
-