Class ClientStreamDelivery
- java.lang.Object
-
- org.apache.qpid.protonj2.client.impl.ClientDeliverable<ClientStreamDelivery,ClientStreamReceiver>
-
- org.apache.qpid.protonj2.client.impl.ClientStreamDelivery
-
- All Implemented Interfaces:
StreamDelivery
public final class ClientStreamDelivery extends ClientDeliverable<ClientStreamDelivery,ClientStreamReceiver> implements StreamDelivery
AStreamDeliveryimplementation 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaborted()Check if theStreamDeliveryhas been marked as aborted by the remote sender.Map<String,Object>annotations()Decodes theStreamDeliverypayload and returns aMapcontaining a copy of any associatedDeliveryAnnotationsthat were transmitted with theMessagepayload of thisStreamDelivery.booleancompleted()Check if theStreamDeliveryhas been marked as complete by the remote sender.ClientStreamReceiverMessagemessage()Decode theStreamDeliverypayload and return anMessageobject.InputStreamrawInputStream()Create and return anInputStreamthat reads the raw payload bytes of the givenStreamDelivery.ClientStreamReceiverreceiver()protected ClientStreamDeliveryself()-
Methods inherited from class org.apache.qpid.protonj2.client.impl.ClientDeliverable
accept, disposition, messageFormat, modified, reject, release, remoteSettled, remoteState, settle, settled, state
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.qpid.protonj2.client.StreamDelivery
accept, disposition, messageFormat, modified, reject, release, remoteSettled, remoteState, settle, settled, state
-
-
-
-
Method Detail
-
self
protected ClientStreamDelivery self()
- Specified by:
selfin classClientDeliverable<ClientStreamDelivery,ClientStreamReceiver>
-
receiver
public 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
public ClientStreamReceiverMessage message() throws ClientException
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
public Map<String,Object> annotations() throws ClientException
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
public InputStream rawInputStream() throws ClientException
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.
-
-