Class AMQPFederationQueueSenderController
java.lang.Object
org.apache.activemq.artemis.protocol.amqp.connect.federation.AMQPFederationSenderController
org.apache.activemq.artemis.protocol.amqp.connect.federation.AMQPFederationQueueSenderController
- All Implemented Interfaces:
SenderController
SenderController used when an AMQP federation Queue receiver is created and this side of the connection needs
to create a matching sender. The attach of the sender should only succeed if there is a local matching queue,
otherwise the link should be closed with an error indicating that the matching resource is not present on this peer.-
Nested Class Summary
Nested classes/interfaces inherited from class AMQPFederationSenderController
AMQPFederationSenderController.RoleNested classes/interfaces inherited from interface SenderController
SenderController.RejectingOutgoingMessageWriter -
Field Summary
Fields inherited from class AMQPFederationSenderController
closedListener, controllerId, coreLargeMessageWriter, coreMessageWriter, federation, largeMessageWriter, manager, metrics, resourceDeletedAction, senderContext, serverConsumer, session, sessionSPI, standardMessageWriter, tunnelCoreMessagesFields inherited from interface SenderController
REJECTING_MESSAGE_WRITER -
Constructor Summary
ConstructorsConstructorDescriptionAMQPFederationQueueSenderController(AMQPFederationRemoteQueuePolicyManager manager, AMQPFederationMetrics.ProducerMetrics metrics, Consumer<AMQPFederationSenderController> closedListener) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.activemq.artemis.core.server.ServerConsumercreateServerConsumer(ProtonServerSenderContext senderContext) The subclass must implement this and create an appropriately configured server consumer based on the properties of the AMQP link and the role of the implemented sender type.getRole()Returns an enumeration describing the role of the sender controller implementation.Methods inherited from class AMQPFederationSenderController
close, close, getFederation, getMessagesSent, getPolicyManager, getRoutingType, getSenderContext, getServer, getServerConsumer, getSessionCallback, getSessionContext, handleLinkLocallyClosed, handleLinkRemotelyClosed, init, registerRemoteLinkClosedInterceptor, selectOutgoingMessageWriter
-
Constructor Details
-
AMQPFederationQueueSenderController
public AMQPFederationQueueSenderController(AMQPFederationRemoteQueuePolicyManager manager, AMQPFederationMetrics.ProducerMetrics metrics, Consumer<AMQPFederationSenderController> closedListener) throws ActiveMQAMQPException - Throws:
ActiveMQAMQPException
-
-
Method Details
-
getRole
Description copied from class:AMQPFederationSenderControllerReturns an enumeration describing the role of the sender controller implementation.- Specified by:
getRolein classAMQPFederationSenderController- Returns:
- an enumeration describing the role of the sender controller implementation
-
createServerConsumer
public org.apache.activemq.artemis.core.server.ServerConsumer createServerConsumer(ProtonServerSenderContext senderContext) throws Exception Description copied from class:AMQPFederationSenderControllerThe subclass must implement this and create an appropriately configured server consumer based on the properties of the AMQP link and the role of the implemented sender type.- Specified by:
createServerConsumerin classAMQPFederationSenderController- Parameters:
senderContext- The server sender context that this controller was created for.- Returns:
- a new
ServerConsumerinstance that will send messages to the remote peer - Throws:
Exception- if an error occurs while creating the server consumer.
-