diff options
author | Benoit Foucher <benoit@zeroc.com> | 2005-06-17 15:25:02 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2005-06-17 15:25:02 +0000 |
commit | 2bc0f2b81423bb51c8649fefdeae23c602a56558 (patch) | |
tree | da5dc69eda441fe23345267d1606da5266413f94 /cpp/src/IceGrid/Topics.h | |
parent | build fix (diff) | |
download | ice-2bc0f2b81423bb51c8649fefdeae23c602a56558.tar.bz2 ice-2bc0f2b81423bb51c8649fefdeae23c602a56558.tar.xz ice-2bc0f2b81423bb51c8649fefdeae23c602a56558.zip |
Fixed bugs + added "update" test suite
Diffstat (limited to 'cpp/src/IceGrid/Topics.h')
-rw-r--r-- | cpp/src/IceGrid/Topics.h | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/cpp/src/IceGrid/Topics.h b/cpp/src/IceGrid/Topics.h index e62cd9d2a1e..f1a57d08292 100644 --- a/cpp/src/IceGrid/Topics.h +++ b/cpp/src/IceGrid/Topics.h @@ -25,12 +25,12 @@ public: NodeObserverTopic(const IceStorm::TopicPrx&, const NodeObserverPrx&); - virtual void init(const std::string&, const ServerDynamicInfoSeq&, const AdapterDynamicInfoSeq&, - const Ice::Current&); + virtual void init(const NodeDynamicInfoSeq&, const Ice::Current&); + virtual void initNode(const NodeDynamicInfo&, const Ice::Current&); virtual void updateServer(const std::string&, const ServerDynamicInfo&, const Ice::Current&); virtual void updateAdapter(const std::string&, const AdapterDynamicInfo&, const Ice::Current&); - void subscribe(const NodeObserverPrx&); + void subscribe(const NodeObserverPrx&, int serial = -1); void unsubscribe(const NodeObserverPrx&); void removeNode(const std::string&); @@ -40,10 +40,10 @@ private: const IceStorm::TopicPrx _topic; const NodeObserverPrx _publisher; - std::set<std::string> _nodes; - std::map<std::string, ServerDynamicInfoSeq> _servers; - std::map<std::string, AdapterDynamicInfoSeq> _adapters; + int _serial; + std::map<std::string, NodeDynamicInfo> _nodes; }; +typedef IceUtil::Handle<NodeObserverTopic> NodeObserverTopicPtr; class RegistryObserverTopic : public RegistryObserver, public IceUtil::Monitor<IceUtil::Mutex> { @@ -60,7 +60,7 @@ public: virtual void nodeUp(const std::string&, const Ice::Current&); virtual void nodeDown(const std::string&, const Ice::Current&); - void subscribe(const RegistryObserverPrx&); + void subscribe(const RegistryObserverPrx&, int = -1); void unsubscribe(const RegistryObserverPrx&); private: @@ -75,6 +75,7 @@ private: ApplicationDescriptorSeq _applications; Ice::StringSeq _nodes; }; +typedef IceUtil::Handle<RegistryObserverTopic> RegistryObserverTopicPtr; }; |