Interface MessageSender
-
public interface MessageSenderInterface used by the resource adaptor to pass messages to peer nodes, within the context of the resource adaptor entity.
Accessed via the
MessageFacility.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidsendBroadcast(byte[] payload)Sends the given message asynchronously to the same resource adaptor entity on all nodes in the cluster, including the sending node.voidsendMessage(int destinationNode, byte[] payload)Sends the given message asynchronously to the same resource adaptor entity on the given destination node.RemoteResult<?>[]sendRequest(byte[] payload, boolean synchronous)Sends the given request to the same resource adaptor entity on all nodes in the cluster, including the sending node.RemoteResult<?>sendRequest(int destinationNode, byte[] payload, boolean synchronous)Sends the given request to the same resource adaptor entity on the given destination node.
-
-
-
Method Detail
-
sendMessage
void sendMessage(int destinationNode, byte[] payload) throws IOExceptionSends the given message asynchronously to the same resource adaptor entity on the given destination node.
- Parameters:
destinationNode- the destination node.payload- the message.- Throws:
IOException- if an error occurs trying to send the request.
-
sendBroadcast
void sendBroadcast(byte[] payload) throws IOExceptionSends the given message asynchronously to the same resource adaptor entity on all nodes in the cluster, including the sending node.
- Parameters:
payload- the message.- Throws:
IOException- if an error occurs trying to send the request.
-
sendRequest
RemoteResult<?> sendRequest(int destinationNode, byte[] payload, boolean synchronous) throws IOException
Sends the given request to the same resource adaptor entity on the given destination node.
- Parameters:
destinationNode- the destination node.payload- the request message.synchronous- flag indicating whether the request should be sent synchronously (true) or asynchronously (false). A synchronous request will only return control to the calling thread once a result has been received from the destination node.- Returns:
- the result.
- Throws:
IOException- if an error occurs trying to send the request.
-
sendRequest
RemoteResult<?>[] sendRequest(byte[] payload, boolean synchronous) throws IOException
Sends the given request to the same resource adaptor entity on all nodes in the cluster, including the sending node.
- Parameters:
payload- the request message.synchronous- flag indicating whether the request should be sent synchronously (true) or asynchronously (false). A synchronous request will only return control to the calling thread when results have been received from all nodes.- Returns:
- an array of result objects, one for each node.
- Throws:
IOException- if an error occurs trying to send the request.
-
-