summaryrefslogtreecommitdiff
path: root/cpp/src/qmf/engine/ConsoleImpl.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qmf/engine/ConsoleImpl.h')
-rw-r--r--cpp/src/qmf/engine/ConsoleImpl.h148
1 files changed, 0 insertions, 148 deletions
diff --git a/cpp/src/qmf/engine/ConsoleImpl.h b/cpp/src/qmf/engine/ConsoleImpl.h
deleted file mode 100644
index 0c27fdabcd..0000000000
--- a/cpp/src/qmf/engine/ConsoleImpl.h
+++ /dev/null
@@ -1,148 +0,0 @@
-#ifndef _QmfEngineConsoleEngineImpl_
-#define _QmfEngineConsoleEngineImpl_
-
-/*
- * 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 "qmf/engine/Console.h"
-#include "qmf/engine/MessageImpl.h"
-#include "qmf/engine/SchemaImpl.h"
-#include "qmf/engine/Typecode.h"
-#include "qmf/engine/ObjectImpl.h"
-#include "qmf/engine/ObjectIdImpl.h"
-#include "qmf/engine/QueryImpl.h"
-#include "qmf/engine/ValueImpl.h"
-#include "qmf/engine/Protocol.h"
-#include "qmf/engine/SequenceManager.h"
-#include "qmf/engine/BrokerProxyImpl.h"
-#include <qpid/framing/Buffer.h>
-#include <qpid/framing/Uuid.h>
-#include <qpid/framing/FieldTable.h>
-#include <qpid/framing/FieldValue.h>
-#include <qpid/sys/Mutex.h>
-#include <qpid/sys/Time.h>
-#include <qpid/sys/SystemInfo.h>
-#include <string.h>
-#include <string>
-#include <deque>
-#include <map>
-#include <vector>
-#include <iostream>
-#include <fstream>
-#include <boost/shared_ptr.hpp>
-#include <boost/noncopyable.hpp>
-
-namespace qmf {
-namespace engine {
-
- struct ConsoleEventImpl {
- typedef boost::shared_ptr<ConsoleEventImpl> Ptr;
- ConsoleEvent::EventKind kind;
- boost::shared_ptr<AgentProxy> agent;
- std::string name;
- const SchemaClassKey* classKey;
- boost::shared_ptr<Object> object;
- void* context;
- boost::shared_ptr<Event> event;
- uint64_t timestamp;
- bool hasProps;
- bool hasStats;
-
- ConsoleEventImpl(ConsoleEvent::EventKind k) :
- kind(k), classKey(0), context(0), timestamp(0) {}
- ~ConsoleEventImpl() {}
- ConsoleEvent copy();
- };
-
- class ConsoleImpl : public boost::noncopyable {
- public:
- ConsoleImpl(const ConsoleSettings& settings = ConsoleSettings());
- ~ConsoleImpl();
-
- bool getEvent(ConsoleEvent& event) const;
- void popEvent();
-
- void addConnection(BrokerProxy& broker, void* context);
- void delConnection(BrokerProxy& broker);
-
- uint32_t packageCount() const;
- const std::string& getPackageName(uint32_t idx) const;
-
- uint32_t classCount(const char* packageName) const;
- const SchemaClassKey* getClass(const char* packageName, uint32_t idx) const;
-
- ClassKind getClassKind(const SchemaClassKey* key) const;
- const SchemaObjectClass* getObjectClass(const SchemaClassKey* key) const;
- const SchemaEventClass* getEventClass(const SchemaClassKey* key) const;
-
- void bindPackage(const char* packageName);
- void bindClass(const SchemaClassKey* key);
- void bindClass(const char* packageName, const char* className);
- void bindEvent(const SchemaClassKey* key);
- void bindEvent(const char* packageName, const char* eventName);
-
- /*
- void startSync(const Query& query, void* context, SyncQuery& sync);
- void touchSync(SyncQuery& sync);
- void endSync(SyncQuery& sync);
- */
-
- private:
- friend class BrokerProxyImpl;
- friend struct StaticContext;
- const ConsoleSettings& settings;
- mutable qpid::sys::Mutex lock;
- std::deque<ConsoleEventImpl::Ptr> eventQueue;
- std::vector<BrokerProxyImpl*> brokerList;
- std::vector<std::pair<std::string, std::string> > bindingList; // exchange/key (empty exchange => QMF_EXCHANGE)
-
- // Declare a compare class for the class maps that compares the dereferenced
- // class key pointers. The default behavior would be to compare the pointer
- // addresses themselves.
- struct KeyCompare {
- bool operator()(const SchemaClassKey* left, const SchemaClassKey* right) const {
- return *left < *right;
- }
- };
-
- typedef std::map<const SchemaClassKey*, SchemaObjectClass*, KeyCompare> ObjectClassList;
- typedef std::map<const SchemaClassKey*, SchemaEventClass*, KeyCompare> EventClassList;
- typedef std::map<std::string, std::pair<ObjectClassList, EventClassList> > PackageList;
-
- PackageList packages;
-
- void learnPackage(const std::string& packageName);
- void learnClass(SchemaObjectClass* cls);
- void learnClass(SchemaEventClass* cls);
- bool haveClass(const SchemaClassKey* key) const;
- SchemaObjectClass* getSchema(const SchemaClassKey* key) const;
-
- void eventAgentAdded(boost::shared_ptr<AgentProxy> agent);
- void eventAgentDeleted(boost::shared_ptr<AgentProxy> agent);
- void eventNewPackage(const std::string& packageName);
- void eventNewClass(const SchemaClassKey* key);
- void eventObjectUpdate(ObjectPtr object, bool prop, bool stat);
- void eventAgentHeartbeat(boost::shared_ptr<AgentProxy> agent, uint64_t timestamp);
- void eventEventReceived(boost::shared_ptr<Event> event);
- };
-}
-}
-
-#endif
-