diff options
| author | Ted Ross <tross@apache.org> | 2010-04-23 21:00:10 +0000 |
|---|---|---|
| committer | Ted Ross <tross@apache.org> | 2010-04-23 21:00:10 +0000 |
| commit | ce41c9d094746451b674bebe5edb4e61116e77c2 (patch) | |
| tree | 7083ac3b3ef29835053e128047b1baa671cec2c2 /cpp/src/qpid/management | |
| parent | 74b68e0be99c74b8f59ef97a3a9162d5a8dfe257 (diff) | |
| download | qpid-python-ce41c9d094746451b674bebe5edb4e61116e77c2.tar.gz | |
Code cleanup
- Removed IdAllocator (it's no longer needed)
- Cleaned up the calls to ManagementAgent::addObject to handle durable objects
- Removed the deferred call to addObject for durable objects
- Removed unneeded calls to self._checkClosed() in qmf.console.Agent
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@937516 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/management')
| -rw-r--r-- | cpp/src/qpid/management/IdAllocator.h | 42 | ||||
| -rw-r--r-- | cpp/src/qpid/management/ManagementAgent.cpp | 25 | ||||
| -rw-r--r-- | cpp/src/qpid/management/ManagementAgent.h | 12 |
3 files changed, 6 insertions, 73 deletions
diff --git a/cpp/src/qpid/management/IdAllocator.h b/cpp/src/qpid/management/IdAllocator.h deleted file mode 100644 index 6f49d6d13f..0000000000 --- a/cpp/src/qpid/management/IdAllocator.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef QPID_MANAGEMENT_IDALLOCATOR_H -#define QPID_MANAGEMENT_IDALLOCATOR_H - -/* - * - * 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 "qpid/management/Manageable.h" - -namespace qpid { -namespace management { - -/** - * Interface through which plugins etc can control the mgmt object id - * allocation for special cases - */ -struct IdAllocator -{ - virtual uint64_t getIdFor(Manageable* object) = 0; - virtual ~IdAllocator() {} -}; - -}} // namespace qpid::management - -#endif /*!QPID_MANAGEMENT_IDALLOCATOR_H*/ diff --git a/cpp/src/qpid/management/ManagementAgent.cpp b/cpp/src/qpid/management/ManagementAgent.cpp index 1a1415a06e..58a5d9bdd0 100644 --- a/cpp/src/qpid/management/ManagementAgent.cpp +++ b/cpp/src/qpid/management/ManagementAgent.cpp @@ -21,7 +21,6 @@ #include "qpid/management/ManagementAgent.h" #include "qpid/management/ManagementObject.h" -#include "qpid/management/IdAllocator.h" #include "qpid/broker/DeliverableMessage.h" #include "qpid/log/Statement.h" #include <qpid/broker/Message.h> @@ -247,18 +246,13 @@ void ManagementAgent::registerEvent (const string& packageName, } // Deprecated: V1 objects -ObjectId ManagementAgent::addObject(ManagementObject* object, uint64_t persistId) +ObjectId ManagementAgent::addObject(ManagementObject* object, uint64_t persistId, bool persistent) { uint16_t sequence; uint64_t objectNum; - if (persistId == 0) { - sequence = bootSequence; - objectNum = nextObjectId++; - } else { - sequence = 0; - objectNum = persistId; - } + sequence = persistent ? 0 : bootSequence; + objectNum = persistId ? persistId : nextObjectId++; ObjectId objId(0 /*flags*/, sequence, brokerBank, objectNum); objId.setV2Key(*object); // let object generate the v2 key @@ -2170,19 +2164,6 @@ ManagementObjectMap::iterator ManagementAgent::numericFind(const ObjectId& oid) return iter; } -void ManagementAgent::setAllocator(auto_ptr<IdAllocator> a) -{ - sys::Mutex::ScopedLock lock (userLock); - allocator = a; -} - -uint64_t ManagementAgent::allocateId(Manageable* object) -{ - sys::Mutex::ScopedLock lock (userLock); - if (allocator.get()) return allocator->getIdFor(object); - return 0; -} - void ManagementAgent::disallow(const string& className, const string& methodName, const string& message) { disallowed[make_pair(className, methodName)] = message; } diff --git a/cpp/src/qpid/management/ManagementAgent.h b/cpp/src/qpid/management/ManagementAgent.h index dd781c36d3..a87cc917fe 100644 --- a/cpp/src/qpid/management/ManagementAgent.h +++ b/cpp/src/qpid/management/ManagementAgent.h @@ -42,8 +42,6 @@ namespace qpid { namespace management { -struct IdAllocator; - class ManagementAgent { private: @@ -95,10 +93,11 @@ public: uint8_t* md5Sum, ManagementObject::writeSchemaCall_t schemaCall); QPID_BROKER_EXTERN ObjectId addObject (ManagementObject* object, - uint64_t persistId = 0); + uint64_t persistId = 0, + bool persistent = false); QPID_BROKER_EXTERN ObjectId addObject (ManagementObject* object, const std::string& key, - bool persistent = true); + bool persistent = false); QPID_BROKER_EXTERN void raiseEvent(const ManagementEvent& event, severity_t severity = SEV_DEFAULT); QPID_BROKER_EXTERN void clientAdded (const std::string& routingKey); @@ -113,9 +112,6 @@ public: const framing::Uuid& getUuid() const { return uuid; } - void setAllocator(std::auto_ptr<IdAllocator> allocator); - uint64_t allocateId(Manageable* object); - /** Disallow a method. Attempts to call it will receive an exception with message. */ void disallow(const std::string& className, const std::string& methodName, const std::string& message); @@ -280,8 +276,6 @@ private: const qpid::sys::AbsTime startTime; bool suppressed; - std::auto_ptr<IdAllocator> allocator; - typedef std::pair<std::string,std::string> MethodName; typedef std::map<MethodName, std::string> DisallowedMethods; DisallowedMethods disallowed; |
