package io.muoncore.extension.amqp.rabbitmq09; import com.rabbitmq.client.Channel; import io.muoncore.extension.amqp.QueueListener; import io.muoncore.extension.amqp.QueueListenerFactory; public class RabbitMq09QueueListenerFactory implements QueueListenerFactory { private Channel channel; public RabbitMq09QueueListenerFactory(Channel channel) { this.channel = channel; } @Override public QueueListener listenOnQueue(String queueName, QueueListener.QueueFunction function) { RabbitMq09QueueListener listener = new RabbitMq09QueueListener(channel, queueName, function); listener.start(); listener.blockUntilReady(); return listener; } @Override public QueueListener listenOnBroadcast(String topicName, QueueListener.QueueFunction function) { RabbitMq09BroadcastListener listener = new RabbitMq09BroadcastListener(channel, topicName, function); listener.start(); listener.blockUntilReady(); return listener; } }