diff options
author | Benoit Foucher <benoit@zeroc.com> | 2006-04-05 12:54:15 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2006-04-05 12:54:15 +0000 |
commit | 872fd9e5dfb743a648c64bf774f6c9a76a45b651 (patch) | |
tree | c071c5dc5bd1177c0913e82cb8a3233f0da50ea6 /cpp/src/IceGrid/Topics.h | |
parent | adding timeout test (diff) | |
download | ice-872fd9e5dfb743a648c64bf774f6c9a76a45b651.tar.bz2 ice-872fd9e5dfb743a648c64bf774f6c9a76a45b651.tar.xz ice-872fd9e5dfb743a648c64bf774f6c9a76a45b651.zip |
- Added support for observing adapters and objects.
- Lots of cleanup in the IceGrid registry initilization method.
Diffstat (limited to 'cpp/src/IceGrid/Topics.h')
-rw-r--r-- | cpp/src/IceGrid/Topics.h | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/cpp/src/IceGrid/Topics.h b/cpp/src/IceGrid/Topics.h index 300000006eb..385ca475be3 100644 --- a/cpp/src/IceGrid/Topics.h +++ b/cpp/src/IceGrid/Topics.h @@ -23,7 +23,7 @@ class NodeObserverTopic : public NodeObserver, public IceUtil::Mutex { public: - NodeObserverTopic(const IceStorm::TopicPrx&, const NodeObserverPrx&); + NodeObserverTopic(const IceStorm::TopicManagerPrx&); virtual void init(const NodeDynamicInfoSeq&, const Ice::Current&); virtual void nodeUp(const NodeDynamicInfo&, const Ice::Current&); @@ -50,13 +50,22 @@ class RegistryObserverTopic : public RegistryObserver, public IceUtil::Monitor<I { public: - RegistryObserverTopic(const IceStorm::TopicPrx&, const RegistryObserverPrx&, NodeObserverTopic&); - virtual void init(int, const ApplicationDescriptorSeq&, const Ice::Current&); + RegistryObserverTopic(const IceStorm::TopicManagerPrx&); + virtual void init(int, const ApplicationDescriptorSeq&, const AdapterInfoSeq&, const ObjectInfoSeq&, + const Ice::Current&); virtual void applicationAdded(int, const ApplicationDescriptor&, const Ice::Current&); virtual void applicationRemoved(int, const std::string&, const Ice::Current&); virtual void applicationUpdated(int, const ApplicationUpdateDescriptor&, const Ice::Current&); + virtual void adapterAdded(int, const AdapterInfo&, const Ice::Current&); + virtual void adapterUpdated(int, const AdapterInfo&, const Ice::Current&); + virtual void adapterRemoved(int, const std::string&, const Ice::Current&); + + virtual void objectAdded(int, const ObjectInfo&, const Ice::Current&); + virtual void objectUpdated(int, const ObjectInfo&, const Ice::Current&); + virtual void objectRemoved(int, const Ice::Identity&, const Ice::Current&); + void subscribe(const RegistryObserverPrx&, int = -1); void unsubscribe(const RegistryObserverPrx&); @@ -66,10 +75,11 @@ private: const IceStorm::TopicPrx _topic; const RegistryObserverPrx _publisher; - NodeObserverTopic& _nodeObserver; int _serial; - ApplicationDescriptorSeq _applications; + std::map<std::string, ApplicationDescriptor> _applications; + std::map<std::string, AdapterInfo> _adapters; + std::map<Ice::Identity, ObjectInfo> _objects; }; typedef IceUtil::Handle<RegistryObserverTopic> RegistryObserverTopicPtr; |