Author: rhs
Date: Tue Mar 23 15:32:48 2010
New Revision: 926623
URL: http://svn.apache.org/viewvc?rev=926623&view=rev
Log:
provide default codec for unknown content types
Modified:
qpid/trunk/qpid/python/qpid/messaging/message.py
qpid/trunk/qpid/python/qpid/tests/messaging/message.py
Modified: qpid/trunk/qpid/python/qpid/messaging/message.py
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/messaging/message.py?rev=926623&r1=926622&r2=926623&view=diff
==============================================================================
--- qpid/trunk/qpid/python/qpid/messaging/message.py (original)
+++ qpid/trunk/qpid/python/qpid/messaging/message.py Tue Mar 23 15:32:48 2010
@@ -47,20 +47,22 @@ TYPE_MAPPINGS={
None.__class__: None
}
+DEFAULT_CODEC = (lambda x: x, lambda x: x)
+
TYPE_CODEC={
"amqp/map": codec("map"),
"amqp/list": codec("list"),
"text/plain; charset=utf8": (lambda x: x.encode("utf8"), lambda x:
x.decode("utf8")),
"text/plain": (lambda x: x.encode("utf8"), lambda x: x.decode("utf8")),
- "": (lambda x: x, lambda x: x),
- None: (lambda x: x, lambda x: x)
+ "": DEFAULT_CODEC,
+ None: DEFAULT_CODEC
}
def get_type(content):
return TYPE_MAPPINGS[content.__class__]
def get_codec(content_type):
- return TYPE_CODEC[content_type]
+ return TYPE_CODEC.get(content_type, DEFAULT_CODEC)
UNSPECIFIED = object()
Modified: qpid/trunk/qpid/python/qpid/tests/messaging/message.py
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/tests/messaging/message.py?rev=926623&r1=926622&r2=926623&view=diff
==============================================================================
--- qpid/trunk/qpid/python/qpid/tests/messaging/message.py (original)
+++ qpid/trunk/qpid/python/qpid/tests/messaging/message.py Tue Mar 23 15:32:48
2010
@@ -107,3 +107,7 @@ class MessageEchoTests(Base):
msg.properties = MessageEchoTests.TEST_MAP
msg.reply_to = "reply-address"
self.check(msg)
+
+ def testContentTypeUnknown(self):
+ msg = Message(content_type = "this-content-type-does-not-exist")
+ self.check(msg)
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]