Class ClientReceiverLinkType<ReceiverType extends Link<ReceiverType>>
- java.lang.Object
-
- org.apache.qpid.protonj2.client.impl.ClientLinkType<ReceiverType,Receiver>
-
- org.apache.qpid.protonj2.client.impl.ClientReceiverLinkType<ReceiverType>
-
- Type Parameters:
ReceiverType
- The client receiver type that is being implemented.
- All Implemented Interfaces:
AutoCloseable
,Link<ReceiverType>
- Direct Known Subclasses:
ClientReceiver
,ClientStreamReceiver
public abstract class ClientReceiverLinkType<ReceiverType extends Link<ReceiverType>> extends ClientLinkType<ReceiverType,Receiver>
Base class for client link types that wrap a proton receiver to provide delivery dispatch in some manner.
-
-
Field Summary
Fields Modifier and Type Field Description protected ClientFuture<ReceiverType>
drainingFuture
protected ScheduledFuture<?>
drainingTimeout
protected Receiver
protonReceiver
-
Fields inherited from class org.apache.qpid.protonj2.client.impl.ClientLinkType
closed, CLOSED_UPDATER, closeFuture, executor, failureCause, linkId, linkRemotelyClosedHandler, openFuture, options, remoteSource, remoteTarget, session
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ClientReceiverLinkType(ClientSession session, String linkId, LinkOptions<?> options, Receiver protonReceiver)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
handleDeliveryAborted(IncomingDelivery delivery)
protected abstract void
handleDeliveryRead(IncomingDelivery delivery)
protected void
handleDeliveryStateRemotelyUpdated(IncomingDelivery delivery)
protected void
handleReceiverCreditUpdated(Receiver receiver)
protected void
linkSpecificCleanupHandler(ClientException failureCause)
protected void
linkSpecificLocalCloseHandler()
protected void
linkSpecificLocalOpenHandler()
protected void
linkSpecificRemoteCloseHandler()
protected void
linkSpecificRemoteOpenHandler()
protected Receiver
protonLink()
protected abstract void
replenishCreditIfNeeded()
-
Methods 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, recreateLinkForReconnect, self, session, source, target, waitForOpenToComplete
-
-
-
-
Field Detail
-
drainingFuture
protected ClientFuture<ReceiverType extends Link<ReceiverType>> drainingFuture
-
drainingTimeout
protected ScheduledFuture<?> drainingTimeout
-
protonReceiver
protected Receiver protonReceiver
-
-
Constructor Detail
-
ClientReceiverLinkType
protected ClientReceiverLinkType(ClientSession session, String linkId, LinkOptions<?> options, Receiver protonReceiver)
-
-
Method Detail
-
protonLink
protected Receiver protonLink()
- Specified by:
protonLink
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
replenishCreditIfNeeded
protected abstract void replenishCreditIfNeeded()
-
handleDeliveryRead
protected abstract void handleDeliveryRead(IncomingDelivery delivery)
-
handleDeliveryAborted
protected void handleDeliveryAborted(IncomingDelivery delivery)
-
handleDeliveryStateRemotelyUpdated
protected void handleDeliveryStateRemotelyUpdated(IncomingDelivery delivery)
-
handleReceiverCreditUpdated
protected void handleReceiverCreditUpdated(Receiver receiver)
-
linkSpecificLocalOpenHandler
protected void linkSpecificLocalOpenHandler()
- Specified by:
linkSpecificLocalOpenHandler
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
linkSpecificRemoteOpenHandler
protected void linkSpecificRemoteOpenHandler()
- Specified by:
linkSpecificRemoteOpenHandler
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
linkSpecificLocalCloseHandler
protected void linkSpecificLocalCloseHandler()
- Specified by:
linkSpecificLocalCloseHandler
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
linkSpecificRemoteCloseHandler
protected void linkSpecificRemoteCloseHandler()
- Specified by:
linkSpecificRemoteCloseHandler
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
linkSpecificCleanupHandler
protected void linkSpecificCleanupHandler(ClientException failureCause)
- Specified by:
linkSpecificCleanupHandler
in classClientLinkType<ReceiverType extends Link<ReceiverType>,Receiver>
-
-