MADARA  3.4.1
madara::filters::EndpointDiscovery Class Reference

Filter for discovering remote hosts that have sent messages. More...

#include <EndpointDiscovery.h>

Inheritance diagram for madara::filters::EndpointDiscovery:
madara::filters::AggregateFilter

Public Member Functions

 EndpointDiscovery (const std::string &prefix=".endpoints", knowledge::KnowledgeRecord::Integer heart_beat=-1)
 Constructor. More...
 
virtual ~EndpointDiscovery ()
 Destructor. More...
 
virtual void filter (knowledge::KnowledgeMap &records, const transport::TransportContext &transport_context, knowledge::Variables &vars)
 Calls the main logic of the filter. More...
 

Protected Attributes

knowledge::containers::Map endpoints_
 A map of discovered peers. More...
 
knowledge::KnowledgeRecord::Integer heart_beat_
 The time to keep record of a peer. More...
 
bool initialized_
 Tracks if the peers_ map has been initialized. More...
 
knowledge::KnowledgeRecord::Integer last_clear_
 The time of the last clear of the peer_list. More...
 
std::string prefix_
 The context. More...
 

Detailed Description

Filter for discovering remote hosts that have sent messages.

Definition at line 36 of file EndpointDiscovery.h.

Constructor & Destructor Documentation

◆ EndpointDiscovery()

madara::filters::EndpointDiscovery::EndpointDiscovery ( const std::string &  prefix = ".endpoints",
knowledge::KnowledgeRecord::Integer  heart_beat = -1 
)

Constructor.

Parameters
prefixthe prefix to store discovery information into the knowledge base
heart_beatthe time, in seconds, before dropping a peer from discovery. Negative values indicate that peers should never be erased.

Definition at line 8 of file EndpointDiscovery.cpp.

◆ ~EndpointDiscovery()

madara::filters::EndpointDiscovery::~EndpointDiscovery ( )
virtual

Destructor.

Definition at line 17 of file EndpointDiscovery.cpp.

Member Function Documentation

◆ filter()

void madara::filters::EndpointDiscovery::filter ( knowledge::KnowledgeMap records,
const transport::TransportContext transport_context,
knowledge::Variables vars 
)
virtual

Calls the main logic of the filter.

Parameters
recordsthe aggregate records vector
transport_contextcontext for querying transport state
varscontext for querying current program state

Implements madara::filters::AggregateFilter.

Definition at line 19 of file EndpointDiscovery.cpp.

Member Data Documentation

◆ endpoints_

knowledge::containers::Map madara::filters::EndpointDiscovery::endpoints_
protected

A map of discovered peers.

Definition at line 79 of file EndpointDiscovery.h.

◆ heart_beat_

knowledge::KnowledgeRecord::Integer madara::filters::EndpointDiscovery::heart_beat_
protected

The time to keep record of a peer.

Definition at line 84 of file EndpointDiscovery.h.

◆ initialized_

bool madara::filters::EndpointDiscovery::initialized_
protected

Tracks if the peers_ map has been initialized.

Definition at line 69 of file EndpointDiscovery.h.

◆ last_clear_

knowledge::KnowledgeRecord::Integer madara::filters::EndpointDiscovery::last_clear_
protected

The time of the last clear of the peer_list.

Definition at line 89 of file EndpointDiscovery.h.

◆ prefix_

std::string madara::filters::EndpointDiscovery::prefix_
protected

The context.

Definition at line 74 of file EndpointDiscovery.h.


The documentation for this class was generated from the following files: