diff options
Diffstat (limited to 'cpp/examples/messaging')
20 files changed, 0 insertions, 3864 deletions
diff --git a/cpp/examples/messaging/CMakeLists.txt b/cpp/examples/messaging/CMakeLists.txt deleted file mode 100644 index 03ed2daaad..0000000000 --- a/cpp/examples/messaging/CMakeLists.txt +++ /dev/null @@ -1,63 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# drain and spout have explicit Boost.program_options usage in them, so be -# sure that lib is linked in. - -macro(add_messaging_example example) - add_executable(${example} ${example}.cpp OptionParser.cpp) - set_target_properties(${example} PROPERTIES OUTPUT_NAME ${example}) - target_link_libraries(${example} qpidmessaging ${_boost_libs_needed}) - # For installs, don't install the built example; that would be pointless. - # Install the things a user needs to build the example on-site. - install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/${example}.cpp ${CMAKE_CURRENT_SOURCE_DIR}/OptionParser.h ${CMAKE_CURRENT_SOURCE_DIR}/OptionParser.cpp - DESTINATION ${QPID_INSTALL_EXAMPLESDIR}/messaging - COMPONENT ${QPID_COMPONENT_EXAMPLES}) - if (MSVC) - install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/messaging_${example}.vcproj - DESTINATION ${QPID_INSTALL_EXAMPLESDIR}/messaging - COMPONENT ${QPID_COMPONENT_EXAMPLES}) - endif (MSVC) - -endmacro(add_messaging_example) - -add_messaging_example(drain) -add_messaging_example(spout) - -add_messaging_example(map_receiver) -add_messaging_example(map_sender) - -add_messaging_example(client) -add_messaging_example(server) - -# These don't need Boost or OptionParser -add_executable(hello_world hello_world.cpp) -set_target_properties(hello_world PROPERTIES OUTPUT_NAME hello_world) -target_link_libraries(hello_world qpidmessaging) -install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/hello_world.cpp - DESTINATION ${QPID_INSTALL_EXAMPLESDIR}/messaging - COMPONENT ${QPID_COMPONENT_EXAMPLES}) - -add_executable(hello_xml hello_xml.cpp) -set_target_properties(hello_xml PROPERTIES OUTPUT_NAME hello_xml) -target_link_libraries(hello_xml qpidmessaging) -install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/hello_xml.cpp - DESTINATION ${QPID_INSTALL_EXAMPLESDIR}/messaging - COMPONENT ${QPID_COMPONENT_EXAMPLES}) - diff --git a/cpp/examples/messaging/Makefile.am b/cpp/examples/messaging/Makefile.am deleted file mode 100644 index 298d65e6f1..0000000000 --- a/cpp/examples/messaging/Makefile.am +++ /dev/null @@ -1,74 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -examplesdir=$(pkgdatadir)/examples/messaging - -# Settings to build the examples in automake -AM_CXXFLAGS = $(WARNING_CFLAGS) -INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include -CLIENT_LIB=$(top_builddir)/src/libqpidmessaging.la -CLIENTFLAGS=-lqpidmessaging - -noinst_PROGRAMS=drain spout client server map_sender map_receiver hello_world hello_xml - -hello_world_SOURCES=hello_world.cpp -hello_world_LDADD=$(CLIENT_LIB) - -hello_xml_SOURCES=hello_xml.cpp -hello_xml_LDADD=$(CLIENT_LIB) - -drain_SOURCES=drain.cpp OptionParser.h OptionParser.cpp -drain_LDADD=$(CLIENT_LIB) - -spout_SOURCES=spout.cpp OptionParser.h OptionParser.cpp -spout_LDADD=$(CLIENT_LIB) - -client_SOURCES=client.cpp -client_LDADD=$(CLIENT_LIB) - -server_SOURCES=server.cpp -server_LDADD=$(CLIENT_LIB) - -map_sender_SOURCES=map_sender.cpp -map_sender_LDADD=$(CLIENT_LIB) - -map_receiver_SOURCES=map_receiver.cpp -map_receiver_LDADD=$(CLIENT_LIB) - -examples_DATA= \ - hello_world.cpp \ - hello_xml.cpp \ - drain.cpp \ - spout.cpp \ - OptionParser.cpp \ - OptionParser.h \ - client.cpp \ - server.cpp \ - map_sender.cpp \ - map_receiver.cpp \ - extra_dist/Makefile - -EXTRA_DIST= \ - $(examples_DATA) \ - CMakeLists.txt \ - messaging_client.vcproj \ - messaging_drain.vcproj \ - messaging_map_receiver.vcproj \ - messaging_map_sender.vcproj \ - messaging_server.vcproj \ - messaging_spout.vcproj diff --git a/cpp/examples/messaging/OptionParser.cpp b/cpp/examples/messaging/OptionParser.cpp deleted file mode 100644 index 661d0a988a..0000000000 --- a/cpp/examples/messaging/OptionParser.cpp +++ /dev/null @@ -1,257 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ -#include "OptionParser.h" -#include <qpid/types/Exception.h> -#include <algorithm> -#include <iostream> -#include <iomanip> -#include <sstream> -#include <cstdlib> - -class Option -{ - public: - Option(const std::string& name, const std::string& description); - virtual ~Option() {} - virtual void setValue(const std::string&) = 0; - virtual bool isValueExpected() = 0; - bool match(const std::string&); - std::ostream& print(std::ostream& out); - private: - std::string longName; - std::string shortName; - std::string description; - std::ostream& printNames(std::ostream& out); - friend class OptionParser; -}; - -class StringOption : public Option -{ - public: - StringOption(const std::string& name, const std::string& description, std::string& v) : Option(name, description), value(v) {} - void setValue(const std::string& v) { value = v; } - bool isValueExpected() { return true; } - private: - std::string& value; -}; - -class IntegerOption : public Option -{ - public: - IntegerOption(const std::string& name, const std::string& description, int& v) : Option(name, description), value(v) {} - void setValue(const std::string& v) { value = atoi(v.c_str()); } - bool isValueExpected() { return true; } - private: - int& value; -}; - -class BooleanOption : public Option -{ - public: - BooleanOption(const std::string& name, const std::string& description, bool& v) : Option(name, description), value(v) {} - void setValue(const std::string&) { value = true; } - bool isValueExpected() { return false; } - private: - bool& value; -}; - -class MultiStringOption : public Option -{ - public: - MultiStringOption(const std::string& name, const std::string& description, std::vector<std::string>& v) : Option(name, description), value(v) {} - void setValue(const std::string& v) { value.push_back(v); } - bool isValueExpected() { return true; } - private: - std::vector<std::string>& value; -}; - -class OptionMatch -{ - public: - OptionMatch(const std::string& argument); - bool operator()(Option* option); - bool isOption(); - private: - std::string name; -}; - -class OptionsError : public qpid::types::Exception -{ - public: - OptionsError(const std::string& message) : qpid::types::Exception(message) {} -}; - -Option::Option(const std::string& name, const std::string& desc) : description(desc) -{ - std::string::size_type i = name.find(","); - if (i != std::string::npos) { - longName = name.substr(0, i); - if (i + 1 < name.size()) - shortName = name.substr(i+1); - } else { - longName = name; - } -} - -bool Option::match(const std::string& name) -{ - return name == longName || name == shortName; -} - -std::ostream& Option::printNames(std::ostream& out) -{ - if (shortName.size()) { - out << "-" << shortName; - if (isValueExpected()) out << " VALUE"; - out << ", --" << longName; - if (isValueExpected()) out << " VALUE"; - } else { - out << "--" << longName; - if (isValueExpected()) out << " VALUE"; - } - return out; -} - -std::ostream& Option::print(std::ostream& out) -{ - std::stringstream names; - printNames(names); - out << std::setw(30) << std::left << names.str() << description << std::endl; - return out; -} - -std::vector<std::string>& OptionParser::getArguments() { return arguments; } - -void OptionParser::add(Option* option) -{ - options.push_back(option); -} - -void OptionParser::add(const std::string& name, std::string& value, const std::string& description) -{ - add(new StringOption(name, description, value)); -} -void OptionParser::add(const std::string& name, int& value, const std::string& description) -{ - add(new IntegerOption(name, description, value)); -} -void OptionParser::add(const std::string& name, bool& value, const std::string& description) -{ - add(new BooleanOption(name, description, value)); -} -void OptionParser::add(const std::string& name, std::vector<std::string>& value, const std::string& description) -{ - add(new MultiStringOption(name, description, value)); -} - -OptionMatch::OptionMatch(const std::string& argument) -{ - if (argument.find("--") == 0) { - name = argument.substr(2); - } else if (argument.find("-") == 0) { - name = argument.substr(1); - } -} - -bool OptionMatch::operator()(Option* option) -{ - return option->match(name); -} - -bool OptionMatch::isOption() -{ - return name.size() > 0; -} - -OptionParser::OptionParser(const std::string& s, const std::string& d) : summary(s), description(d), help(false) -{ - add("help,h", help, "show this message"); -} - -Option* OptionParser::getOption(const std::string& argument) -{ - OptionMatch match(argument); - if (match.isOption()) { - Options::iterator i = std::find_if(options.begin(), options.end(), match); - if (i == options.end()) { - std::stringstream error; - error << "Unrecognised option: " << argument; - throw OptionsError(error.str()); - } else { - return *i; - } - } else { - return 0; - } -} - -void OptionParser::error(const std::string& message) -{ - std::cout << summary << std::endl << std::endl; - std::cerr << "Error: " << message << "; try --help for more information" << std::endl; -} - -bool OptionParser::parse(int argc, char** argv) -{ - try { - for (int i = 1; i < argc; ++i) { - std::string argument = argv[i]; - Option* o = getOption(argument); - if (o) { - if (o->isValueExpected()) { - if (i + 1 < argc) { - o->setValue(argv[++i]); - } else { - std::stringstream error; - error << "Value expected for option " << o->longName; - throw OptionsError(error.str()); - } - } else { - o->setValue(""); - } - } else { - arguments.push_back(argument); - } - } - if (help) { - std::cout << summary << std::endl << std::endl; - std::cout << description << std::endl << std::endl; - std::cout << "Options: " << std::endl; - for (Options::iterator i = options.begin(); i != options.end(); ++i) { - (*i)->print(std::cout); - } - return false; - } else { - return true; - } - } catch (const std::exception& e) { - error(e.what()); - return false; - } -} - - -OptionParser::~OptionParser() -{ - for (Options::iterator i = options.begin(); i != options.end(); ++i) { - delete *i; - } -} diff --git a/cpp/examples/messaging/OptionParser.h b/cpp/examples/messaging/OptionParser.h deleted file mode 100644 index 4cda53f92a..0000000000 --- a/cpp/examples/messaging/OptionParser.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef OPTIONPARSER_H -#define OPTIONPARSER_H - -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <map> -#include <string> -#include <vector> - -class Option; - -class OptionParser -{ - public: - OptionParser(const std::string& usage, const std::string& description); - ~OptionParser(); - void add(const std::string& name, std::string& value, const std::string& description = std::string()); - void add(const std::string& name, int& value, const std::string& description = std::string()); - void add(const std::string& name, bool& value, const std::string& description = std::string()); - void add(const std::string& name, std::vector<std::string>& value, const std::string& description = std::string()); - bool parse(int argc, char** argv); - void error(const std::string& message); - std::vector<std::string>& getArguments(); - private: - typedef std::vector<Option*> Options; - - const std::string summary; - const std::string description; - bool help; - Options options; - std::vector<std::string> arguments; - - void add(Option*); - Option* getOption(const std::string& argument); -}; - -#endif /*!OPTIONPARSER_H*/ diff --git a/cpp/examples/messaging/client.cpp b/cpp/examples/messaging/client.cpp deleted file mode 100644 index f0ecd96206..0000000000 --- a/cpp/examples/messaging/client.cpp +++ /dev/null @@ -1,79 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Address.h> -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> - -#include <cstdlib> -#include <iostream> - -#include <sstream> - -using namespace qpid::messaging; - -using std::stringstream; -using std::string; - -int main(int argc, char** argv) { - const char* url = argc>1 ? argv[1] : "amqp:tcp:127.0.0.1:5672"; - std::string connectionOptions = argc > 2 ? argv[2] : ""; - - Connection connection(url, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - - Sender sender = session.createSender("service_queue"); - - //create temp queue & receiver... - Address responseQueue("#response-queue; {create:always, delete:always}"); - Receiver receiver = session.createReceiver(responseQueue); - - // Now send some messages ... - string s[] = { - "Twas brillig, and the slithy toves", - "Did gire and gymble in the wabe.", - "All mimsy were the borogroves,", - "And the mome raths outgrabe." - }; - - Message request; - request.setReplyTo(responseQueue); - for (int i=0; i<4; i++) { - request.setContent(s[i]); - sender.send(request); - Message response = receiver.fetch(); - std::cout << request.getContent() << " -> " << response.getContent() << std::endl; - } - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - return 1; -} - - diff --git a/cpp/examples/messaging/drain.cpp b/cpp/examples/messaging/drain.cpp deleted file mode 100644 index 7700244fa8..0000000000 --- a/cpp/examples/messaging/drain.cpp +++ /dev/null @@ -1,118 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Session.h> - -#include <iostream> - -#include "OptionParser.h" - -using namespace qpid::messaging; -using namespace qpid::types; - -struct Options : OptionParser -{ - std::string url; - std::string address; - std::string connectionOptions; - int timeout; - bool forever; - int count; - - Options() - : OptionParser("Usage: drain [OPTIONS] ADDRESS", "Drains messages from the specified address"), - url("127.0.0.1"), - timeout(0), - forever(false), - count(1) - { - add("broker,b", url, "url of broker to connect to"); - add("timeout,t", timeout, "timeout in seconds to wait before exiting"); - add("forever,f", forever, "ignore timeout and wait forever"); - add("connection-options", connectionOptions, "connection options string in the form {name1:value1, name2:value2}"); - add("count,c", count, "number of messages to read before exiting"); - } - - Duration getTimeout() - { - if (forever) return Duration::FOREVER; - else return timeout*Duration::SECOND; - } - - int getCount() - { - return count; - } - - bool checkAddress() - { - if (getArguments().empty()) { - error("Address is required"); - return false; - } else { - address = getArguments()[0]; - return true; - } - } -}; - -int main(int argc, char** argv) -{ - Options options; - if (options.parse(argc, argv) && options.checkAddress()) { - Connection connection(options.url, options.connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - Receiver receiver = session.createReceiver(options.address); - Duration timeout = options.getTimeout(); - int count = options.getCount(); - Message message; - int i = 0; - - while (receiver.fetch(message, timeout)) { - std::cout << "Message(properties=" << message.getProperties() << ", content='" ; - if (message.getContentType() == "amqp/map") { - Variant::Map map; - decode(message, map); - std::cout << map; - } else { - std::cout << message.getContent(); - } - std::cout << "')" << std::endl; - session.acknowledge(); - if (count && (++i == count)) - break; - } - receiver.close(); - session.close(); - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - } - return 1; -} diff --git a/cpp/examples/messaging/extra_dist/Makefile b/cpp/examples/messaging/extra_dist/Makefile deleted file mode 100644 index 8dd7f658f7..0000000000 --- a/cpp/examples/messaging/extra_dist/Makefile +++ /dev/null @@ -1,30 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# -CXX=g++ -CXXFLAGS=-g -O2 -LDFLAGS=-lqpidmessaging - -all: drain spout client server map_sender map_receiver hello_world - -drain: drain.o OptionParser.o - -spout: spout.o OptionParser.o - -clean: - rm -f drain spout client server map_sender map_receiver hello_world *.o diff --git a/cpp/examples/messaging/hello_world.cpp b/cpp/examples/messaging/hello_world.cpp deleted file mode 100644 index 86342b3c47..0000000000 --- a/cpp/examples/messaging/hello_world.cpp +++ /dev/null @@ -1,58 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> - -#include <iostream> - -using namespace qpid::messaging; - -int main(int argc, char** argv) { - std::string broker = argc > 1 ? argv[1] : "localhost:5672"; - std::string address = argc > 2 ? argv[2] : "amq.topic"; - std::string connectionOptions = argc > 3 ? argv[3] : ""; - - Connection connection(broker, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - - Receiver receiver = session.createReceiver(address); - Sender sender = session.createSender(address); - - sender.send(Message("Hello world!")); - - Message message = receiver.fetch(Duration::SECOND * 1); - std::cout << message.getContent() << std::endl; - session.acknowledge(); - - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cerr << error.what() << std::endl; - connection.close(); - return 1; - } -} diff --git a/cpp/examples/messaging/hello_xml.cpp b/cpp/examples/messaging/hello_xml.cpp deleted file mode 100644 index 00e1b6c8e1..0000000000 --- a/cpp/examples/messaging/hello_xml.cpp +++ /dev/null @@ -1,87 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> - -#include <iostream> -#include <sstream> -using std::stringstream; - -using namespace qpid::messaging; - -int main(int argc, char** argv) { - std::string broker = argc > 1 ? argv[1] : "localhost:5672"; - std::string connectionOptions = argc > 2 ? argv[2] : ""; - - std::string query = - "let $w := ./weather " - "return $w/station = 'Raleigh-Durham International Airport (KRDU)' " - " and $w/temperature_f > 50" - " and $w/temperature_f - $w/dewpoint > 5" - " and $w/wind_speed_mph > 7" - " and $w/wind_speed_mph < 20"; - - stringstream address; - - address << "xml-exchange; {" - " create: always, " // This line and the next are not in docs - " node: { type: topic, x-declare: { type: xml } }, " // Added so it works "out of the box" - " link: { " - " x-bindings: [{ exchange: xml-exchange, key: weather, arguments: { xquery:\"" - << query - << "\"} }] " - " } " - "}"; - - Connection connection(broker, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - - Receiver receiver = session.createReceiver(address.str()); - - Message message; - message.setContent( - "<weather>" - "<station>Raleigh-Durham International Airport (KRDU)</station>" - "<wind_speed_mph>16</wind_speed_mph>" - "<temperature_f>70</temperature_f>" - "<dewpoint>35</dewpoint>" - "</weather>"); - Sender sender = session.createSender("xml-exchange/weather"); - sender.send(message); - - Message response = receiver.fetch(); - - std::cout << response.getContent() << std::endl; - - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cerr << error.what() << std::endl; - connection.close(); - return 1; - } -} diff --git a/cpp/examples/messaging/map_receiver.cpp b/cpp/examples/messaging/map_receiver.cpp deleted file mode 100644 index 081f7394a8..0000000000 --- a/cpp/examples/messaging/map_receiver.cpp +++ /dev/null @@ -1,60 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Session.h> - -#include <cstdlib> -#include <iostream> - -#include <sstream> - -using namespace qpid::messaging; -using namespace qpid::types; - -using std::stringstream; -using std::string; - -int main(int argc, char** argv) { - const char* url = argc>1 ? argv[1] : "amqp:tcp:127.0.0.1:5672"; - const char* address = argc>2 ? argv[2] : "message_queue; {create: always}"; - std::string connectionOptions = argc > 3 ? argv[3] : ""; - - Connection connection(url, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - Receiver receiver = session.createReceiver(address); - Variant::Map content; - decode(receiver.fetch(), content); - std::cout << content << std::endl; - session.acknowledge(); - receiver.close(); - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - return 1; -} diff --git a/cpp/examples/messaging/map_sender.cpp b/cpp/examples/messaging/map_sender.cpp deleted file mode 100644 index 8ce3e1d8ec..0000000000 --- a/cpp/examples/messaging/map_sender.cpp +++ /dev/null @@ -1,73 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> - -#include <cstdlib> -#include <iostream> - -#include <sstream> - -using namespace qpid::messaging; -using namespace qpid::types; - -using std::stringstream; -using std::string; - -int main(int argc, char** argv) { - const char* url = argc>1 ? argv[1] : "amqp:tcp:127.0.0.1:5672"; - const char* address = argc>2 ? argv[2] : "message_queue; {create: always}"; - std::string connectionOptions = argc > 3 ? argv[3] : ""; - - Connection connection(url, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - Sender sender = session.createSender(address); - - Message message; - Variant::Map content; - content["id"] = 987654321; - content["name"] = "Widget"; - content["percent"] = 0.99; - Variant::List colours; - colours.push_back(Variant("red")); - colours.push_back(Variant("green")); - colours.push_back(Variant("white")); - content["colours"] = colours; - content["uuid"] = Uuid(true); - encode(content, message); - - sender.send(message, true); - - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - return 1; -} - - diff --git a/cpp/examples/messaging/messaging_client.vcproj b/cpp/examples/messaging/messaging_client.vcproj deleted file mode 100644 index ff66891855..0000000000 --- a/cpp/examples/messaging/messaging_client.vcproj +++ /dev/null @@ -1,442 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_client"
- ProjectGUID="{80B58CBC-FECA-1BAD-1FEE-AE349A6B75AA}"
- RootNamespace="messaging_client"
- Keyword="Win32Proj"
- TargetFrameworkVersion="0"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="Debug\messaging_client\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\client.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release\messaging_client\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\client.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\client.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\client.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;cxx;cc;c;C"
- >
- <File
- RelativePath="client.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Documentation"
- >
- <File
- RelativePath="CMakeLists.txt"
- >
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/messaging_drain.vcproj b/cpp/examples/messaging/messaging_drain.vcproj deleted file mode 100644 index 3fc0ebe3f8..0000000000 --- a/cpp/examples/messaging/messaging_drain.vcproj +++ /dev/null @@ -1,371 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_drain"
- ProjectGUID="{D79791E5-C593-4F23-B545-0CE72D181F2A}"
- RootNamespace="messaging_drain"
- Keyword="Win32Proj"
- TargetFrameworkVersion="0"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\drain.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\drain.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\drain.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\drain.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath="drain.cpp"
- >
- </File>
- <File
- RelativePath=".\OptionParser.cpp"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/messaging_map_receiver.vcproj b/cpp/examples/messaging/messaging_map_receiver.vcproj deleted file mode 100644 index 9242156ae9..0000000000 --- a/cpp/examples/messaging/messaging_map_receiver.vcproj +++ /dev/null @@ -1,442 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_map_receiver"
- ProjectGUID="{92D8F5AA-FECA-1BAD-1FEE-AE349A6B75AA}"
- RootNamespace="messaging_map_receiver"
- Keyword="Win32Proj"
- TargetFrameworkVersion="0"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="Debug\messaging_map_receiver\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\map_receiver.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release\messaging_map_receiver\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\map_receiver.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\map_receiver.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\map_receiver.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;cxx;cc;c;C"
- >
- <File
- RelativePath="map_receiver.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Documentation"
- >
- <File
- RelativePath="CMakeLists.txt"
- >
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/messaging_map_sender.vcproj b/cpp/examples/messaging/messaging_map_sender.vcproj deleted file mode 100644 index b68d88f97c..0000000000 --- a/cpp/examples/messaging/messaging_map_sender.vcproj +++ /dev/null @@ -1,442 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_map_sender"
- ProjectGUID="{3B9EA507-FECA-1BAD-1FEE-AE349A6B75AA}"
- RootNamespace="messaging_map_sender"
- Keyword="Win32Proj"
- TargetFrameworkVersion="0"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="Debug\messaging_map_sender\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\map_sender.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release\messaging_map_sender\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\map_sender.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\map_sender.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\map_sender.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;cxx;cc;c;C"
- >
- <File
- RelativePath="map_sender.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Documentation"
- >
- <File
- RelativePath="CMakeLists.txt"
- >
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/messaging_server.vcproj b/cpp/examples/messaging/messaging_server.vcproj deleted file mode 100644 index 7050f8b9e1..0000000000 --- a/cpp/examples/messaging/messaging_server.vcproj +++ /dev/null @@ -1,442 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_server"
- ProjectGUID="{E0A50687-FECA-1BAD-1FEE-AE349A6B75AA}"
- RootNamespace="messaging_server"
- Keyword="Win32Proj"
- TargetFrameworkVersion="0"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="Debug\messaging_server\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\server.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release\messaging_server\I386"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\server.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="_DEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\server.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- AdditionalOptions=""
- AdditionalIncludeDirectories=""
- TargetEnvironment="3"
- TypeLibraryName="$(InputName).tlb"
- HeaderFileName="$(InputName).h"
- InterfaceIdentifierFileName="$(InputName)_i.c"
- ProxyFileName="$(InputName)_p.c"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- PreprocessorDefinitions="NDEBUG;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS"
- Culture="1033"
- AdditionalIncludeDirectories="$(BOOST_ROOT)\include\$(BOOST_VERSION),$(BOOST_ROOT)\.,$(QPID_ROOT)\include,..\..\include"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\server.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;cxx;cc;c;C"
- >
- <File
- RelativePath="server.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Documentation"
- >
- <File
- RelativePath="CMakeLists.txt"
- >
- <FileConfiguration
- Name="Debug|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|x64"
- ExcludedFromBuild="true"
- >
- <Tool
- Name="VCCustomBuildTool"
- />
- </FileConfiguration>
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/messaging_spout.vcproj b/cpp/examples/messaging/messaging_spout.vcproj deleted file mode 100644 index 79043b8958..0000000000 --- a/cpp/examples/messaging/messaging_spout.vcproj +++ /dev/null @@ -1,371 +0,0 @@ -<?xml version="1.0" encoding="Windows-1252"?>
-<!--
- -
- - Licensed to the Apache Software Foundation (ASF) under one
- - or more contributor license agreements. See the NOTICE file
- - distributed with this work for additional information
- - regarding copyright ownership. The ASF licenses this file
- - to you under the Apache License, Version 2.0 (the
- - "License"); you may not use this file except in compliance
- - with the License. You may obtain a copy of the License at
- -
- - http://www.apache.org/licenses/LICENSE-2.0
- -
- - Unless required by applicable law or agreed to in writing,
- - software distributed under the License is distributed on an
- - "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- - KIND, either express or implied. See the License for the
- - specific language governing permissions and limitations
- - under the License.
- -
- -->
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="messaging_spout"
- ProjectGUID="{D3115AC9-91C4-4D79-BCAC-DE837C70F1EA}"
- RootNamespace="messaging_spout"
- Keyword="Win32Proj"
- TargetFrameworkVersion="196613"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- <Platform
- Name="x64"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="."
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\spout.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\spout.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="_DEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- MinimalRebuild="false"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessagingd.lib qpidcommond.lib qpidtypesd.lib"
- OutputFile="$(OutDir)\spout.exe"
- LinkIncremental="2"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|x64"
- OutputDirectory="$(PlatformName)\$(ConfigurationName)"
- IntermediateDirectory="$(PlatformName)\$(ConfigurationName)\$(ProjectName)"
- ConfigurationType="1"
- CharacterSet="0"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- TargetEnvironment="3"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- AdditionalIncludeDirectories=""$(QPID_ROOT)\include";..\..\include"
- PreprocessorDefinitions="NDEBUG;WIN32;_CONSOLE;_CRT_NONSTDC_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;NOMINMAX;WIN32_LEAN_AND_MEAN;_SCL_SECURE_NO_WARNINGS;BOOST_ALL_DYN_LINK"
- RuntimeLibrary="2"
- RuntimeTypeInfo="true"
- WarningLevel="3"
- Detect64BitPortabilityProblems="false"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="qpidmessaging.lib qpidcommon.lib qpidtypes.lib"
- OutputFile="$(OutDir)\spout.exe"
- LinkIncremental="1"
- SuppressStartupBanner="true"
- AdditionalLibraryDirectories="$(QPID_ROOT)\bin;..\..\lib"
- GenerateDebugInformation="true"
- SubSystem="1"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="17"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\OptionParser.cpp"
- >
- </File>
- <File
- RelativePath=".\spout.cpp"
- >
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/cpp/examples/messaging/readme.txt b/cpp/examples/messaging/readme.txt deleted file mode 100644 index ff145e0160..0000000000 --- a/cpp/examples/messaging/readme.txt +++ /dev/null @@ -1,146 +0,0 @@ -The messaging API is intended as a high level abstraction for -messaging that avoids some of the protocol specific interactions -forced by the earlier API. This allows applications to concern -themselves with handling incoming messages and producing their own -messages and delegates knowledge of the protocol interactions required -to do so to the Qpid client library. - -To send or receive messages you first need to establish a connection -to a broker. You can then create one or more sessions on that -connection. Once you have a session you can create 'senders' or -'receivers'. These are objects through which you can send or receive -messages respectively. - -Senders and receivers are both created for a specified 'address'. An -address will often just be a simple name. As far as the API is -concerned, addresses are fairly opaque. This allows different types of -messaging pattern to be selected without affecting the code simply by -changing the address used, or configuring the broker to correctly -handle addresses of a certain name. - -At present there are two 'types' of address supported: queues and -topics. Messages sent to a queue are stored on the queue until there -is a subscriber who can receive them. Each message is in general -allocated to one subscriber (i.e. a competing consumer pattern). A -topic on the other hand will not store messages if there are no -subscriptions active and each message will be delivered to all -interested subscribers. - -In the current AMQP 0-10 implementation, queues are represented by -AMQP queues and topic are represented by AMQP exchanges to which -subscribers bind their own private subscription queue to receive -messages. - -The drain and spout examples in this directory are useful for -exploring the behaviour of the messaging API over AMQP 0-10 and -different uses of addresses. There is also some documentation around -the address syntax and currently supported options in the doxygen -reference material for the Address class itself. - -For example, to demonstrate classic message queueing behaviour: - -* create a queue e.g. by running: qpid-config add queue my-queue - -* use spout to send a message to that queue: ./spout --address my-queue - -* now use drain to receive that message: ./drain --address my-queue - -You can use the --content option to spout to specify text to put n the -message body. You can also alter the id used to unqieuly identify -each message using the --id option. - -To demonstrate the publish-subscribe pattern used for topics: - -* create an exchange e.g. by running: qpid-config add exchange topic my-topic - -* start up a subscriber using drain: ./drain -f --address my-topic - (the -f here causes the drain program to wait indefinitely for messages) - -* now send a message to the topic using spout: ./spout --address my-topic - -If you run spout before drain, the message will not be stored. If you -start multiple instances of drain, they will each receive the message. - -For a topic, you can select the messages you wish to receive by -'subject', eg. using the same exchange as above: - -* start a subscriber using drain for a specific subject: - ./drain -f --address my-topic/my-subject - -* now if you send a message with that subject you can see the - subscriber receives it: ./spout --address my-topic/my-subject - -* however were you to specify another subject for sent messages, those - would not be received, e.g: ./spout --address my-topic/another-subject - -In AMQP 0-10, the routing key is used to route messages for a given -subject. As my-topic is a topic exchange we can use the special -widlcard selection patterns when creating a subscriber: - -E.g. A subscriber reciving from address 'my-topic/#.dog' will receive -messages sent to 'my-topic/big.dog' and 'my-topic/blue.dog', but not -those sent to 'my-topic.blue-cat'. - -Though preconfiguring the valid addresses on a broker is a very common -pattern, it is still possible to have them created automatically -'on-demand'. This is done by specifying a create 'policy' for the address. - -* run: ./spout --address 'my-new-queue; {create: always}' -* then run: ./drain --address my-new-queue - -You can see that the queue was created by spout before it sent the -message to it, no explicit creation of the queue was needed. - -We can do the same for a topic, but there we need to specify the type -of address (as there is no existing entity from which to infer that -type and as we do not want the default type to be created, namely a -queue): - -* run: ./drain -f --address 'my-new-topic; {create: always, node:{type:topic}}' -* then run: ./spout --address my-new-queue - -The value to the create policy is one of always, sender, receiver or -never (which is the default). (Note: You can see the exchange created -using qpid-config exchanges, likewise to see the list of all queues -use qpid-config queues). - -In addition to a create policy there are assert and delete -policies. These have the same valid values as the create policy - -always, sender, receiver and never - indicating when they come in to -effect. - -An example using the headers exchange (uses default instance, though -this need not of course be the case. You could create another using -qpid-config or even auto-create one): - -* First start a subscriber, e.g.: - ./drain -f --address 'amq.match; {filter:{x-match:all, colour:blue}}' - -* Any message with a property name colour with value blue will be - received: - - ./spout --address amq.match --property colour=blue --content 'matched!' - -* But if the value of the colour property is something else, the - message will not be received: - ./spout --address amq.match --property colour=red --content 'not matched' - -An example using xquery based filtering with the xml exchange: - -* First start a subscriber with an xquery filter specified: - ./drain -f --address 'xml; {link:{x-bindings:[{arguments:{xquery:"declare variable $colour external; $colour = '\''red'\''"}}]}}' - -* Then test receipt of messages that match the xquery filter: - ./spout --address 'xml' --property colour=red --content 'matched!' - and - ./spout --address 'xml' --property colour=blue --content 'not matched' - -TODO: - -* auto-creating exchanges of different types - -* 'durable' and 'reliable' subscriptions - -* map content - -* client/server example: temp queues and reply-to diff --git a/cpp/examples/messaging/server.cpp b/cpp/examples/messaging/server.cpp deleted file mode 100644 index aa271d91f9..0000000000 --- a/cpp/examples/messaging/server.cpp +++ /dev/null @@ -1,78 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Address.h> -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Receiver.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> - -#include <algorithm> -#include <cstdlib> -#include <iostream> -#include <memory> -#include <sstream> - -using namespace qpid::messaging; - -using std::stringstream; -using std::string; - -int main(int argc, char** argv) { - const char* url = argc>1 ? argv[1] : "amqp:tcp:127.0.0.1:5672"; - std::string connectionOptions = argc > 2 ? argv[2] : ""; - - Connection connection(url, connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - Receiver receiver = session.createReceiver("service_queue; {create: always}"); - - while (true) { - Message request = receiver.fetch(); - const Address& address = request.getReplyTo(); - if (address) { - Sender sender = session.createSender(address); - std::string s = request.getContent(); - std::transform(s.begin(), s.end(), s.begin(), toupper); - Message response(s); - sender.send(response); - std::cout << "Processed request: " - << request.getContent() - << " -> " - << response.getContent() << std::endl; - session.acknowledge(); - } else { - std::cerr << "Error: no reply address specified for request: " << request.getContent() << std::endl; - session.reject(request); - } - } - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - return 1; -} - - diff --git a/cpp/examples/messaging/spout.cpp b/cpp/examples/messaging/spout.cpp deleted file mode 100644 index cd11a7ad81..0000000000 --- a/cpp/examples/messaging/spout.cpp +++ /dev/null @@ -1,175 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qpid/messaging/Address.h> -#include <qpid/messaging/Connection.h> -#include <qpid/messaging/Message.h> -#include <qpid/messaging/Sender.h> -#include <qpid/messaging/Session.h> -#include <qpid/types/Variant.h> - -#include <iostream> -#include <sstream> -#include <vector> -#include <ctime> - -#include "OptionParser.h" - -using namespace qpid::messaging; -using namespace qpid::types; - -typedef std::vector<std::string> string_vector; - -struct Options : OptionParser -{ - std::string url; - std::string address; - int timeout; - int count; - std::string id; - std::string replyto; - string_vector properties; - string_vector entries; - std::string content; - std::string connectionOptions; - - Options() - : OptionParser("Usage: spout [OPTIONS] ADDRESS", "Send messages to the specified address"), - url("127.0.0.1"), - timeout(0), - count(1) - { - add("broker,b", url, "url of broker to connect to"); - add("timeout,t", timeout, "exit after the specified time"); - add("count,c", count, "stop after count messages have been sent, zero disables"); - add("id,i", id, "use the supplied id instead of generating one"); - add("reply-to", replyto, "specify reply-to address"); - add("property,P", properties, "specify message property"); - add("map,M", entries, "specify entry for map content"); - add("content", content, "specify textual content"); - add("connection-options", connectionOptions, "connection options string in the form {name1:value1, name2:value2}"); - } - - static bool nameval(const std::string& in, std::string& name, std::string& value) - { - std::string::size_type i = in.find("="); - if (i == std::string::npos) { - name = in; - return false; - } else { - name = in.substr(0, i); - if (i+1 < in.size()) { - value = in.substr(i+1); - return true; - } else { - return false; - } - } - } - - static void setProperty(Message& message, const std::string& property) - { - std::string name; - std::string value; - if (nameval(property, name, value)) { - message.getProperties()[name] = value; - } else { - message.getProperties()[name] = Variant(); - } - } - - void setProperties(Message& message) const - { - for (string_vector::const_iterator i = properties.begin(); i != properties.end(); ++i) { - setProperty(message, *i); - } - } - - void setEntries(Variant::Map& content) const - { - for (string_vector::const_iterator i = entries.begin(); i != entries.end(); ++i) { - std::string name; - std::string value; - if (nameval(*i, name, value)) { - content[name] = value; - } else { - content[name] = Variant(); - } - } - } - - bool checkAddress() - { - if (getArguments().empty()) { - error("Address is required"); - return false; - } else { - address = getArguments()[0]; - return true; - } - } -}; - - -int main(int argc, char** argv) -{ - Options options; - if (options.parse(argc, argv) && options.checkAddress()) { - Connection connection(options.url, options.connectionOptions); - try { - connection.open(); - Session session = connection.createSession(); - Sender sender = session.createSender(options.address); - - Message message; - options.setProperties(message); - if (options.entries.size()) { - Variant::Map content; - options.setEntries(content); - encode(content, message); - } else if (options.content.size()) { - message.setContent(options.content); - message.setContentType("text/plain"); - } - std::time_t start = std::time(0); - for (int count = 0; - (count < options.count || options.count == 0) && - (options.timeout == 0 || std::difftime(std::time(0), start) < options.timeout); - count++) { - if (!options.replyto.empty()) message.setReplyTo(Address(options.replyto)); - std::string id = options.id.empty() ? Uuid(true).str() : options.id; - std::stringstream spoutid; - spoutid << id << ":" << count; - message.getProperties()["spout-id"] = spoutid.str(); - sender.send(message); - } - session.sync(); - connection.close(); - return 0; - } catch(const std::exception& error) { - std::cout << error.what() << std::endl; - connection.close(); - } - } - return 1; -} - - |