public MessageConsumer createConsumer(Destination destination, ProxySession session) {
    String destinationName = destination.toString();
    List<ProxyMessageConsumer> messageConsumers = messageConsumerMap.get(destinationName);

    if (messageConsumers == null) {
      messageConsumers = new ArrayList<ProxyMessageConsumer>();
      messageConsumerMap.put(destinationName, messageConsumers);
    }

    ProxyMessageConsumer messageConsumer = new ProxyMessageConsumer(session);
    messageConsumer.setDestination(destination);
    messageConsumers.add(messageConsumer);

    return messageConsumer;
  }