Author: rhs Date: Fri Mar 6 16:23:14 2009 New Revision: 750960 URL: http://svn.apache.org/viewvc?rev=750960&view=rev Log: added support for encoding buffers
Modified: qpid/trunk/qpid/python/qpid/codec010.py qpid/trunk/qpid/python/qpid/spec010.py qpid/trunk/qpid/python/tests/codec010.py Modified: qpid/trunk/qpid/python/qpid/codec010.py URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/codec010.py?rev=750960&r1=750959&r2=750960&view=diff ============================================================================== --- qpid/trunk/qpid/python/qpid/codec010.py (original) +++ qpid/trunk/qpid/python/qpid/codec010.py Fri Mar 6 16:23:14 2009 @@ -118,6 +118,8 @@ def read_vbin8(self): return self.read(self.read_uint8()) def write_vbin8(self, b): + if isinstance(b, buffer): + b = str(b) self.write_uint8(len(b)) self.write(b) @@ -140,6 +142,8 @@ def read_vbin16(self): return self.read(self.read_uint16()) def write_vbin16(self, b): + if isinstance(b, buffer): + b = str(b) self.write_uint16(len(b)) self.write(b) @@ -163,6 +167,8 @@ def read_vbin32(self): return self.read(self.read_uint32()) def write_vbin32(self, b): + if isinstance(b, buffer): + b = str(b) self.write_uint32(len(b)) self.write(b) Modified: qpid/trunk/qpid/python/qpid/spec010.py URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/spec010.py?rev=750960&r1=750959&r2=750960&view=diff ============================================================================== --- qpid/trunk/qpid/python/qpid/spec010.py (original) +++ qpid/trunk/qpid/python/qpid/spec010.py Fri Mar 6 16:23:14 2009 @@ -481,6 +481,7 @@ ENCODINGS = { unicode: direct("str16"), str: map_str, + buffer: direct("vbin32"), int: direct("int64"), long: direct("int64"), float: direct("float"), Modified: qpid/trunk/qpid/python/tests/codec010.py URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/python/tests/codec010.py?rev=750960&r1=750959&r2=750960&view=diff ============================================================================== --- qpid/trunk/qpid/python/tests/codec010.py (original) +++ qpid/trunk/qpid/python/tests/codec010.py Fri Mar 6 16:23:14 2009 @@ -48,6 +48,11 @@ def testMapBinary(self): self.check("map", {"binary": "\x7f\xb4R^\xe5\xf0:\x89\x96E1\xf6\xfe\xb9\x1b\xf5"}) + def testMapBuffer(self): + s = "\x7f\xb4R^\xe5\xf0:\x89\x96E1\xf6\xfe\xb9\x1b\xf5" + dec = self.check("map", {"buffer": buffer(s)}, False) + assert dec["buffer"] == s + def testMapInt(self): self.check("map", {"int": 3}) --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:commits-subscr...@qpid.apache.org