Class ClientSender
- All Implemented Interfaces:
AutoCloseable,Link<Sender>,Sender
-
Field Summary
Fields inherited from class org.apache.qpid.protonj2.client.impl.ClientSenderLinkType
protonSenderFields inherited from class org.apache.qpid.protonj2.client.impl.ClientLinkType
closed, CLOSED_UPDATER, closeFuture, executor, failureCause, linkId, linkRemotelyClosedHandler, openFuture, remoteSource, remoteTarget, session -
Method Summary
Modifier and TypeMethodDescriptionprotected voidlinkSpecificCleanupHandler(ClientException failureCause) protected voidprotected voidprotected voidprotected voidprotected voidprotected Senderself()Send the given message immediately if there is credit available or blocks if the link has not yet been granted credit.Send the given message immediately if there is credit available or blocks if the link has not yet been granted credit.Send the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt.Send the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt.Methods inherited from class org.apache.qpid.protonj2.client.impl.ClientSenderLinkType
protonLinkMethods inherited from class org.apache.qpid.protonj2.client.impl.ClientLinkType
address, checkClosedOrFailed, client, close, close, closeAsync, closeAsync, connection, desiredCapabilities, detach, detach, detachAsync, detachAsync, handleEngineShutdown, handleLocalCloseOrDetach, handleLocalOpen, handleParentEndpointClosed, handleRemoteCloseOrDetach, handleRemoteOpen, immediateLinkShutdown, notClosedOrFailed, notClosedOrFailed, offeredCapabilities, openFuture, properties, session, source, target, waitForOpenToCompleteMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.qpid.protonj2.client.Link
address, client, close, close, closeAsync, closeAsync, connection, desiredCapabilities, detach, detach, detachAsync, detachAsync, offeredCapabilities, openFuture, properties, session, source, target
-
Method Details
-
send
Description copied from interface:SenderSend the given message immediately if there is credit available or blocks if the link has not yet been granted credit.Upon successfully sending the message the methods returns a
Trackerthat can be used to await settlement of the message from the remote. If the sender has been configured to send the message pre-settled then the resulting Tracker will immediately report the message as remotely settlement and accepted.- Specified by:
sendin interfaceSender- Parameters:
message- theMessageto send.- Returns:
- the
Trackerfor the message delivery - Throws:
ClientException- if an error occurs while initiating the send operation.
-
send
public Tracker send(Message<?> message, Map<String, Object> deliveryAnnotations) throws ClientExceptionDescription copied from interface:SenderSend the given message immediately if there is credit available or blocks if the link has not yet been granted credit. The provided delivery annotations are encoded along with the message, the annotations can be passed repeatedly to send calls if sending the same delivery annotations with each message.Upon successfully sending the message the methods returns a
Trackerthat can be used to await settlement of the message from the remote. If the sender has been configured to send the message pre-settled then the resulting Tracker will immediately report the message as remotely settlement and accepted.- Specified by:
sendin interfaceSender- Parameters:
message- theMessageto send.deliveryAnnotations- the delivery annotations that should be included in the sentMessage.- Returns:
- the
Trackerfor the message delivery - Throws:
ClientException- if an error occurs while initiating the send operation.
-
trySend
Description copied from interface:SenderSend the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt.Upon successfully sending the message the methods returns a
Trackerthat can be used to await settlement of the message from the remote. If the sender has been configured to send the message pre-settled then the resulting Tracker will immediately report the message as remotely settlement and accepted.- Specified by:
trySendin interfaceSender- Parameters:
message- theMessageto send if credit is available.- Returns:
- the
Trackerfor the message delivery or null if no credit for sending. - Throws:
ClientException- if an error occurs while initiating the send operation.
-
trySend
public Tracker trySend(Message<?> message, Map<String, Object> deliveryAnnotations) throws ClientExceptionDescription copied from interface:SenderSend the given message if credit is available or returns null if no credit has been granted to the link at the time of the send attempt. The provided delivery annotations are encoded along with the message, the annotations can be passed repeatedly to send calls if sending the same delivery annotations with each message.Upon successfully sending the message the methods returns a
Trackerthat can be used to await settlement of the message from the remote. If the sender has been configured to send the message pre-settled then the resulting Tracker will immediately report the message as remotely settlement and accepted.- Specified by:
trySendin interfaceSender- Parameters:
message- theMessageto send if credit is available.deliveryAnnotations- the delivery annotations that should be included in the sentMessage.- Returns:
- the
Trackerfor the message delivery or null if no credit for sending. - Throws:
ClientException- if an error occurs while initiating the send operation.
-
self
- Specified by:
selfin classClientLinkType<Sender,Sender>
-
linkSpecificLocalOpenHandler
protected void linkSpecificLocalOpenHandler()- Specified by:
linkSpecificLocalOpenHandlerin classClientLinkType<Sender,Sender>
-
recreateLinkForReconnect
protected void recreateLinkForReconnect()- Specified by:
recreateLinkForReconnectin classClientLinkType<Sender,Sender>
-
linkSpecificCleanupHandler
- Specified by:
linkSpecificCleanupHandlerin classClientLinkType<Sender,Sender>
-
linkSpecificLocalCloseHandler
protected void linkSpecificLocalCloseHandler()- Specified by:
linkSpecificLocalCloseHandlerin classClientLinkType<Sender,Sender>
-
linkSpecificRemoteOpenHandler
protected void linkSpecificRemoteOpenHandler()- Specified by:
linkSpecificRemoteOpenHandlerin classClientLinkType<Sender,Sender>
-
linkSpecificRemoteCloseHandler
protected void linkSpecificRemoteCloseHandler()- Specified by:
linkSpecificRemoteCloseHandlerin classClientLinkType<Sender,Sender>
-