|
ActiveMQ example source code file (MessageQuery.java)
The ActiveMQ MessageQuery.java source code/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.activemq.web; import java.util.Enumeration; import java.util.HashMap; import java.util.Map; import javax.jms.JMSException; import javax.jms.MapMessage; import javax.jms.Message; import javax.jms.ObjectMessage; import javax.jms.QueueBrowser; import javax.jms.TextMessage; /** * Allow the user to browse a message on a queue by its ID * * */ public class MessageQuery extends QueueBrowseQuery { private String id; private Message message; public MessageQuery(BrokerFacade brokerFacade, SessionPool sessionPool) throws JMSException { super(brokerFacade, sessionPool); } public String getId() { return id; } public void setId(String id) { this.id = id; } public void setMessage(Message message) { this.message = message; } public Message getMessage() throws JMSException { if (message == null) { if (id != null) { QueueBrowser tempBrowser=getBrowser(); Enumeration iter = tempBrowser.getEnumeration(); while (iter.hasMoreElements()) { Message item = (Message) iter.nextElement(); if (id.equals(item.getJMSMessageID())) { message = item; break; } } tempBrowser.close(); } } return message; } public Object getBody() throws JMSException { Message message = getMessage(); if (message instanceof TextMessage) { return ((TextMessage) message).getText(); } if (message instanceof ObjectMessage) { try { return ((ObjectMessage) message).getObject(); } catch (JMSException e) { //message could not be parsed, make the reason available return e; } } if (message instanceof MapMessage) { return createMapBody((MapMessage) message); } return null; } public Map<String, Object> getPropertiesMap() throws JMSException { Map<String, Object> answer = new HashMap Other ActiveMQ examples (source code examples)Here is a short list of links related to this ActiveMQ MessageQuery.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.