Class AdvancedRabbitMqJmsImplementation

All Implemented Interfaces:
ComponentLifecycleExtension, ConnectionComparator<VendorImplementationBase>, VendorImplementation, VendorImplementationBase

public class AdvancedRabbitMqJmsImplementation extends BasicRabbitMqJmsImplementation
AMQP 0.9.1 implementation of VendorImplementation using RabbitMQ.

All available connection factory properties are exposed. If you configure a username and password on the wrapping JmsConnection in which case ConnectionFactory.createConnection(String, String) is used when creating the connection otherwise ConnectionFactory.createConnection() will be used.

The enum values from AdvancedRabbitMqJmsImplementation.ConnectionFactoryProperty are matched on a case insensitve basis against the keys in getConnectionFactoryProperties() when configuring the RMQConnectionFactory. In the event that a key does not match one the enums, an attempt will be made to invoke (via reflection) the implied setter with the configured value (e.g. DnsServer=a.b.c.d would cause setDnsServer("a.b.c.d") to be invoked if it exists as a method on RMQConnectionFactory).

Since:
3.6.0

In the adapter configuration file this class is aliased as rabbitmq-advanced-jms-implementation which is the preferred alternative to the fully qualified classname when building your configuration.