Class AmqpSender
java.lang.Object
org.apache.activemq.transport.amqp.protocol.AmqpAbstractLink<org.apache.qpid.proton.engine.Sender>
org.apache.activemq.transport.amqp.protocol.AmqpSender
- All Implemented Interfaces:
AmqpLink,AmqpResource
An AmqpSender wraps the AMQP Sender end of a link from the remote peer
which holds the corresponding Receiver which receives messages transfered
across the link from the Broker.
An AmqpSender is in turn a message consumer subscribed to some destination
on the broker. As messages are dispatched to this sender that are sent on
to the remote Receiver end of the lin.
-
Field Summary
Fields inherited from class org.apache.activemq.transport.amqp.protocol.AmqpAbstractLink
closeActions, closed, endpoint, opened, session -
Constructor Summary
ConstructorsConstructorDescriptionAmqpSender(AmqpSession session, org.apache.qpid.proton.engine.Sender endpoint, org.apache.activemq.command.ConsumerInfo consumerInfo) Creates a new AmqpSender instance that manages the given Sender -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Request from the remote peer to close this resource.voidcommit(org.apache.activemq.command.LocalTransactionId txnId) Handle work necessary on commit of transacted resources associated with this Link instance.voiddelivery(org.apache.qpid.proton.engine.Delivery delivery) Called when a new Delivery arrives for the given Link.voiddetach()Request from the remote peer to detach this resource.voidflow()Handles an incoming flow control.org.apache.activemq.command.ConsumerIdorg.apache.activemq.command.ActiveMQDestinationvoidonConsumerControl(org.apache.activemq.command.ConsumerControl control) Called when the Broker sends a ConsumerControl command to the Consumer that this sender creates to obtain messages to dispatch via the sender for this end of the open link.voidonMessageDispatch(org.apache.activemq.command.MessageDispatch dispatch) Event point for incoming message from ActiveMQ on this Sender's corresponding subscription.voidopen()Request from the remote peer to open this resource.voidvoidrollback(org.apache.activemq.command.LocalTransactionId txnId) Handle work necessary on rollback of transacted resources associated with this Link instance.voidsetDestination(org.apache.activemq.command.ActiveMQDestination destination) Sets the ActiveMQDestination that this link will be servicing.toString()Methods inherited from class org.apache.activemq.transport.amqp.protocol.AmqpAbstractLink
addCloseAction, close, getEndpoint, getSession, isClosed, isOpened, sendToActiveMQ, sendToActiveMQ
-
Constructor Details
-
AmqpSender
public AmqpSender(AmqpSession session, org.apache.qpid.proton.engine.Sender endpoint, org.apache.activemq.command.ConsumerInfo consumerInfo) Creates a new AmqpSender instance that manages the given Sender- Parameters:
session- the AmqpSession object that is the parent of this instance.endpoint- the AMQP Sender instance that this class manages.consumerInfo- the ConsumerInfo instance that holds configuration for this sender.
-
-
Method Details
-
open
public void open()Description copied from interface:AmqpResourceRequest from the remote peer to open this resource.- Specified by:
openin interfaceAmqpResource- Overrides:
openin classAmqpAbstractLink<org.apache.qpid.proton.engine.Sender>
-
detach
public void detach()Description copied from interface:AmqpLinkRequest from the remote peer to detach this resource.- Specified by:
detachin interfaceAmqpLink- Overrides:
detachin classAmqpAbstractLink<org.apache.qpid.proton.engine.Sender>
-
close
public void close()Description copied from interface:AmqpResourceRequest from the remote peer to close this resource.- Specified by:
closein interfaceAmqpResource- Overrides:
closein classAmqpAbstractLink<org.apache.qpid.proton.engine.Sender>
-
flow
Description copied from interface:AmqpLinkHandles an incoming flow control.- Throws:
Exception
-
delivery
Description copied from interface:AmqpLinkCalled when a new Delivery arrives for the given Link.- Parameters:
delivery- the newly arrived delivery on this link.- Throws:
Exception- if an error occurs while processing the new Delivery.
-
commit
Description copied from interface:AmqpLinkHandle work necessary on commit of transacted resources associated with this Link instance.- Parameters:
txnId- The Transaction ID being committed.- Throws:
Exception- if an error occurs while performing the commit.
-
rollback
Description copied from interface:AmqpLinkHandle work necessary on rollback of transacted resources associated with this Link instance.- Parameters:
txnId- The Transaction ID being rolled back.- Throws:
Exception- if an error occurs while performing the rollback.
-
onMessageDispatch
public void onMessageDispatch(org.apache.activemq.command.MessageDispatch dispatch) throws Exception Event point for incoming message from ActiveMQ on this Sender's corresponding subscription.- Parameters:
dispatch- the MessageDispatch to process and send across the link.- Throws:
Exception- if an error occurs while encoding the message for send.
-
onConsumerControl
public void onConsumerControl(org.apache.activemq.command.ConsumerControl control) Called when the Broker sends a ConsumerControl command to the Consumer that this sender creates to obtain messages to dispatch via the sender for this end of the open link.- Parameters:
control- The ConsumerControl command to process.
-
toString
-
getConsumerId
public org.apache.activemq.command.ConsumerId getConsumerId() -
getDestination
public org.apache.activemq.command.ActiveMQDestination getDestination()- Returns:
- the ActiveMQDestination that this link is servicing.
-
setDestination
public void setDestination(org.apache.activemq.command.ActiveMQDestination destination) Description copied from interface:AmqpLinkSets the ActiveMQDestination that this link will be servicing.- Parameters:
destination- the ActiveMQDestination that this link services.
-
pumpOutbound
- Throws:
Exception
-