[EMAIL PROTECTED] wrote:
Hi Carl,
Thanks for your email.
This is already done over the weekend and left you an offline on IRC. :)
But I am not receiving the Method Response (AM1m) of my Method Request
(AM1M) from the broker. ("this is the main problem")
Are you getting the content updates now with with object id's?
2008-jul-22 19:58:26 trace SENT [127.0.0.1:47191]: Frame[Ebe; channel=0;
content (142 bytes) AM1i\x00\x00\x00\x00\x04qpid\x08ex...]
I have three questions:
1. For method names in the class (e.g. "purge" in the "queue" class)
dont have any argument name so will we just send the method name
"purge" in this case ..in the the Method Request (AM1M).. no argument
yes
2. In the setter methods while translating the attribute (property and
stastic attributes) into MBeans, you mentined that in setMethod() e.g.
setName() for RW (Read/Write).. we will create the AM1M method request
& send to the broker for any change...
yes -- problem is the name mapping is not on the wiki -- looking in code
But the format of this request is
+-----+-----+-----+-----+-----------------------+
| 'A' | 'M' | '1' | 'M' | seq |
+-----+-----+-----+-----+-----------------------+
| objectId (uint64) |
+-----------------------------------------------+
| methodName (str8) |
+-----------------------------------------------+------------------------+
| input and bidirectional argument values (in schema order) |
+------------------------------------------------------------------------+
What will i pass in the methodName (str8)... for example, we can pass
"purge" in case of "queue" package? What can i pass for setter methods ?
Ted,
what do you pass for method name to set to set a property?
I tried
qpid: call 102 setmgmtPubInterval 2
Method 'setmgmtPubInterval' not valid for class 'qpid.broker'
qpid: call 102 mgmtPubInterval 2
Method 'mgmtPubInterval' not valid for class 'qpid.broker'
qpid: call 102 set_mgmtPubInterval 2
Method 'set_mgmtPubInterval' not valid for class 'qpid.broker'
qpid: call 102 Set_mgmtPubInterval 2
Method 'Set_mgmtPubInterval' not valid for class 'qpid.broker'
qpid: call 102 SetmgmtPubInterval 2
Method 'SetmgmtPubInterval' not valid for class 'qpid.broker'
will need to get answer from ted tomorrow.
I take it you worked out that get{propertyName}() will just return the
last value cached from the update in the mbean
3. Moreover, I dont know how to send the arguments in the Method
Request... so please give me an example (if possible)... it will
really help me.. you can take "echo" method from the "broker" class by
this way I can learn how we pass the arguments in the Method
Request... :)
Method Request
Method request messages have the following structure. The sequence
number is opaque to the management agent. It is returned unchanged in
the method reply so the calling client can correctly associate the reply
to the request. The objectId is the unique ID of the object on which the
method is to be executed.
+-----+-----+-----+-----+-----------------------+
| 'A' | 'M' | '1' | 'M' | seq |
+-----+-----+-----+-----+-----------------------+
| objectId (uint64) |
+-----------------------------------------------+
| methodName (str8) |
+-----------------------------------------------+------------------------+
| input and bidirectional argument values (in schema order)
|
+------------------------------------------------------------------------+
Method Response
Method reply messages have the following structure. The sequence number
is identical to that supplied in the method request. The status code
(and text) indicate whether or not the method was successful and if not,
what the error was. Output and bidirectional arguments are only included
if the status code was 0 (STATUS_OK).
+-----+-----+-----+-----+-----------------------+
| 'A' | 'M' | '1' | 'm' | seq |
+-----+-----+-----+-----+-----------------------+
| status code |
+-----------------------+----------------------------------+
| status text (str8) |
+-----------------------+----------------------------------+-------------+
| output and bidirectional argument values (in schema order)
|
+------------------------------------------------------------------------+
*status code* values are:
*value* *description*
0 STATUS_OK - successful completion
1 STATUS_UNKNOWN_OBJECT - objectId not found in the agent
2 STATUS_UNKNOWN_METHOD - method is not known by the object type
3 STATUS_NOT_IMPLEMENTED - method is not currently implemented