diff options
Diffstat (limited to 'cpp/src')
-rw-r--r-- | cpp/src/qpid/SharedObject.h | 6 | ||||
-rw-r--r-- | cpp/src/qpid/broker/Broker.cpp | 6 | ||||
-rw-r--r-- | cpp/src/qpid/broker/Broker.h | 6 | ||||
-rw-r--r-- | cpp/src/qpid/broker/SessionHandlerFactoryImpl.cpp | 1 | ||||
-rw-r--r-- | cpp/src/qpid/broker/SessionHandlerFactoryImpl.h | 3 | ||||
-rw-r--r-- | cpp/src/qpid/client/Connection.h | 2 | ||||
-rw-r--r-- | cpp/src/qpid/framing/InputHandler.h | 5 | ||||
-rw-r--r-- | cpp/src/qpid/framing/OutputHandler.h | 5 | ||||
-rw-r--r-- | cpp/src/qpid/io/SessionContext.h | 17 | ||||
-rw-r--r-- | cpp/src/qpid/io/SessionHandler.h | 8 | ||||
-rw-r--r-- | cpp/src/qpid/io/SessionHandlerFactory.h | 25 | ||||
-rw-r--r-- | cpp/src/qpidd.cpp | 2 |
12 files changed, 47 insertions, 39 deletions
diff --git a/cpp/src/qpid/SharedObject.h b/cpp/src/qpid/SharedObject.h index 15f333173a..62dc82b14a 100644 --- a/cpp/src/qpid/SharedObject.h +++ b/cpp/src/qpid/SharedObject.h @@ -27,20 +27,20 @@ namespace qpid { * Template to enforce shared object conventions. * Shared object classes should inherit : public qpid::SharedObject * That ensures Foo: - * - has typedef boost::shared_ptr<T> SharedPtr + * - has typedef boost::shared_ptr<T> shared_ptr * - has virtual destructor * - is boost::noncopyable (no default copy or assign) * - has a protected default constructor. * * Shared objects should not have public constructors. * Make constructors protected and provide public statc create() - * functions that return a SharedPtr. + * functions that return a shared_ptr. */ template <class T> class SharedObject : private boost::noncopyable { public: - typedef boost::shared_ptr<T> SharedPtr; + typedef boost::shared_ptr<T> shared_ptr; virtual ~SharedObject() {}; diff --git a/cpp/src/qpid/broker/Broker.cpp b/cpp/src/qpid/broker/Broker.cpp index 7b5f9e3e32..0456b9f133 100644 --- a/cpp/src/qpid/broker/Broker.cpp +++ b/cpp/src/qpid/broker/Broker.cpp @@ -30,15 +30,15 @@ Broker::Broker(const Configuration& config) : { } -Broker::SharedPtr Broker::create(int16_t port) +Broker::shared_ptr Broker::create(int16_t port) { Configuration config; config.setPort(port); return create(config); } -Broker::SharedPtr Broker::create(const Configuration& config) { - return Broker::SharedPtr(new Broker(config)); +Broker::shared_ptr Broker::create(const Configuration& config) { + return Broker::shared_ptr(new Broker(config)); } void Broker::run() { diff --git a/cpp/src/qpid/broker/Broker.h b/cpp/src/qpid/broker/Broker.h index dd87c47909..55ae17571a 100644 --- a/cpp/src/qpid/broker/Broker.h +++ b/cpp/src/qpid/broker/Broker.h @@ -42,12 +42,12 @@ namespace qpid { * Create a broker. * @param port Port to listen on or 0 to pick a port dynamically. */ - static SharedPtr create(int16_t port = DEFAULT_PORT); + static shared_ptr create(int16_t port = DEFAULT_PORT); /** * Create a broker using a Configuration. */ - static SharedPtr create(const Configuration& config); + static shared_ptr create(const Configuration& config); /** * Return listening port. If called before bind this is @@ -68,7 +68,7 @@ namespace qpid { private: Broker(const Configuration& config); - qpid::io::Acceptor::SharedPtr acceptor; + qpid::io::Acceptor::shared_ptr acceptor; SessionHandlerFactoryImpl factory; }; } diff --git a/cpp/src/qpid/broker/SessionHandlerFactoryImpl.cpp b/cpp/src/qpid/broker/SessionHandlerFactoryImpl.cpp index b98f70ef68..9883c94a25 100644 --- a/cpp/src/qpid/broker/SessionHandlerFactoryImpl.cpp +++ b/cpp/src/qpid/broker/SessionHandlerFactoryImpl.cpp @@ -19,6 +19,7 @@ #include "qpid/broker/SessionHandlerImpl.h" #include "qpid/broker/FanOutExchange.h" #include "qpid/broker/HeadersExchange.h" +#include "qpid/broker/DirectExchange.h" using namespace qpid::broker; using namespace qpid::io; diff --git a/cpp/src/qpid/broker/SessionHandlerFactoryImpl.h b/cpp/src/qpid/broker/SessionHandlerFactoryImpl.h index 25b4c0c13a..5bad81412b 100644 --- a/cpp/src/qpid/broker/SessionHandlerFactoryImpl.h +++ b/cpp/src/qpid/broker/SessionHandlerFactoryImpl.h @@ -20,11 +20,12 @@ #include "qpid/framing/AMQFrame.h" #include "qpid/broker/AutoDelete.h" -#include "qpid/broker/DirectExchange.h" #include "qpid/broker/ExchangeRegistry.h" #include "qpid/framing/ProtocolInitiation.h" #include "qpid/broker/QueueRegistry.h" #include "qpid/io/SessionHandlerFactory.h" +#include "qpid/io/SessionContext.h" +#include "qpid/io/SessionHandler.h" #include "qpid/io/TimeoutHandler.h" namespace qpid { diff --git a/cpp/src/qpid/client/Connection.h b/cpp/src/qpid/client/Connection.h index 0e8f52e88a..5f0b222196 100644 --- a/cpp/src/qpid/client/Connection.h +++ b/cpp/src/qpid/client/Connection.h @@ -39,7 +39,7 @@ namespace client { class Channel; - class Connection : public virtual qpid::framing::InputHandler, +class Connection : public virtual qpid::framing::InputHandler, public virtual qpid::io::TimeoutHandler, public virtual qpid::io::ShutdownHandler, private virtual qpid::framing::BodyHandler{ diff --git a/cpp/src/qpid/framing/InputHandler.h b/cpp/src/qpid/framing/InputHandler.h index 8f56d176b8..ef9827283c 100644 --- a/cpp/src/qpid/framing/InputHandler.h +++ b/cpp/src/qpid/framing/InputHandler.h @@ -18,14 +18,15 @@ * */ -#include <qpid/SharedObject.h> #include "qpid/framing/AMQFrame.h" +#include <boost/noncopyable.hpp> namespace qpid { namespace framing { -class InputHandler : public qpid::SharedObject<InputHandler> { +class InputHandler : private boost::noncopyable { public: + virtual ~InputHandler() {} virtual void received(AMQFrame* frame) = 0; }; diff --git a/cpp/src/qpid/framing/OutputHandler.h b/cpp/src/qpid/framing/OutputHandler.h index 16fb7e8afb..b5554bba78 100644 --- a/cpp/src/qpid/framing/OutputHandler.h +++ b/cpp/src/qpid/framing/OutputHandler.h @@ -18,14 +18,15 @@ * limitations under the License. * */ -#include <qpid/SharedObject.h> +#include <boost/noncopyable.hpp> #include "qpid/framing/AMQFrame.h" namespace qpid { namespace framing { -class OutputHandler : public qpid::SharedObject<OutputHandler> { +class OutputHandler : private boost::noncopyable { public: + virtual ~OutputHandler() {} virtual void send(AMQFrame* frame) = 0; }; diff --git a/cpp/src/qpid/io/SessionContext.h b/cpp/src/qpid/io/SessionContext.h index b8fa8de62e..c9a2ce49f2 100644 --- a/cpp/src/qpid/io/SessionContext.h +++ b/cpp/src/qpid/io/SessionContext.h @@ -23,15 +23,16 @@ namespace qpid { namespace io { - class SessionContext : public virtual qpid::framing::OutputHandler - { - public: - virtual void close() = 0; - virtual ~SessionContext(){} - }; +/** + * Provides the output handler associated with a connection. + */ +class SessionContext : public virtual qpid::framing::OutputHandler +{ + public: + virtual void close() = 0; +}; -} -} +}} #endif diff --git a/cpp/src/qpid/io/SessionHandler.h b/cpp/src/qpid/io/SessionHandler.h index 5b4e60213b..ac455122d6 100644 --- a/cpp/src/qpid/io/SessionHandler.h +++ b/cpp/src/qpid/io/SessionHandler.h @@ -26,13 +26,13 @@ namespace qpid { namespace io { - class SessionHandler : public virtual qpid::framing::InitiationHandler, - public virtual qpid::framing::InputHandler, - public virtual TimeoutHandler + class SessionHandler : + public qpid::framing::InitiationHandler, + public qpid::framing::InputHandler, + public TimeoutHandler { public: virtual void closed() = 0; - virtual ~SessionHandler(){} }; } diff --git a/cpp/src/qpid/io/SessionHandlerFactory.h b/cpp/src/qpid/io/SessionHandlerFactory.h index 8ed2dffe57..441b8e9fd6 100644 --- a/cpp/src/qpid/io/SessionHandlerFactory.h +++ b/cpp/src/qpid/io/SessionHandlerFactory.h @@ -18,21 +18,24 @@ #ifndef _SessionHandlerFactory_ #define _SessionHandlerFactory_ -#include "qpid/io/SessionContext.h" -#include "qpid/io/SessionHandler.h" - namespace qpid { namespace io { - class SessionHandlerFactory - { - public: - virtual SessionHandler* create(SessionContext* ctxt) = 0; - virtual ~SessionHandlerFactory(){} - }; +class SessionContext; +class SessionHandler; + +/** + * Callback interface used by the Acceptor to + * create a SessionHandler for each new connection. + */ +class SessionHandlerFactory : private boost::noncopyable +{ + public: + virtual SessionHandler* create(SessionContext* ctxt) = 0; + virtual ~SessionHandlerFactory(){} +}; -} -} +}} #endif diff --git a/cpp/src/qpidd.cpp b/cpp/src/qpidd.cpp index 40be6485f2..e93676513a 100644 --- a/cpp/src/qpidd.cpp +++ b/cpp/src/qpidd.cpp @@ -37,7 +37,7 @@ int main(int argc, char** argv) config.usage(); }else{ apr_signal(SIGINT, handle_signal); - Broker::SharedPtr broker = Broker::create(config); + Broker::shared_ptr broker = Broker::create(config); broker->run(); } return 0; |