The stream delivery type manages the underlying state of an incoming streaming message delivery and provides the stream type used to read and block for reads when not all requested message data has arrived. The delivery will also manage settlement of a streaming delivery and apply receiver configuration rules like auto settlement to the delivery as incoming portions of the message arrive.
More...
|
IStreamReceiverMessage | Message () |
| Returns a stream receiver message type that will perform a decode of message payload as portions of the streamed message arrive. The message API is inherently a blocking API as the decoder will need to wait in some cases to decode a full section the incoming message when it is requested.
|
|
IStreamDelivery | Accept () |
| Accepts and settles this delivery.
|
|
IStreamDelivery | Disposition (IDeliveryState state, bool settled) |
| Applies the given delivery state to the delivery if not already settled and optionally settles it.
|
|
IStreamDelivery | Modified (bool deliveryFailed, bool undeliverableHere) |
| Modifies and settles the delivery applying the failure and routing options.
|
|
IStreamDelivery | Reject (string condition, string description) |
| Rejects the delivery with an ErrorCondition that contains the provided condition and description information and settles.
|
|
IStreamDelivery | Release () |
| Releases and settles this delivery.
|
|
IStreamDelivery | Settle () |
| Settles the delivery with the remote which prevents any further delivery state updates.
|
|
Task< IStreamDelivery > | AcceptAsync () |
| Accepts and settles this delivery asynchronously ensuring that the call does not block on any IO or other client operations.
|
|
Task< IStreamDelivery > | ReleaseAsync () |
| Releases and settles this delivery asynchronously ensuring that the call does not block on any IO or other client operations.
|
|
Task< IStreamDelivery > | RejectAsync (string condition, string description) |
| Asynchronously rejects the delivery with an ErrorCondition that contains the provided condition and description information and settles.
|
|
Task< IStreamDelivery > | ModifiedAsync (bool deliveryFailed, bool undeliverableHere) |
| Modifies and settles the delivery asynchronously applying the failure and routing options without any blocking due to IO or other client internal operations.
|
|
Task< IStreamDelivery > | DispositionAsync (IDeliveryState state, bool settled) |
| Applies the given delivery state to the delivery if not already settled and optionally settles it performing all IO and client work asynchronously ensuring that any calls to this method do not block.
|
|
Task< IStreamDelivery > | SettleAsync () |
| Settles the delivery with the remote which prevents any further delivery state updates asynchronously.
|
|
|
IStreamReceiver | Receiver [get] |
| Returns the parent streaming receiver instance where this delivery arrived.
|
|
bool | Aborted [get] |
| Returns true if the remote has aborted this incoming streaming delivery and no more bytes are available for read from the remote.
|
|
bool | Completed [get] |
| Returns true if the remote has completed the send of all portions of the streaming delivery payload and there are no more incoming bytes expected or allowed for this delivery.
|
|
uint | MessageFormat [get] |
| The message format value that was transmitted with this delivery (default is zero).
|
|
bool | Settled [get] |
| Returns true if this delivery has already been settled.
|
|
IDeliveryState | State [get] |
| Returns the currently set delivery state for this delivery or null if none set.
|
|
bool | RemoteSettled [get] |
| Returns true if this delivery has already been settled by the remote.
|
|
IDeliveryState | RemoteState [get] |
| Returns the currently set delivery state for this delivery as set by the remote or null if none set.
|
|
IReadOnlyDictionary< string, object > | Annotations [get] |
| Decodes the delivery payload and returns a dictionary containing a copy of any associated delivery annotations that were transmitted with the message payload.
|
|
Stream | RawInputStream [get] |
| Create and return an read-only Stream that reads the raw payload bytes of the given delivery. Calling this method claims the payload of the delivery for the returned Stream and excludes use of the message and annotations API methods of the delivery object. Closing the returned input stream discards any unread bytes from the delivery payload. Calling the message or annotations methods after calling this method will throw a ClientIllegalStateException.
|
|
The stream delivery type manages the underlying state of an incoming streaming message delivery and provides the stream type used to read and block for reads when not all requested message data has arrived. The delivery will also manage settlement of a streaming delivery and apply receiver configuration rules like auto settlement to the delivery as incoming portions of the message arrive.
◆ Accept()
IStreamDelivery Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Accept |
( |
| ) |
|
|
inline |
◆ AcceptAsync()
Task< IStreamDelivery > Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.AcceptAsync |
( |
| ) |
|
|
inline |
Accepts and settles this delivery asynchronously ensuring that the call does not block on any IO or other client operations.
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Disposition()
Applies the given delivery state to the delivery if not already settled and optionally settles it.
- Parameters
-
state | delivery state to apply to this delivery |
settled | optionally settles the delivery |
- Returns
- This delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ DispositionAsync()
Applies the given delivery state to the delivery if not already settled and optionally settles it performing all IO and client work asynchronously ensuring that any calls to this method do not block.
- Parameters
-
state | delivery state to apply to this delivery |
settled | optionally settles the delivery |
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Message()
Returns a stream receiver message type that will perform a decode of message payload as portions of the streamed message arrive. The message API is inherently a blocking API as the decoder will need to wait in some cases to decode a full section the incoming message when it is requested.
If the incoming message carried any delivery annotations they can be accessed via the Annotations method. Re-sending the returned message will not also send the incoming delivery annotations, the sender must include them in the sender's send call if they are to be forwarded onto the next recipient.
- Template Parameters
-
T | Body type of the message |
- Returns
- the decoded message from the delivery payload
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Modified()
IStreamDelivery Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Modified |
( |
bool |
deliveryFailed, |
|
|
bool |
undeliverableHere |
|
) |
| |
|
inline |
Modifies and settles the delivery applying the failure and routing options.
- Parameters
-
deliveryFailed | If the delivery failed on this receiver for some reason |
undeliverableHere | If the delivery should not be routed back to this receiver. |
- Returns
- This delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ ModifiedAsync()
Task< IStreamDelivery > Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.ModifiedAsync |
( |
bool |
deliveryFailed, |
|
|
bool |
undeliverableHere |
|
) |
| |
|
inline |
Modifies and settles the delivery asynchronously applying the failure and routing options without any blocking due to IO or other client internal operations.
- Parameters
-
deliveryFailed | If the delivery failed on this receiver for some reason |
undeliverableHere | If the delivery should not be routed back to this receiver. |
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Reject()
IStreamDelivery Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Reject |
( |
string |
condition, |
|
|
string |
description |
|
) |
| |
|
inline |
Rejects the delivery with an ErrorCondition that contains the provided condition and description information and settles.
- Parameters
-
condition | The condition that defines this rejection error |
description | A description of the rejection cause. |
- Returns
- This delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ RejectAsync()
Task< IStreamDelivery > Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.RejectAsync |
( |
string |
condition, |
|
|
string |
description |
|
) |
| |
|
inline |
Asynchronously rejects the delivery with an ErrorCondition that contains the provided condition and description information and settles.
- Parameters
-
condition | The condition that defines this rejection error |
description | A description of the rejection cause. |
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Release()
IStreamDelivery Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Release |
( |
| ) |
|
|
inline |
◆ ReleaseAsync()
Task< IStreamDelivery > Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.ReleaseAsync |
( |
| ) |
|
|
inline |
Releases and settles this delivery asynchronously ensuring that the call does not block on any IO or other client operations.
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Settle()
IStreamDelivery Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Settle |
( |
| ) |
|
|
inline |
◆ SettleAsync()
Task< IStreamDelivery > Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.SettleAsync |
( |
| ) |
|
|
inline |
Settles the delivery with the remote which prevents any further delivery state updates asynchronously.
- Returns
- A Task that returns this delivery instance
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Aborted
bool Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Aborted |
|
get |
◆ Annotations
IReadOnlyDictionary<string, object> Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Annotations |
|
get |
Decodes the delivery payload and returns a dictionary containing a copy of any associated delivery annotations that were transmitted with the message payload.
Calling this message claims the payload of the delivery for the message and annotations methods and excludes use of the RawInputStream method of the delivery object. Calling the RawInputStream method after calling this method throws ClientIllegalStateException.
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Completed
bool Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Completed |
|
get |
Returns true if the remote has completed the send of all portions of the streaming delivery payload and there are no more incoming bytes expected or allowed for this delivery.
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ MessageFormat
uint Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.MessageFormat |
|
get |
◆ RawInputStream
Stream Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.RawInputStream |
|
get |
Create and return an read-only Stream that reads the raw payload bytes of the given delivery. Calling this method claims the payload of the delivery for the returned Stream and excludes use of the message and annotations API methods of the delivery object. Closing the returned input stream discards any unread bytes from the delivery payload. Calling the message or annotations methods after calling this method will throw a ClientIllegalStateException.
Implements Apache.Qpid.Proton.Client.IStreamDelivery.
◆ Receiver
IStreamReceiver Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Receiver |
|
get |
◆ RemoteSettled
bool Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.RemoteSettled |
|
get |
◆ RemoteState
IDeliveryState Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.RemoteState |
|
get |
◆ Settled
bool Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.Settled |
|
get |
◆ State
IDeliveryState Apache.Qpid.Proton.Client.Implementation.ClientStreamDelivery.State |
|
get |
The documentation for this class was generated from the following file:
- src/Proton.Client/Client/Implementation/ClientStreamDelivery.cs