-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/11840/
-----------------------------------------------------------

(Updated June 13, 2013, 9:22 a.m.)


Review request for qpid, Ted Ross and Fraser Adams.


Changes
-------

Added a little more detail to the description, including a list of remaining 
work.


Description (updated)
-------

The approach here is to allow a topic node to be defined at the broker level 
(though only seen by AMQP 1.0 connections) that encompasses a given exchange 
and queue configuration information to be used with all subscription queues 
created for outgoing links from that node. You can have different topics mapped 
(with different names) to the same exchange, allowing different sets of policy 
to be applied.

Topics are created and deleted through the create/delete methods on the broker. 
The type is 'topic', the supported properties are 'exchange' and then whatever 
queue arguments are desired e.g. qpid.max_count and qpid.policy_type. The topic 
is then accessible to senders or receivers over 1.0 via its name as any other 
node. In effect the node actually used will be the exchange associated with the 
topic. However for receivers, the subscription queue created will take the 
settings specified for the topic (certain properties such as durability are 
overridden by each link).

TODO:

* add topic class to management schema
* persist topic definitions
* (optional) update qpid-config to support adding and deleting topics


This addresses bug QPID-4919.
    https://issues.apache.org/jira/browse/QPID-4919


Diffs
-----

  /trunk/qpid/cpp/src/Makefile.am 1492311 
  /trunk/qpid/cpp/src/amqp.cmake 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/BrokerContext.h PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/amqp/BrokerContext.cpp PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Connection.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Connection.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Domain.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Domain.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnect.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnect.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnects.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnects.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/ProtocolPlugin.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Sasl.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Sasl.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Session.h 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Session.cpp 1492311 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Topic.h PRE-CREATION 
  /trunk/qpid/cpp/src/qpid/broker/amqp/Topic.cpp PRE-CREATION 

Diff: https://reviews.apache.org/r/11840/diff/


Testing
-------

make check passes, basic test of new behaviour works as expected


Thanks,

Gordon Sim

Reply via email to