Skip to content

RabbitMQ Integration

John Ament edited this page Jan 2, 2017 · 2 revisions

RabbitMQ Integration

Hammock provides a messaging integration for RabbitMQ. A ConnectionFactory injection point will be provided, based on the configuration available.

Configuration Options

The following configuration options can be added to your project, and are mapped directly to RabbitMQ's client

rabbitmq.username
rabbitmq.password
rabbitmq.virtualHost
rabbitmq.host
rabbitmq.port
rabbitmq.uri
rabbitmq.requestedChannelMax
rabbitmq.requestedFrameMax
rabbitmq.requestedHeartbeat
rabbitmq.connectionTimeout
rabbitmq.handshakeTimeout
rabbitmq.shutdownTimeout
rabbitmq.automaticRecovery
rabbitmq.topologyRecovery
rabbitmq.networkRecoveryInterval
rabbitmq.nio

Override Features

By providing an @Alternative to RabbitMQConfiguration, you can override the following attributes:

    private SaslConfig saslConfig;
    private ExecutorService sharedExecutor;
    private ThreadFactory threadFactory;
    private ExecutorService shutdownExecutor;
    private ScheduledExecutorService heartbeatExecutor;
    private SocketConfigurator socketConf;
    private ExceptionHandler exceptionHandler;
    private MetricsCollector metricsCollector;
    private NioParams nioParams;
    private SSLContext sslContext;

Metrics Integration

Since RabbitMQ's Java Client supports Metrics, if the metrics runtime is found on the classpath then the StandardMetricsCollector will be used instead of the NoOpMetricsCollector