Qmf broker proxy method create() does not handle keyword arguments, only
regular parameters
-------------------------------------------------------------------------------------------
Key: QPID-3348
URL: https://issues.apache.org/jira/browse/QPID-3348
Project: Qpid
Issue Type: Bug
Reporter: Kim van der Riet
Priority: Minor
The Qmf management methods defined in the management-schema.xml file are
implemented through the console Object class __getattr__() method. This calls
Object.invoke(), which in turn calls Object._sendMethodRequest().
However, the implementation of _sendMethodRequest() accounts only for regular
arguments in the args parameter, and ignores the kwargs parameter. Hence, the
call to the create() call:
<method name="create" desc="Create an object of the specified type">
<arg name="type" dir="I" type="sstr" desc="The type of object to create"/>
<arg name="name" dir="I" type="sstr" desc="The name of the object to
create"/>
<arg name="properties" dir="I" type="map" desc="Type specific object
properties"/>
<arg name="strict" dir="I" type="bool" desc="If specified, treat
unrecognised object properties as an error"/>
</method>
as follows:
broker_proxy.create("exchange", name, props, True)
will work, but
broker_proxy.create(type="exchange", name=name, properties=props, strict=True)
will fail (Exception: Incorrect number of arguments: expected 4, got 0).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]