diff options
author | Ted Ross <tross@apache.org> | 2008-09-03 18:01:44 +0000 |
---|---|---|
committer | Ted Ross <tross@apache.org> | 2008-09-03 18:01:44 +0000 |
commit | 13191e7951b29453c75db8384391d26f0402139d (patch) | |
tree | b3ca5bd5f9c8523924cf9d1a0fe118099bef9894 /cpp/examples/qmf-agent/example.cpp | |
parent | b8cf7ea1034fa6216183f03022c83efdb154f3ee (diff) | |
download | qpid-python-13191e7951b29453c75db8384391d26f0402139d.tar.gz |
QPID-1174 Updates to the management framework
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@691700 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/examples/qmf-agent/example.cpp')
-rw-r--r-- | cpp/examples/qmf-agent/example.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/cpp/examples/qmf-agent/example.cpp b/cpp/examples/qmf-agent/example.cpp index 35ea97d4c0..c8d63a62b9 100644 --- a/cpp/examples/qmf-agent/example.cpp +++ b/cpp/examples/qmf-agent/example.cpp @@ -89,9 +89,10 @@ public: CoreClass::CoreClass(ManagementAgent* _agent, string _name) : name(_name), agent(_agent) { + static uint64_t persistId = 0x111222333444555LL; mgmtObject = new Parent(agent, this, name); - agent->addObject(mgmtObject); + agent->addObject(mgmtObject, persistId++); mgmtObject->set_state("IDLE"); } @@ -128,6 +129,8 @@ Manageable::status_t CoreClass::ManagementMethod(uint32_t methodId, Args& args) children.push_back(child); + mgmtObject->event_childCreated(ioArgs.i_name); + return STATUS_OK; } @@ -145,7 +148,8 @@ ChildClass::ChildClass(ManagementAgent* agent, CoreClass* parent, string name) //============================================================== // Main program //============================================================== -int main(int argc, char** argv) { +int main_int(int argc, char** argv) +{ ManagementAgent::Singleton singleton; const char* host = argc>1 ? argv[1] : "127.0.0.1"; int port = argc>2 ? atoi(argv[2]) : 5672; @@ -158,7 +162,7 @@ int main(int argc, char** argv) { // Start the agent. It will attempt to make a connection to the // management broker - agent->init(string(host), port); + agent->init(string(host), port, 5, false, ".magentdata"); // Allocate some core objects CoreClass core1(agent, "Example Core Object #1"); @@ -168,4 +172,12 @@ int main(int argc, char** argv) { core1.doLoop(); } +int main(int argc, char** argv) +{ + try { + return main_int(argc, argv); + } catch(std::exception& e) { + cout << "Top Level Exception: " << e.what() << endl; + } +} |