2010-11-23 14 views
5

Konuyla ilgilenen abonelere iletileri yönlendirmek için RabbitMQ kullanıyorum. Her abonenin bir sırası vardır ve kuyruğu ilgilendikleri konulara bağlarım. Kullanıcının bir öğeyi konu listesinden kaldırmasına izin vermek istiyorum.RabbitMQ'dan bir sıra bağını nasıl kaldırırsınız?

Kurduğumda, bu, ilgili konunun ilgili kullanıcının kuyruğundan "ayrılması" gerekir.

pyamqplib kullanıyorum ve kanal nesnesi aracılığıyla bunu yapmanın bir yolunu görmüyorum. Önceden ilişkili yönlendirme anahtarlarını bir sıradan kaldırmanın bir yolu var mı?

cevap

3
public void unsubscribe(String queuename, String topic) throws IOException 
{ 
    ConnectionFactory factory = new ConnectionFactory(); 
    factory.setHost(MQ_HOST); 
    factory.setPort(MQ_PORT); 

    Connection connection = factory.newConnection(); 
    Channel channel = connection.createChannel(); 
    try 
    { 
     channel.exchangeDeclarePassive("Channel name"); 
     channel.queueUnbind(queuename, "Channel name", topic); 
    } 
    finally 
    { 
     handleClose(connection, channel); 
    } 
}