summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpp/lib/common/framing/Value.cpp5
-rw-r--r--cpp/lib/common/framing/Value.h8
-rw-r--r--gentools/templ.cpp/AMQP_ClientOperations.h.tmpl5
3 files changed, 13 insertions, 5 deletions
diff --git a/cpp/lib/common/framing/Value.cpp b/cpp/lib/common/framing/Value.cpp
index d193286636..9b1f3bbc94 100644
--- a/cpp/lib/common/framing/Value.cpp
+++ b/cpp/lib/common/framing/Value.cpp
@@ -85,6 +85,11 @@ std::auto_ptr<Value> 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/cpp/lib/common/framing/Value.h b/cpp/lib/common/framing/Value.h
index 6d240c2eb9..e7ae865a70 100644
--- a/cpp/lib/common/framing/Value.h
+++ b/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
diff --git a/gentools/templ.cpp/AMQP_ClientOperations.h.tmpl b/gentools/templ.cpp/AMQP_ClientOperations.h.tmpl
index 5005f353a9..2b96e55444 100644
--- a/gentools/templ.cpp/AMQP_ClientOperations.h.tmpl
+++ b/gentools/templ.cpp/AMQP_ClientOperations.h.tmpl
@@ -26,15 +26,10 @@
%{VLIST} * ${major}-${minor}
*/
-<<<<<<< .working
-#ifndef _AMQP_ClientOperations_
-#define _AMQP_ClientOperations_
-=======
#ifndef qpid_framing_AMQP_ClientOperations__
#define qpid_framing_AMQP_ClientOperations__
#include <sstream>
->>>>>>> .merge-right.r496678
#include "ProtocolVersion.h"