Class ProtonProtocolManager
- java.lang.Object
-
- org.apache.activemq.artemis.spi.core.protocol.AbstractProtocolManager<AMQPMessage,AmqpInterceptor,ActiveMQProtonRemotingConnection,AMQPRoutingHandler>
-
- org.apache.activemq.artemis.protocol.amqp.broker.ProtonProtocolManager
-
- All Implemented Interfaces:
NotificationListener,ProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
- Direct Known Subclasses:
ProtonClientProtocolManager
public class ProtonProtocolManager extends AbstractProtocolManager<AMQPMessage,AmqpInterceptor,ActiveMQProtonRemotingConnection,AMQPRoutingHandler> implements NotificationListener
A proton protocol manager, basically reads the Proton Input and maps proton resources to ActiveMQ Artemis resources
-
-
Field Summary
Fields Modifier and Type Field Description static StringMIRROR_ADDRESS
-
Constructor Summary
Constructors Constructor Description ProtonProtocolManager(ProtonProtocolManagerFactory factory, ActiveMQServer server, List<BaseInterceptor> incomingInterceptors, List<BaseInterceptor> outgoingInterceptors)
-
Method Summary
-
Methods inherited from class org.apache.activemq.artemis.spi.core.protocol.AbstractProtocolManager
getSecurityDomain, invokeInterceptors, setSecurityDomain
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.activemq.artemis.spi.core.protocol.ProtocolManager
removeHandler
-
-
-
-
Field Detail
-
MIRROR_ADDRESS
public static final String MIRROR_ADDRESS
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ProtonProtocolManager
public ProtonProtocolManager(ProtonProtocolManagerFactory factory, ActiveMQServer server, List<BaseInterceptor> incomingInterceptors, List<BaseInterceptor> outgoingInterceptors)
-
-
Method Detail
-
getReferenceIDSupplier
public ReferenceNodeStore getReferenceIDSupplier()
-
getServer
public ActiveMQServer getServer()
-
onNotification
public void onNotification(Notification notification)
- Specified by:
onNotificationin interfaceNotificationListener
-
getAmqpMinLargeMessageSize
public int getAmqpMinLargeMessageSize()
-
setAmqpMinLargeMessageSize
public ProtonProtocolManager setAmqpMinLargeMessageSize(int amqpMinLargeMessageSize)
-
isAmqpDuplicateDetection
public boolean isAmqpDuplicateDetection()
-
setAmqpDuplicateDetection
public ProtonProtocolManager setAmqpDuplicateDetection(boolean duplicateDetection)
-
getFactory
public ProtocolManagerFactory<AmqpInterceptor> getFactory()
- Specified by:
getFactoryin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
updateInterceptors
public void updateInterceptors(List incoming, List outgoing)
- Specified by:
updateInterceptorsin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
acceptsNoHandshake
public boolean acceptsNoHandshake()
- Specified by:
acceptsNoHandshakein interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
getAmqpIdleTimeout
public Long getAmqpIdleTimeout()
-
setAmqpIdleTimeout
public ProtonProtocolManager setAmqpIdleTimeout(Long ttl)
-
isDirectDeliver
public boolean isDirectDeliver()
-
setDirectDeliver
public ProtonProtocolManager setDirectDeliver(boolean directDeliver)
-
createClientManager
public ProtonClientProtocolManager createClientManager()
for outgoing
-
createConnectionEntry
public ConnectionEntry createConnectionEntry(Acceptor acceptorUsed, Connection remotingConnection)
- Specified by:
createConnectionEntryin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
createOutgoingConnectionEntry
public ConnectionEntry createOutgoingConnectionEntry(Connection remotingConnection)
This method is not part of the ProtocolManager interface because it only makes sense on AMQP. More specifically on AMQP Bridges
-
createOutgoingConnectionEntry
public ConnectionEntry createOutgoingConnectionEntry(Connection remotingConnection, ClientSASLFactory saslFactory)
-
handleBuffer
public void handleBuffer(RemotingConnection connection, ActiveMQBuffer buffer)
- Specified by:
handleBufferin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
addChannelHandlers
public void addChannelHandlers(io.netty.channel.ChannelPipeline pipeline)
- Specified by:
addChannelHandlersin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
getAmqpCredits
public int getAmqpCredits()
-
setAmqpCredits
public ProtonProtocolManager setAmqpCredits(int amqpCredits)
-
getAmqpLowCredits
public int getAmqpLowCredits()
-
setAmqpLowCredits
public ProtonProtocolManager setAmqpLowCredits(int amqpLowCredits)
-
isProtocol
public boolean isProtocol(byte[] array)
- Specified by:
isProtocolin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
handshake
public void handshake(NettyServerConnection connection, ActiveMQBuffer buffer)
- Specified by:
handshakein interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
websocketSubprotocolIdentifiers
public List<String> websocketSubprotocolIdentifiers()
- Specified by:
websocketSubprotocolIdentifiersin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
getPubSubPrefix
public String getPubSubPrefix()
-
setPubSubPrefix
public void setPubSubPrefix(String pubSubPrefix)
-
getMaxFrameSize
public int getMaxFrameSize()
-
setMaxFrameSize
public void setMaxFrameSize(int maxFrameSize)
-
getSaslMechanisms
public String[] getSaslMechanisms()
-
setSaslMechanisms
public void setSaslMechanisms(String[] saslMechanisms)
-
getSaslLoginConfigScope
public String getSaslLoginConfigScope()
-
setSaslLoginConfigScope
public void setSaslLoginConfigScope(String saslLoginConfigScope)
-
setAnycastPrefix
public void setAnycastPrefix(String anycastPrefix)
- Specified by:
setAnycastPrefixin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>- Overrides:
setAnycastPrefixin classAbstractProtocolManager<AMQPMessage,AmqpInterceptor,ActiveMQProtonRemotingConnection,AMQPRoutingHandler>
-
setMulticastPrefix
public void setMulticastPrefix(String multicastPrefix)
- Specified by:
setMulticastPrefixin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>- Overrides:
setMulticastPrefixin classAbstractProtocolManager<AMQPMessage,AmqpInterceptor,ActiveMQProtonRemotingConnection,AMQPRoutingHandler>
-
getPrefixes
public Map<SimpleString,RoutingType> getPrefixes()
- Specified by:
getPrefixesin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>- Overrides:
getPrefixesin classAbstractProtocolManager<AMQPMessage,AmqpInterceptor,ActiveMQProtonRemotingConnection,AMQPRoutingHandler>
-
getRoutingHandler
public AMQPRoutingHandler getRoutingHandler()
- Specified by:
getRoutingHandlerin interfaceProtocolManager<AmqpInterceptor,AMQPRoutingHandler>
-
invokeIncoming
public String invokeIncoming(AMQPMessage message, ActiveMQProtonRemotingConnection connection)
-
invokeOutgoing
public String invokeOutgoing(AMQPMessage message, ActiveMQProtonRemotingConnection connection)
-
getInitialRemoteMaxFrameSize
public int getInitialRemoteMaxFrameSize()
-
setInitialRemoteMaxFrameSize
public void setInitialRemoteMaxFrameSize(int initialRemoteMaxFrameSize)
-
isUseModifiedForTransientDeliveryErrors
public boolean isUseModifiedForTransientDeliveryErrors()
Returns true if transient delivery errors should be handled with a Modified disposition (if permitted by link)
-
setAmqpUseModifiedForTransientDeliveryErrors
public ProtonProtocolManager setAmqpUseModifiedForTransientDeliveryErrors(boolean amqpUseModifiedForTransientDeliveryErrors)
Sets if transient delivery errors should be handled with a Modified disposition (if permitted by link)
-
setAmqpTreatRejectAsUnmodifiedDeliveryFailed
public void setAmqpTreatRejectAsUnmodifiedDeliveryFailed(boolean amqpTreatRejectAsUnmodifiedDeliveryFailed)
-
isAmqpTreatRejectAsUnmodifiedDeliveryFailed
public boolean isAmqpTreatRejectAsUnmodifiedDeliveryFailed()
-
-