}
public void addMessageReceiverWithResponse(final String queue,
final BrokerMessageReceiverWithResponse receiver) {
SimpleMessageListenerContainer container = new SimpleMessageListenerContainer(
cf);
container.setConcurrentConsumers(10);
MessageListenerAdapter adapter = new MessageListenerAdapter(
new Object() {
@SuppressWarnings("unused")
protected String onMessage(byte[] message) {
String messageJson = new String(message);
log.debug("<-Req Queue:'" + queue + "' " + messageJson);
String responseJson = receiver.onMessage(messageJson);
log.debug("Res-> " + responseJson);
return responseJson;
}
}, "onMessage");
container.setMessageListener(adapter);
container.setQueueNames(queue);
container.start();
containers.add(container);
log.debug("Registered receiver with response '"
+ receiver.getClass().getName() + "' for queue '" + queue);