2010-11-23 14 views
5

RabbitMQを使用して、興味のある加入者にメッセージをトピック別にルーティングしています。各サブスクライバにはキューがあり、関心のあるトピックにキューをバインドします。ユーザーがトピックリストからアイテムを削除できるようにしたいと考えています。RabbitMQからどのようにキューバインディングを削除しますか?

私の設定では、バインドされたトピックをそのユーザーのキューから「バインド解除」する必要があります。

私はpyamqplibを使用していますが、チャネルオブジェクト経由でこれを行う方法はありません。以前にバインドされたルーティングキーをキューから削除する方法はありますか?

答えて

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); 
    } 
} 
関連する問題