TransientTopicManagerI.h
Go to the documentation of this file.
1 // **********************************************************************
2 //
3 // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4 //
5 // This copy of Ice is licensed to you under the terms described in the
6 // ICE_LICENSE file included in this distribution.
7 //
8 // **********************************************************************
9 
10 #ifndef TRANSIENT_TOPIC_MANAGER_I_H
11 #define TRANSIENT_TOPIC_MANAGER_I_H
12 
14 
15 namespace IceStorm
16 {
17 
18  //
19  // Forward declarations.
20  //
21  class Instance;
23 
24  class TransientTopicImpl;
26 
27  //
28  // TopicManager implementation.
29  //
31  {
32  public:
33 
36 
37  // TopicManager methods.
38  virtual TopicPrx create(const std::string&, const Ice::Current&);
39  virtual TopicPrx retrieve(const std::string&, const Ice::Current&) const;
40  virtual TopicDict retrieveAll(const Ice::Current&) const;
41  virtual Ice::SliceChecksumDict getSliceChecksums(const Ice::Current&) const;
42  virtual IceStormElection::NodePrx getReplicaNode(const Ice::Current&) const;
43 
44  void reap();
45 
46  void shutdown();
47 
48  Ice::ObjectPtr getServant() const;
49 
50  private:
51 
52  const InstancePtr _instance;
53  std::map<std::string, TransientTopicImplPtr> _topics;
54  };
56 
57 } // End namespace IceStorm
58 
59 #endif
IceStorm
Definition: DBTypes.ice:22
IceStorm::TransientTopicManagerImpl::retrieveAll
virtual TopicDict retrieveAll(const Ice::Current &) const
Definition: TransientTopicManagerI.cpp:97
IceStorm::TransientTopicManagerImpl::create
virtual TopicPrx create(const std::string &, const Ice::Current &)
Definition: TransientTopicManagerI.cpp:35
IceStormInternal.h
IceStorm::TopicManagerInternal
Internal operations for a topic manager.
Definition: IceStormInternal.h:773
IceStorm::TransientTopicManagerImpl::~TransientTopicManagerImpl
~TransientTopicManagerImpl()
Definition: TransientTopicManagerI.cpp:30
IceStorm::TopicManagerInternal::getReplicaNode
idempotent IceStormElection::Node * getReplicaNode()
Return the replica node proxy for this topic manager.
IceStorm::InstancePtr
IceUtil::Handle< Instance > InstancePtr
Definition: Instance.h:126
IceStorm::TransientTopicManagerImpl
Definition: TransientTopicManagerI.h:30
IceStorm::TransientTopicManagerImplPtr
IceUtil::Handle< TransientTopicManagerImpl > TransientTopicManagerImplPtr
Definition: TransientTopicManagerI.h:55
IceUtil::Handle
Definition: forward_declarations.h:29
IceInternal::ProxyHandle< ::IceProxy::IceStorm::Topic >
armarx::Mutex
boost::mutex Mutex
Definition: Synchronization.h:131
IceStorm::TransientTopicManagerImpl::reap
void reap()
Definition: TransientTopicManagerI.cpp:131
IceStorm::TransientTopicManagerImpl::shutdown
void shutdown()
Definition: TransientTopicManagerI.cpp:167
armarx::aron::type::ObjectPtr
std::shared_ptr< Object > ObjectPtr
Definition: Object.h:36
IceStorm::TransientTopicImplPtr
IceUtil::Handle< TransientTopicImpl > TransientTopicImplPtr
Definition: TransientTopicI.h:77
IceStorm::TransientTopicManagerImpl::getSliceChecksums
virtual Ice::SliceChecksumDict getSliceChecksums(const Ice::Current &) const
Definition: TransientTopicManagerI.cpp:119
IceStorm::TransientTopicManagerImpl::TransientTopicManagerImpl
TransientTopicManagerImpl(const InstancePtr &)
Definition: TransientTopicManagerI.cpp:25
IceStorm::TransientTopicManagerImpl::getServant
Ice::ObjectPtr getServant() const
IceStorm::TransientTopicManagerImpl::retrieve
virtual TopicPrx retrieve(const std::string &, const Ice::Current &) const
Definition: TransientTopicManagerI.cpp:75