code: public ExchangeConsumer createExchangeListener(final String name, final ConsumerCallback messageCallback)
      {
          Preconditions.checkState(connectionFactory != null, "connection factory was never injected!");
          return new ExchangeConsumer(connectionFactory, amqpConfig, name, messageCallback);
      }
docs: Creates a new {@link ExchangeConsumer}. For every message received (or when the timeout waiting for messages is hit), the callback
  is invoked with the message received.