Class ClientStreamDelivery
- All Implemented Interfaces:
StreamDelivery
StreamDelivery implementation that provides the mechanics of reading message
types from an incoming split framed transfer.-
Field Summary
Fields inherited from class org.apache.qpid.protonj2.client.impl.ClientDeliverable
delivery -
Method Summary
Modifier and TypeMethodDescriptionbooleanaborted()Check if theStreamDeliveryhas been marked as aborted by the remote sender.Decodes theStreamDeliverypayload and returns aMapcontaining a copy of any associatedDeliveryAnnotationsthat were transmitted with theMessagepayload of thisStreamDelivery.booleanCheck if theStreamDeliveryhas been marked as complete by the remote sender.message()Decode theStreamDeliverypayload and return anMessageobject.Create and return anInputStreamthat reads the raw payload bytes of the givenStreamDelivery.receiver()protected ClientStreamDeliveryself()Methods inherited from class org.apache.qpid.protonj2.client.impl.ClientDeliverable
accept, disposition, messageFormat, modified, reject, release, remoteSettled, remoteState, settle, settled, stateMethods 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.StreamDelivery
accept, disposition, messageFormat, modified, reject, release, remoteSettled, remoteState, settle, settled, state
-
Method Details
-
self
- Specified by:
selfin classClientDeliverable<ClientStreamDelivery,ClientStreamReceiver>
-
receiver
- Specified by:
receiverin interfaceStreamDelivery- Returns:
- the
StreamReceiverthat originated thisStreamDelivery.
-
aborted
public boolean aborted()Description copied from interface:StreamDeliveryCheck if theStreamDeliveryhas been marked as aborted by the remote sender.- Specified by:
abortedin interfaceStreamDelivery- Returns:
- true if this context has been marked as aborted previously.
-
completed
public boolean completed()Description copied from interface:StreamDeliveryCheck if theStreamDeliveryhas been marked as complete by the remote sender.- Specified by:
completedin interfaceStreamDelivery- Returns:
- true if this context has been marked as being the complete.
-
message
Description copied from interface:StreamDeliveryDecode theStreamDeliverypayload and return anMessageobject.If the incoming message carried any delivery annotations they can be accessed via the
StreamDelivery.annotations()method. Re-sending the returned message will not also send the incoming delivery annotations, the sender must include them in theSender.send(Message, Map)call if they are to be forwarded onto the next recipient.Calling this message claims the payload of the delivery for the returned
Messageand excludes use of theStreamDelivery.rawInputStream()method of theStreamDeliveryobject. Calling theStreamDelivery.rawInputStream()method after calling this method throwsClientIllegalStateException.- Specified by:
messagein interfaceStreamDelivery- Returns:
- a
Messageinstance that wraps the decoded payload. - Throws:
ClientException- if an error occurs while decoding the payload.
-
annotations
Description copied from interface:StreamDeliveryDecodes theStreamDeliverypayload and returns aMapcontaining a copy of any associatedDeliveryAnnotationsthat were transmitted with theMessagepayload of thisStreamDelivery.Calling this message claims the payload of the delivery for the returned
Mapand the decodedMessagethat can be accessed via theStreamDelivery.message()method and excludes use of theStreamDelivery.rawInputStream()method of theStreamDeliveryobject. Calling theStreamDelivery.rawInputStream()method after calling this method throwsClientIllegalStateException.- Specified by:
annotationsin interfaceStreamDelivery- Returns:
- copy of the delivery annotations that were transmitted with the
Messagepayload. - Throws:
ClientException- if an error occurs while decoding the payload.
-
rawInputStream
Description copied from interface:StreamDeliveryCreate and return anInputStreamthat reads the raw payload bytes of the givenStreamDelivery.Calling this method claims the payload of the delivery for the returned
InputStreamand excludes use of theStreamDelivery.message()andStreamDelivery.annotations()methods of theStreamDeliveryobject. Closing the returned input stream discards any unread bytes from the delivery payload. Calling theStreamDelivery.message()orStreamDelivery.annotations()methods after calling this method throwsClientIllegalStateException.- Specified by:
rawInputStreamin interfaceStreamDelivery- Returns:
- an
InputStreaminstance that can be used to read the raw delivery payload. - Throws:
ClientException- if an error occurs while decoding the payload.
-