From 9d475223b8715e5522289108a9951e2f7c29ac29 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Thu, 18 Jan 2007 14:14:54 +0000 Subject: Added the non-standard 'binary' type to the field table implementation to support the java client. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@497439 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/lib/common/framing/Value.cpp | 5 +++++ qpid/cpp/lib/common/framing/Value.h | 8 ++++++++ 2 files changed, 13 insertions(+) (limited to 'qpid/cpp') diff --git a/qpid/cpp/lib/common/framing/Value.cpp b/qpid/cpp/lib/common/framing/Value.cpp index d193286636..9b1f3bbc94 100644 --- a/qpid/cpp/lib/common/framing/Value.cpp +++ b/qpid/cpp/lib/common/framing/Value.cpp @@ -85,6 +85,11 @@ std::auto_ptr Value::decode_value(Buffer& buffer) case 'F': value.reset(new FieldTableValue()); break; + + //non-standard types, introduced in java client for JMS compliance + case 'x': + value.reset(new BinaryValue()); + break; default: std::stringstream out; out << "Unknown field table value type: " << type; diff --git a/qpid/cpp/lib/common/framing/Value.h b/qpid/cpp/lib/common/framing/Value.h index 6d240c2eb9..e7ae865a70 100644 --- a/qpid/cpp/lib/common/framing/Value.h +++ b/qpid/cpp/lib/common/framing/Value.h @@ -158,6 +158,14 @@ class EmptyValue : public Value { virtual void print(std::ostream& out) const; }; +//non-standard types, introduced in java client for JMS compliance +class BinaryValue : public StringValue { + public: + BinaryValue(const std::string& v) : StringValue(v) {} + BinaryValue() {} + virtual char getType() const { return 'x'; } +}; + }} // qpid::framing #endif -- cgit v1.2.1