From a6f044f40d70b73c320cc909169e3518909365e2 Mon Sep 17 00:00:00 2001 From: Alan Conway Date: Mon, 7 Apr 2014 21:22:55 +0000 Subject: QPID-5560: HA tests do not use AMQP 1.0 The HA tests were using only AMQP 0-10. Modified the tests to use AMQP 1.0 if available (still use 0-10 if 1.0 is not available) Fixed bugs uncovered both in the tests and in the AMQP 1.0 implementation. Summary of changes: - brokertest.py: configurable support for of swig vs. native and amqp0-10 vs. 1.0 - default to swig+amqp1.0 if swig is available, native+amqp0-10 otherwise - qpidtoollibs/broker.py: enable use of swig client with BrokerAgent - Swig python client: - support for passing client_properties/properties. - expose AddressHelper pn_data read/write as PnData helper class - set sender/receiver capacity on creation - limited disposition support - rejected messages. - support for additional timeout parameters - expose messaging::Logger, allow log configuration to be set from python. - ha_tests.py: - bind, delete policies not supported by AMQP 1.0, switched to using BrokerAgent QMF. - pass protocol:amqp1.0 connection-option to c++ test clients (qpid-send, qpid-receive) - TX tests forsce use of 0-10 protocol (but still with Swig client if enabled.) - Broker fixes: - Queue::Settings::isTemporary was set in the 0-10 SessionAdapter, moved to Broker::createQueue. - broker::amqp::Session was always setting an exclusive owner in createQueue git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1585588 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/include/qpid/messaging/Logger.h | 2 +- qpid/cpp/include/qpid/qpid.i | 2 ++ qpid/cpp/include/qpid/swig_python_typemaps.i | 7 +++++++ 3 files changed, 10 insertions(+), 1 deletion(-) (limited to 'qpid/cpp/include') diff --git a/qpid/cpp/include/qpid/messaging/Logger.h b/qpid/cpp/include/qpid/messaging/Logger.h index 3b774dc8a9..39518e01d4 100644 --- a/qpid/cpp/include/qpid/messaging/Logger.h +++ b/qpid/cpp/include/qpid/messaging/Logger.h @@ -103,7 +103,7 @@ public: * --log-time ("on"|"off|"0"|"1") * --log-level ("on"|"off|"0"|"1") * --log-source ("on"|"off|"0"|"1") - * --log-thread ("on"|"off|"0"|"1") + * --log-thread ("on"|"off|"0"|"1") * --log-function ("on"|"off|"0"|"1") * --log-hires-timestamp ("on"|"off|"0"|"1") * diff --git a/qpid/cpp/include/qpid/qpid.i b/qpid/cpp/include/qpid/qpid.i index 28a9064ebb..70f4ce8105 100644 --- a/qpid/cpp/include/qpid/qpid.i +++ b/qpid/cpp/include/qpid/qpid.i @@ -53,6 +53,7 @@ struct mystr #include #include #include +#include // // Wrapper functions for map-decode and list-decode. This allows us to avoid @@ -84,6 +85,7 @@ qpid::types::Variant::List& decodeList(const qpid::messaging::Message& msg) { %include %include %include +%include qpid::types::Variant::Map& decodeMap(const qpid::messaging::Message&); qpid::types::Variant::List& decodeList(const qpid::messaging::Message&); diff --git a/qpid/cpp/include/qpid/swig_python_typemaps.i b/qpid/cpp/include/qpid/swig_python_typemaps.i index 9d44a1e1ef..e9a84ffa8e 100644 --- a/qpid/cpp/include/qpid/swig_python_typemaps.i +++ b/qpid/cpp/include/qpid/swig_python_typemaps.i @@ -452,3 +452,10 @@ typedef int Py_ssize_t; $1 = PyInt_Check($input) ? 1 : 0; } + +/** + * argc,argv as python list + */ + +%include +%apply (int ARGC, char **ARGV) { (int argc, const char *argv[]) } -- cgit v1.2.1