[ 
https://issues.apache.org/jira/browse/QPID-2335?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12800364#action_12800364
 ] 

Gordon Sim commented on QPID-2335:
----------------------------------

I don't think it is gratuitous to have a subclass add an argument to its 
constructor to initialise a member it defines. To me that seems entirely 
sensible.

The Exchange::Binding instance is not stashed in a global location - the 
addObject() method only passes in the mgmtBinding pointer - but it will be 
accessed by multiple threads (the exchanges are required to be threadsafe). The 
only mutable members of Exchange::Binding are the mgmtBinding and the queue 
pointer. The queue pointer can be marked const leaving just the mgmtBinding 
pointer which can then be made private. I think that goes a reasonable way to 
preventing incorrect usage. Would that alleviate your concerns?

> Arguments for a binding to an XML exchange are not visible through management
> -----------------------------------------------------------------------------
>
>                 Key: QPID-2335
>                 URL: https://issues.apache.org/jira/browse/QPID-2335
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.6
>            Reporter: Ted Ross
>            Assignee: Ted Ross
>            Priority: Minor
>
> If you create a binding to the XML exchange (using 
> python/examples/xml-exchange/declare_queues.py for example), then look at the 
> binding using qpid-tool, the arguments field is {} (an empty map).
> Arguments for headers exchanges can be viewed correctly, this only affects 
> the xml exchange.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to