Return-Path: X-Original-To: apmail-activemq-users-archive@www.apache.org Delivered-To: apmail-activemq-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 5448811B81 for ; Mon, 12 May 2014 17:14:51 +0000 (UTC) Received: (qmail 54174 invoked by uid 500); 12 May 2014 16:48:11 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 53346 invoked by uid 500); 12 May 2014 16:48:11 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 53119 invoked by uid 99); 12 May 2014 16:48:11 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 May 2014 16:48:11 +0000 X-ASF-Spam-Status: No, hits=0.6 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS,URI_HEX X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of christian.posta@gmail.com designates 209.85.217.174 as permitted sender) Received: from [209.85.217.174] (HELO mail-lb0-f174.google.com) (209.85.217.174) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 May 2014 16:48:08 +0000 Received: by mail-lb0-f174.google.com with SMTP id n15so7621769lbi.19 for ; Mon, 12 May 2014 09:47:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=2t/hsB55le2vUQT3dVJqIXD6XNQ3yradWcda5gf9N5U=; b=zQk1Xet8njAD+ycGKmsmFuFWQMjzO8kZ1KhnXpK3vzHNE3hXPFvCnXgmH2FhNXuTOW p4K1Z63cpeK2AhnFTAZZlqJ/IC/Nuq2cUsMRgZIwHxZQQbOi4bewwaBqhjSjIdIlSIa9 Wq/TjiXU0NImFiifqHzSN1gxp6j+J+BB03SsZ4GJ3oMh28OwikkAwDuCvpRqq3/4GtXc kuTEn/eYw/v21GiVfpOLpXYnQGiUKd6uxbRGdPARkm+ox0XgUdDMxgHJk1cd7dW2DMPh 0lM/sNCn8BWEe7/pKZJIZUKCKcrKPZXIjYKSwvwXLyfeYD1dKGKlO0mNJdQfA+CptKOZ J9LA== MIME-Version: 1.0 X-Received: by 10.112.34.43 with SMTP id w11mr24713343lbi.31.1399913265021; Mon, 12 May 2014 09:47:45 -0700 (PDT) Received: by 10.114.1.141 with HTTP; Mon, 12 May 2014 09:47:44 -0700 (PDT) In-Reply-To: <1399793667719-4681015.post@n4.nabble.com> References: <1399793667719-4681015.post@n4.nabble.com> Date: Mon, 12 May 2014 09:47:44 -0700 Message-ID: Subject: Re: How to close consumer from broker service embedded From: Christian Posta To: "users@activemq.apache.org" Content-Type: text/plain; charset=UTF-8 X-Virus-Checked: Checked by ClamAV on apache.org Not exactly clear what you're asking... Are you asking how to close a consumer to the advisory topics at a later point in the life of your application? Keep a reference to that consumer, and call consumer.close() if that's the case. On Sun, May 11, 2014 at 12:34 AM, xita-de wrote: > Dear all, > > I used to BrokerService embedded in my java application and Advisory Message > to listener consumer join, consumer left(know everything about > consumer:consumer-id, client-id, ...). But I don't know how to > close/disable/stop consumer from broker service embedded or from Advisory > Message. Please guide me the way if you know. Thank you very much :) > > BrokerService brokerService = new BrokerService(); > brokerService.addConnector("tcp://localhost:61616"); > brokerService.setUseJmx(true); > brokerService.start(); > > > System.out.println("Broker started......."); > System.out.println("tcp://localhost:61616"); > === > package com.fis.activemq.pubsub; > > import javax.jms.Connection; > import javax.jms.Message; > import javax.jms.MessageConsumer; > import javax.jms.MessageListener; > import javax.jms.Session; > import javax.jms.Topic; > > import org.apache.activemq.ActiveMQConnectionFactory; > import org.apache.activemq.command.ActiveMQMessage; > import org.apache.activemq.command.ConnectionInfo; > import org.apache.activemq.command.ConsumerInfo; > import org.apache.activemq.command.RemoveInfo; > > public class AdvisoryTest { > static MessageListener listener = new MessageListener() { > @Override > public void onMessage(Message message) { > System.out.println("message: " + message); > if (message instanceof ActiveMQMessage) { > ActiveMQMessage activeMessage = (ActiveMQMessage) message; > Object command = activeMessage.getDataStructure(); > if (command instanceof ConsumerInfo) { > ConsumerInfo consumerInfo = (ConsumerInfo)command; > > System.out.println("consumerid="+((ConsumerInfo)command).getConsumerId()); > System.out.println("A consumer subscribed to a topic or queue: " + > command); > } else if (command instanceof RemoveInfo) { > RemoveInfo removeInfo = (RemoveInfo) command; > if (removeInfo.isConsumerRemove()) { > System.out.println("ObjectId="+removeInfo.getObjectId()); > System.out.println("A consumer unsubscribed from a topic or > queue"+command); > } else { > System.out.println("RemoveInfo, a connection was closed: " + command); > } > } else if (command instanceof ConnectionInfo) { > System.out.println("ConnectionInfo, a new connection was made: " + > command); > } else { > System.out.println("Unknown command: " + command); > } > } > } > }; > > public static void main(String[] args) { > try { > // ActiveMQConnectionFactory connectionFactory = new > // ActiveMQConnectionFactory( > // "user", "password", ActiveMQConnection.DEFAULT_BROKER_URL); > ActiveMQConnectionFactory connectionFactory = new > ActiveMQConnectionFactory("tcp://localhost:61616"); > Connection connection = connectionFactory.createConnection(); > Session session = connection.createSession(false, > Session.AUTO_ACKNOWLEDGE); > connection.start(); > //Destination destinationAdvisory = > session.createTopic("ActiveMQ.Advisory..>"); > //Destination consumerTopicAdvisoryDest = > session.createTopic("ActiveMQ.Advisory.Consumer.Topic.>"); > //Destination advisoryAll = > session.createTopic("ActiveMQ.Advisory.Topic.*"); > Topic advisoryAll = session.createTopic("ActiveMQ.Advisory.Consumer.>"); > //Topic advisoryAll = session.createTopic("ActiveMQ.Advisory.>"); > > // MessageConsumer consumerAdvisory = > session.createConsumer(consumerTopicAdvisoryDest); > // consumerAdvisory.setMessageListener(listener); > // > MessageConsumer consumerAdvisoryAll = > session.createConsumer(advisoryAll); > consumerAdvisoryAll.setMessageListener(listener); > } catch (Exception ex) { > ex.printStackTrace(); > } > } > } > > > > > -- > View this message in context: http://activemq.2283324.n4.nabble.com/How-to-close-consumer-from-broker-service-embedded-tp4681015.html > Sent from the ActiveMQ - User mailing list archive at Nabble.com. -- Christian Posta http://www.christianposta.com/blog twitter: @christianposta