Description
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).