summaryrefslogtreecommitdiff
path: root/python/qpid
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2009-06-11 15:54:37 +0000
committerTed Ross <tross@apache.org>2009-06-11 15:54:37 +0000
commit52be8c6219f98781d83711b32d4c5971b1fa6d1c (patch)
tree812f608b9472a76d757e92be8dc3a184a2e2ae13 /python/qpid
parent2a61047873520b644cbc368ebd59fb2d5a0c217d (diff)
downloadqpid-python-52be8c6219f98781d83711b32d4c5971b1fa6d1c.tar.gz
QPID-1786 - Committed qmf patches from Bryan Kearney
Additionally updated existing qmf and Qman to be compatible. The magic number for qmf messages has been incremented. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@783818 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'python/qpid')
-rw-r--r--python/qpid/management.py9
-rw-r--r--python/qpid/managementdata.py6
2 files changed, 13 insertions, 2 deletions
diff --git a/python/qpid/management.py b/python/qpid/management.py
index 546e68ae8e..b97709d367 100644
--- a/python/qpid/management.py
+++ b/python/qpid/management.py
@@ -401,7 +401,7 @@ class managementClient:
""" Compose the header of a management message. """
codec.write_uint8 (ord ('A'))
codec.write_uint8 (ord ('M'))
- codec.write_uint8 (ord ('2'))
+ codec.write_uint8 (ord ('3'))
codec.write_uint8 (opcode)
codec.write_uint32 (seq)
@@ -415,7 +415,7 @@ class managementClient:
if octet != 'M':
return None
octet = chr (codec.read_uint8 ())
- if octet != '2':
+ if octet != '3':
return None
opcode = chr (codec.read_uint8 ())
seq = codec.read_uint32 ()
@@ -672,9 +672,14 @@ class managementClient:
packageName = codec.read_str8 ()
className = codec.read_str8 ()
hash = codec.read_bin128 ()
+ hasSupertype = codec.read_uint8()
configCount = codec.read_uint16 ()
instCount = codec.read_uint16 ()
methodCount = codec.read_uint16 ()
+ if hasSupertype != 0:
+ supertypePackage = codec.read_str8()
+ supertypeClass = codec.read_str8()
+ supertypeHash = codec.read_bin128()
if packageName not in self.packages:
return
diff --git a/python/qpid/managementdata.py b/python/qpid/managementdata.py
index e1fd8d54eb..84eb9c3ff8 100644
--- a/python/qpid/managementdata.py
+++ b/python/qpid/managementdata.py
@@ -360,6 +360,12 @@ class ManagementData:
return "int32"
elif typecode == 19:
return "int64"
+ elif typecode == 20:
+ return "object"
+ elif typecode == 21:
+ return "list"
+ elif typecode == 22:
+ return "array"
else:
raise ValueError ("Invalid type code: %d" % typecode)