Created
December 7, 2015 20:47
-
-
Save jsanda/8e850515faed36be9150 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class QueryListener extends RPCBasicMessageListener<InventoryQueryRequestMessage> { | |
private final Inventory inventory; | |
@Inject | |
private Bus bus; | |
@Resource(mappedName = "java:/jms/queue/INVENTORY_QUEUE_NAME") | |
Queue queue; | |
public QueryListener(Inventory inventory) { | |
this.inventory = inventory; | |
bus.listen(queue, this); | |
} | |
@Override | |
public InventoryQueryResponseMessage onBasicMessage( | |
BasicMessageWithExtraData<InventoryQueryRequestMessage> queryMessage) { | |
Log.LOG.info("\n\nBUS query message\n\n"); | |
// | |
Class<? extends AbstractElement<?, ?>> requestedType = queryMessage.getBasicMessage().getType(); | |
List<? extends AbstractElement<?, ?>> result = inventory.execute(queryMessage.getBasicMessage().getQuery(), | |
requestedType); | |
InventoryQueryResponseMessage response = new InventoryQueryResponseMessage(result); | |
bus.send(queryMessage.getJMSReplyTo(), response); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment