From 5ea4ff1dc27f13a4fd2cc01659ff49561eff79e5 Mon Sep 17 00:00:00 2001 From: Luke Bakken Date: Mon, 28 May 2018 14:52:25 -0700 Subject: [PATCH 1/3] Suggested changes to use IP address https://stackoverflow.com/q/50402938/1466825 --- src/SimplePocoHandler.cpp | 11 +++++++++++ src/send.cpp | 6 ++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/SimplePocoHandler.cpp b/src/SimplePocoHandler.cpp index 1a9feff..b9773ca 100644 --- a/src/SimplePocoHandler.cpp +++ b/src/SimplePocoHandler.cpp @@ -4,6 +4,8 @@ #include #include #include + +#include #include #include "SimplePocoHandler.h" @@ -84,6 +86,7 @@ struct SimplePocoHandlerImpl Buffer outBuffer; std::vector tmpBuff; }; + SimplePocoHandler::SimplePocoHandler(const std::string& host, uint16_t port) : m_impl(new SimplePocoHandlerImpl) { @@ -92,6 +95,14 @@ SimplePocoHandler::SimplePocoHandler(const std::string& host, uint16_t port) : m_impl->socket.setKeepAlive(true); } +SimplePocoHandler::SimplePocoHandler(const Poco::Net::IPAddress& ip, uint16_t port) : + m_impl(new SimplePocoHandlerImpl) +{ + const Poco::Net::SocketAddress address(ip, port); + m_impl->socket.connect(address); + m_impl->socket.setKeepAlive(true); +} + SimplePocoHandler::~SimplePocoHandler() { close(); diff --git a/src/send.cpp b/src/send.cpp index 9b42a15..c8e5f71 100644 --- a/src/send.cpp +++ b/src/send.cpp @@ -1,17 +1,19 @@ #include +#include #include "SimplePocoHandler.h" int main(void) { - SimplePocoHandler handler("localhost", 5672); + const Poco::Net::IPAddress ip("127.0.0.1"); + const SimplePocoHandler handler(ip, 5672); AMQP::Connection connection(&handler, AMQP::Login("guest", "guest"), "/"); AMQP::Channel channel(&connection); channel.onReady([&]() { - if(handler.connected()) + if (handler.connected()) { channel.publish("", "hello", "Hello World!"); std::cout << " [x] Sent 'Hello World!'" << std::endl; From 435a027157c89b9c4ad11aa453f507dce413139c Mon Sep 17 00:00:00 2001 From: Luke Bakken Date: Mon, 28 May 2018 15:55:04 -0700 Subject: [PATCH 2/3] Add ctor prototype to header file --- src/SimplePocoHandler.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/SimplePocoHandler.h b/src/SimplePocoHandler.h index 3a9aa3c..80c1dd9 100644 --- a/src/SimplePocoHandler.h +++ b/src/SimplePocoHandler.h @@ -4,6 +4,8 @@ #include #include +#include + class SimplePocoHandlerImpl; class SimplePocoHandler: public AMQP::ConnectionHandler { @@ -13,6 +15,7 @@ class SimplePocoHandler: public AMQP::ConnectionHandler static constexpr size_t TEMP_BUFFER_SIZE = 1024 * 1024; //1Mb SimplePocoHandler(const std::string& host, uint16_t port); + SimplePocoHandler(const Poco::Net::IPAddress& ip, uint16_t port); virtual ~SimplePocoHandler(); void loop(); From 1c1e9f9273693ba4ce7d1505b6e52b0410bbfdca Mon Sep 17 00:00:00 2001 From: Luke Bakken Date: Mon, 28 May 2018 16:07:15 -0700 Subject: [PATCH 3/3] remove const --- src/send.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/send.cpp b/src/send.cpp index c8e5f71..2b6d0cc 100644 --- a/src/send.cpp +++ b/src/send.cpp @@ -5,8 +5,8 @@ int main(void) { - const Poco::Net::IPAddress ip("127.0.0.1"); - const SimplePocoHandler handler(ip, 5672); + Poco::Net::IPAddress ip("127.0.0.1"); + SimplePocoHandler handler(ip, 5672); AMQP::Connection connection(&handler, AMQP::Login("guest", "guest"), "/"); AMQP::Channel channel(&connection);