summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/ClusterPluginProvider.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-07-19 21:52:24 +0000
committerAlan Conway <aconway@apache.org>2007-07-19 21:52:24 +0000
commitcb566519d58ded6704507fa5530bf901e620edf6 (patch)
treeab4b29ddd0ad2b5e9015647e379bede84163b13e /cpp/src/qpid/cluster/ClusterPluginProvider.cpp
parent3f900af77d5f781431dc25e307974e0fc27aa561 (diff)
downloadqpid-python-cb566519d58ded6704507fa5530bf901e620edf6.tar.gz
* Summary:
- Connect cluster handlers into broker handler chains. - Progress on wiring replication. * src/tests/cluster.mk: Temporarily disabled Cluster test. * src/tests/Cluster.h, cpp, Cluster_child.cpp: Updated to use UUIDs. * src/qpidd.cpp: - Load optional libs (cluster) - Include plugin config in options.parse. * src/qpid/cluster/SessionManager.h: - Create sessions, update handler chains (as HandlerUpdater) - Handle frames from cluster. * src/qpid/cluster/ClusterPlugin.h, .cpp: - renamed from ClusterPluginProvider - Create and connect Cluster and SessionManager. - Register SessionManager as HandlerUpdater. * src/qpid/cluster/Cluster.h, .cpp: Refactor as SessionFrameHandler. * src/qpid/broker/Connection.cpp: Apply HandlerUpdaters. * src/qpid/broker/Broker.h, .cpp: - Initialize plugins - Apply HandlerUpdaters * src/qpid/Plugin.h, .cpp: Simplified plugin framework. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@557788 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/ClusterPluginProvider.cpp')
-rw-r--r--cpp/src/qpid/cluster/ClusterPluginProvider.cpp60
1 files changed, 0 insertions, 60 deletions
diff --git a/cpp/src/qpid/cluster/ClusterPluginProvider.cpp b/cpp/src/qpid/cluster/ClusterPluginProvider.cpp
deleted file mode 100644
index d48fbadf7b..0000000000
--- a/cpp/src/qpid/cluster/ClusterPluginProvider.cpp
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- *
- * Copyright (c) 2006 The Apache Software Foundation
- *
- * Licensed 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/broker/Broker.h"
-#include "qpid/framing/HandlerUpdater.h"
-#include "qpid/cluster/Cluster.h"
-#include "qpid/Plugin.h"
-#include "qpid/Options.h"
-
-namespace qpid {
-namespace cluster {
-
-using namespace std;
-
-struct ClusterPluginProvider : public PluginProvider {
-
- struct ClusterOptions : public Options {
- string clusterName;
- ClusterOptions() {
- addOptions()
- ("cluster", optValue(clusterName, "NAME"),
- "Join the cluster named NAME");
- }
- };
-
- ClusterOptions options;
- shared_ptr<Cluster> cluster;
-
- Options* getOptions() {
- return &options;
- }
-
- void provide(PluginUser& user) {
- broker::Broker* broker = dynamic_cast<broker::Broker*>(&user);
- // Only provide to a Broker, and only if the --cluster config is set.
- if (broker && !options.clusterName.empty()) {
- assert(!cluster); // A process can only belong to one cluster.
- cluster.reset(new Cluster(options.clusterName, broker->getUrl()));
- // FIXME aconway 2007-06-29: register HandlerUpdater.
- }
- }
-};
-
-static ClusterPluginProvider instance; // Static initialization.
-
-}} // namespace qpid::cluster