Class ClientNoOpStreamTracker
java.lang.Object
org.apache.qpid.protonj2.client.impl.ClientNoOpStreamTracker
- All Implemented Interfaces:
StreamTracker
A dummy Tracker instance that always indicates remote settlement and
acceptance for
StreamSender instances.-
Method Summary
Modifier and TypeMethodDescriptionWaits if necessary for the remote to settle the sent delivery with anAccepteddisposition unless it has either already been settled and accepted or the original delivery was sent settled in which case the remote will not send aDispositionback.awaitAccepted(long timeout, TimeUnit unit) Waits if necessary for the remote to settle the sent delivery with anAccepteddisposition unless it has either already been settled and accepted or the original delivery was sent settled in which case the remote will not send aDispositionback.Waits if necessary for the remote to settle the sent delivery unless it has either already been settled or the original delivery was sent settled in which case the remote will not send aDispositionback.awaitSettlement(long timeout, TimeUnit unit) Waits if necessary for the remote to settle the sent delivery unless it has either already been settled or the original delivery was sent settled in which case the remote will not send aDispositionback.disposition(DeliveryState state, boolean settle) Updates the DeliveryState, and optionally settle the delivery as well.booleanGets whether the delivery was settled by the remote peer yet.Gets the current remote state for the tracked delivery.sender()settle()Settles the delivery locally, if notauto-settling.booleansettled()Returns a future that can be used to wait for the remote to acknowledge receipt of a sent message by settling it.state()Gets the current local state for the tracked delivery.
-
Method Details
-
sender
- Specified by:
senderin interfaceStreamTracker- Returns:
- the
StreamSenderthat was used to send the delivery that is being tracked.
-
settle
Description copied from interface:StreamTrackerSettles the delivery locally, if notauto-settling.- Specified by:
settlein interfaceStreamTracker- Returns:
- this
Trackerinstance. - Throws:
ClientException- if an error occurs while performing the settlement.
-
disposition
Description copied from interface:StreamTrackerUpdates the DeliveryState, and optionally settle the delivery as well.- Specified by:
dispositionin interfaceStreamTracker- Parameters:
state- the delivery state to applysettle- whether toStreamTracker.settle()the delivery at the same time- Returns:
- this
Trackerinstance. - Throws:
ClientException- if an error occurs while applying the given disposition
-
awaitSettlement
Description copied from interface:StreamTrackerWaits if necessary for the remote to settle the sent delivery unless it has either already been settled or the original delivery was sent settled in which case the remote will not send aDispositionback.- Specified by:
awaitSettlementin interfaceStreamTracker- Returns:
- this
Trackerinstance. - Throws:
ClientException- if an error occurs while awaiting the remote settlement.
-
awaitSettlement
Description copied from interface:StreamTrackerWaits if necessary for the remote to settle the sent delivery unless it has either already been settled or the original delivery was sent settled in which case the remote will not send aDispositionback.- Specified by:
awaitSettlementin interfaceStreamTracker- Parameters:
timeout- the maximum time to wait for the remote to settle.unit- the time unit of the timeout argument.- Returns:
- this
Trackerinstance. - Throws:
ClientException- if an error occurs while awaiting the remote settlement.
-
settled
public boolean settled()- Specified by:
settledin interfaceStreamTracker- Returns:
- true if the sent message has been locally settled.
-
state
Description copied from interface:StreamTrackerGets the current local state for the tracked delivery.- Specified by:
statein interfaceStreamTracker- Returns:
- the delivery state
-
remoteState
Description copied from interface:StreamTrackerGets the current remote state for the tracked delivery.- Specified by:
remoteStatein interfaceStreamTracker- Returns:
- the remote
DeliveryStateonce a value is received from the remote.
-
remoteSettled
public boolean remoteSettled()Description copied from interface:StreamTrackerGets whether the delivery was settled by the remote peer yet.- Specified by:
remoteSettledin interfaceStreamTracker- Returns:
- whether the delivery is remotely settled
-
settlementFuture
Description copied from interface:StreamTrackerReturns a future that can be used to wait for the remote to acknowledge receipt of a sent message by settling it.- Specified by:
settlementFuturein interfaceStreamTracker- Returns:
- a
Futurethat can be used to wait on remote settlement.
-
awaitAccepted
Description copied from interface:StreamTrackerWaits if necessary for the remote to settle the sent delivery with anAccepteddisposition unless it has either already been settled and accepted or the original delivery was sent settled in which case the remote will not send aDispositionback.- Specified by:
awaitAcceptedin interfaceStreamTracker- Returns:
- this
Trackerinstance. - Throws:
ClientDeliveryStateException- if the remote sends a disposition other than Accepted.ClientException- if an error occurs while awaiting the remote settlement.
-
awaitAccepted
Description copied from interface:StreamTrackerWaits if necessary for the remote to settle the sent delivery with anAccepteddisposition unless it has either already been settled and accepted or the original delivery was sent settled in which case the remote will not send aDispositionback.- Specified by:
awaitAcceptedin interfaceStreamTracker- Parameters:
timeout- the maximum time to wait for the remote to settle.unit- the time unit of the timeout argument.- Returns:
- this
Trackerinstance. - Throws:
ClientDeliveryStateException- if the remote sends a disposition other than Accepted.ClientException- if an error occurs while awaiting the remote settlement.
-