summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/messaging/ProtocolRegistry.h
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/cpp/src/qpid/messaging/ProtocolRegistry.h')
-rw-r--r--qpid/cpp/src/qpid/messaging/ProtocolRegistry.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/qpid/cpp/src/qpid/messaging/ProtocolRegistry.h b/qpid/cpp/src/qpid/messaging/ProtocolRegistry.h
index 6a6f5962c3..e5d8e918f7 100644
--- a/qpid/cpp/src/qpid/messaging/ProtocolRegistry.h
+++ b/qpid/cpp/src/qpid/messaging/ProtocolRegistry.h
@@ -36,9 +36,12 @@ class ProtocolRegistry
{
public:
typedef ConnectionImpl* Factory(const std::string& url, const qpid::types::Variant::Map& options);
+ typedef void Shutdown();
+
static ConnectionImpl* create(const std::string& url, const qpid::types::Variant::Map& options);
static ConnectionImpl* next(ConnectionImpl*);
- QPID_MESSAGING_EXTERN static void add(const std::string& name, Factory* factory);
+ QPID_MESSAGING_EXTERN static void add(const std::string& name, Factory*, Shutdown*);
+ QPID_MESSAGING_EXTERN static void shutdown();
private:
static ConnectionImpl* createInternal(const std::vector<std::string>& versions, const std::string& url, const qpid::types::Variant::Map& options, const std::string& error);
};