Fawkes API
Fawkes Development Version
|
24 #ifndef _PLUGINS_GOSSIP_GOSSIP_GOSSIP_GROUP_MANAGER_H_
25 #define _PLUGINS_GOSSIP_GOSSIP_GOSSIP_GROUP_MANAGER_H_
27 #include <core/utils/refptr.h>
36 class ServicePublisher;
37 class GossipAspectIniFin;
45 std::string & broadcast_address,
46 unsigned short broadcast_port);
48 std::string & broadcast_address,
69 std::map<std::string, GossipGroupConfiguration> &initial_groups);
79 std::string service_name_;
81 std::map<std::string, RefPtr<GossipGroup>> groups_;
std::string crypto_key
encryption key
unsigned short recv_port
UDP port to list on for messages.
RefPtr<> is a reference-counting shared smartpointer.
Abstract class for a Gossip group manager.
virtual RefPtr< GossipGroup > join_group(const std::string &name)
Join a group.
std::string name
name of the group
virtual void leave_group(RefPtr< GossipGroup > &group)
Leave a gossip group.
GossipGroupConfiguration()
Constructor.
GossipGroupConfiguration & operator=(const GossipGroupConfiguration &c)
Assignment operator.
unsigned short send_port
UDP port to send messages to.
Group configuration for initial groups.
Fawkes library namespace.
Service publisher interface.
std::string crypto_cipher
encryption cipher
std::string broadcast_addr
Broadcast IP Addr.
GossipAspect initializer/finalizer.
virtual ~GossipGroupManager()
Destructor.
GossipGroupManager(std::string &service_name, ServicePublisher *service_publisher, std::map< std::string, GossipGroupConfiguration > &initial_groups)
Constructor.