summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2008-11-10 17:53:27 +0000
committerTed Ross <tross@apache.org>2008-11-10 17:53:27 +0000
commit2b31a560b8a78e6533c935cf612dbd7358e02aec (patch)
tree10f4876f6e41d3ce6bad70a9bd8387669a37044b /cpp/src
parentf6f56f56ebb092d8808119a66ced9fcd0399b238 (diff)
downloadqpid-python-2b31a560b8a78e6533c935cf612dbd7358e02aec.tar.gz
QPID-1446 - A more efficient data structure for freeing management objects.
Namespace cleanup. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@712709 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qpid/agent/ManagementAgentImpl.cpp36
-rw-r--r--cpp/src/qpid/management/ManagementBroker.cpp37
2 files changed, 34 insertions, 39 deletions
diff --git a/cpp/src/qpid/agent/ManagementAgentImpl.cpp b/cpp/src/qpid/agent/ManagementAgentImpl.cpp
index a21a4cd492..06acf6b0e3 100644
--- a/cpp/src/qpid/agent/ManagementAgentImpl.cpp
+++ b/cpp/src/qpid/agent/ManagementAgentImpl.cpp
@@ -36,6 +36,7 @@ using namespace qpid::client;
using namespace qpid::framing;
using namespace qpid::management;
using namespace qpid::sys;
+using namespace std;
using std::stringstream;
using std::ofstream;
using std::ifstream;
@@ -140,8 +141,8 @@ void ManagementAgentImpl::init(string brokerHost,
storeData(true);
}
-void ManagementAgentImpl::registerClass(std::string& packageName,
- std::string& className,
+void ManagementAgentImpl::registerClass(string& packageName,
+ string& className,
uint8_t* md5Sum,
management::ManagementObject::writeSchemaCall_t schemaCall)
{
@@ -150,8 +151,8 @@ void ManagementAgentImpl::registerClass(std::string& packageName,
addClassLocal(ManagementItem::CLASS_KIND_TABLE, pIter, className, md5Sum, schemaCall);
}
-void ManagementAgentImpl::registerEvent(std::string& packageName,
- std::string& eventName,
+void ManagementAgentImpl::registerEvent(string& packageName,
+ string& eventName,
uint8_t* md5Sum,
management::ManagementObject::writeSchemaCall_t schemaCall)
{
@@ -399,7 +400,7 @@ void ManagementAgentImpl::invokeMethodRequest(Buffer& inBuffer, uint32_t sequenc
try {
outBuffer.record();
iter->second->doMethod(methodName, inBuffer, outBuffer);
- } catch(std::exception& e) {
+ } catch(exception& e) {
outBuffer.restore();
outBuffer.putLong(Manageable::STATUS_EXCEPTION);
outBuffer.putMediumString(e.what());
@@ -534,8 +535,8 @@ ManagementAgentImpl::PackageMap::iterator ManagementAgentImpl::findOrAddPackage(
return pIter;
// No such package found, create a new map entry.
- std::pair<PackageMap::iterator, bool> result =
- packages.insert(std::pair<string, ClassMap>(name, ClassMap()));
+ pair<PackageMap::iterator, bool> result =
+ packages.insert(pair<string, ClassMap>(name, ClassMap()));
// Publish a package-indication message
Buffer outBuffer(outputBuffer, MA_BUFFER_SIZE);
@@ -577,7 +578,7 @@ void ManagementAgentImpl::addClassLocal(uint8_t classKind,
return;
// No such class found, create a new class with local information.
- cMap.insert(std::pair<SchemaClassKey, SchemaClass>(key, SchemaClass(schemaCall, classKind)));
+ cMap.insert(pair<SchemaClassKey, SchemaClass>(key, SchemaClass(schemaCall, classKind)));
}
void ManagementAgentImpl::encodePackageIndication(Buffer& buf,
@@ -605,7 +606,7 @@ void ManagementAgentImpl::periodicProcessing()
char msgChars[BUFSIZE];
uint32_t contentSize;
string routingKey;
- std::list<ObjectId> deleteList;
+ list<pair<ObjectId, ManagementObject*> > deleteList;
if (!connected)
return;
@@ -681,7 +682,7 @@ void ManagementAgentImpl::periodicProcessing()
}
if (object->isDeleted())
- deleteList.push_back(iter->first);
+ deleteList.push_back(pair<ObjectId, ManagementObject*>(iter->first, object));
if (msgBuffer.available() < (BUFSIZE / 2))
break;
@@ -697,14 +698,11 @@ void ManagementAgentImpl::periodicProcessing()
}
// Delete flagged objects
- for (std::list<ObjectId>::reverse_iterator iter = deleteList.rbegin();
+ for (list<pair<ObjectId, ManagementObject*> >::reverse_iterator iter = deleteList.rbegin();
iter != deleteList.rend();
iter++) {
- ManagementObjectMap::iterator miter = managementObjects.find(*iter);
- if (miter != managementObjects.end()) {
- delete miter->second;
- managementObjects.erase(*iter);
- }
+ delete iter->second;
+ managementObjects.erase(iter->first);
}
deleteList.clear();
@@ -744,7 +742,7 @@ void ManagementAgentImpl::ConnectionThread::run()
try {
Mutex::ScopedUnlock _unlock(connLock);
subscriptions->run();
- } catch (std::exception) {}
+ } catch (exception) {}
if (agent.debugLevel)
cout << "QMF Agent connection has been lost" << endl;
@@ -757,7 +755,7 @@ void ManagementAgentImpl::ConnectionThread::run()
session.close();
connection.close();
}
- } catch (std::exception &e) {
+ } catch (exception &e) {
if (delay < delayMax)
delay *= delayFactor;
if (agent.debugLevel)
@@ -804,7 +802,7 @@ void ManagementAgentImpl::ConnectionThread::sendBuffer(Buffer& buf,
msg.setData(data);
try {
session.messageTransfer(arg::content=msg, arg::destination=exchange);
- } catch(std::exception&) {}
+ } catch(exception&) {}
}
void ManagementAgentImpl::ConnectionThread::bindToBank(uint32_t brokerBank, uint32_t agentBank)
diff --git a/cpp/src/qpid/management/ManagementBroker.cpp b/cpp/src/qpid/management/ManagementBroker.cpp
index a9c67ff1b9..e2c735e660 100644
--- a/cpp/src/qpid/management/ManagementBroker.cpp
+++ b/cpp/src/qpid/management/ManagementBroker.cpp
@@ -322,7 +322,7 @@ void ManagementBroker::sendBuffer(Buffer& buf,
DeliverableMessage deliverable (msg);
try {
exchange->route(deliverable, routingKey, 0);
- } catch(std::exception&) {}
+ } catch(exception&) {}
}
void ManagementBroker::moveNewObjectsLH()
@@ -342,7 +342,7 @@ void ManagementBroker::periodicProcessing (void)
char msgChars[BUFSIZE];
uint32_t contentSize;
string routingKey;
- std::list<ObjectId> deleteList;
+ list<pair<ObjectId, ManagementObject*> > deleteList;
{
Buffer msgBuffer(msgChars, BUFSIZE);
@@ -402,19 +402,16 @@ void ManagementBroker::periodicProcessing (void)
sendBuffer (msgBuffer, contentSize, mExchange, routingKey);
}
- if (object->isDeleted ())
- deleteList.push_back (iter->first);
+ if (object->isDeleted())
+ deleteList.push_back(pair<ObjectId, ManagementObject*>(iter->first, object));
}
// Delete flagged objects
- for (std::list<ObjectId>::reverse_iterator iter = deleteList.rbegin ();
- iter != deleteList.rend ();
+ for (list<pair<ObjectId, ManagementObject*> >::reverse_iterator iter = deleteList.rbegin();
+ iter != deleteList.rend();
iter++) {
- ManagementObjectMap::iterator miter = managementObjects.find(*iter);
- if (miter != managementObjects.end()) {
- delete miter->second;
- managementObjects.erase(*iter);
- }
+ delete iter->second;
+ managementObjects.erase(iter->first);
}
if (!deleteList.empty()) {
@@ -493,7 +490,7 @@ void ManagementBroker::handleMethodRequestLH (Buffer& inBuffer, string replyToKe
if (acl != 0) {
string userId = ((const qpid::broker::ConnectionState*) connToken)->getUserId();
- std::map<acl::Property, string> params;
+ map<acl::Property, string> params;
params[acl::PROP_SCHEMAPACKAGE] = packageName;
params[acl::PROP_SCHEMACLASS] = className;
@@ -521,7 +518,7 @@ void ManagementBroker::handleMethodRequestLH (Buffer& inBuffer, string replyToKe
try {
outBuffer.record();
iter->second->doMethod(methodName, inBuffer, outBuffer);
- } catch(std::exception& e) {
+ } catch(exception& e) {
outBuffer.restore();
outBuffer.putLong(Manageable::STATUS_EXCEPTION);
outBuffer.putMediumString(e.what());
@@ -567,7 +564,7 @@ void ManagementBroker::handlePackageQueryLH (Buffer&, string replyToKey, uint32_
void ManagementBroker::handlePackageIndLH (Buffer& inBuffer, string /*replyToKey*/, uint32_t /*sequence*/)
{
- std::string packageName;
+ string packageName;
inBuffer.getShortString(packageName);
findOrAddPackageLH(packageName);
@@ -575,7 +572,7 @@ void ManagementBroker::handlePackageIndLH (Buffer& inBuffer, string /*replyToKey
void ManagementBroker::handleClassQueryLH(Buffer& inBuffer, string replyToKey, uint32_t sequence)
{
- std::string packageName;
+ string packageName;
inBuffer.getShortString(packageName);
PackageMap::iterator pIter = packages.find(packageName);
@@ -604,7 +601,7 @@ void ManagementBroker::handleClassQueryLH(Buffer& inBuffer, string replyToKey, u
void ManagementBroker::handleClassIndLH (Buffer& inBuffer, string replyToKey, uint32_t)
{
- std::string packageName;
+ string packageName;
SchemaClassKey key;
uint8_t kind = inBuffer.getOctet();
@@ -907,7 +904,7 @@ bool ManagementBroker::authorizeAgentMessageLH(Message& msg)
uint8_t hash[16];
string methodName;
- std::map<acl::Property, string> params;
+ map<acl::Property, string> params;
ObjectId objId(inBuffer);
inBuffer.getShortString(packageName);
inBuffer.getShortString(className);
@@ -983,7 +980,7 @@ void ManagementBroker::dispatchAgentCommandLH(Message& msg)
else if (opcode == 'M') handleMethodRequestLH (inBuffer, replyToKey, sequence, msg.getPublisher());
}
-ManagementBroker::PackageMap::iterator ManagementBroker::findOrAddPackageLH(std::string name)
+ManagementBroker::PackageMap::iterator ManagementBroker::findOrAddPackageLH(string name)
{
PackageMap::iterator pIter = packages.find (name);
if (pIter != packages.end ())
@@ -1095,7 +1092,7 @@ size_t ManagementBroker::validateTableSchema(Buffer& inBuffer)
aft.decode(inBuffer);
}
}
- } catch (std::exception& /*e*/) {
+ } catch (exception& /*e*/) {
return 0;
}
@@ -1127,7 +1124,7 @@ size_t ManagementBroker::validateEventSchema(Buffer& inBuffer)
FieldTable ft;
ft.decode(inBuffer);
}
- } catch (std::exception& /*e*/) {
+ } catch (exception& /*e*/) {
return 0;
}