5 #include <boost/uuid/uuid_io.hpp>
24 inet4_table_(inet4_table) {
48 for (Route::PathList::iterator it = bridge_entry->
GetPathList().begin();
66 partition->
Notify(bridge_entry);
81 vrf_listener_id_(), active_tsn_servers_() {
101 RegisterWalker(static_cast<AgentRouteWalker *>(
walker_.get()));
134 std::vector<std::string>::iterator it =
137 std::string master =
"";
151 std::string new_master =
"";
155 if (master == new_master)
159 if (master == vhost_addr) {
162 if (new_master == vhost_addr) {
MulticastHandler * multicast() const
virtual const std::string GetAddressString() const
TsnElectorState(AgentRouteTable *table, TsnElector *elector)
TsnElectorWalker(const std::string &name, Agent *agent)
virtual ~TsnElectorState()
AgentRouteTable * inet4_table_
bool IsTsnNoForwardingEnabled() const
AgentRouteWalkerPtr walker_
Agent supports multiple route tables - Inet-unicast (IPv4/IPv6), Inet-multicast, bridge, EVPN (Type2/Type5). This base class contains common code for all types of route tables.
void LeaveTsnMastership()
void SetState(DBTableBase *tbl_base, ListenerId listener, DBState *state)
bool IsConfiguredTsnHostRoute(std::string addr) const
bool is_multicast() const
const ManagedPhysicalDevicesList & physical_devices() const
InetUnicastAgentRouteTable * GetInet4UnicastRouteTable() const
const string & GetName() const
const Ip4Address & vhost_addr() const
void Unregister(ListenerId listener)
TsnElectorWalker * walker()
ListenerId Register(ChangeCallback callback, const std::string &name="unspecified")
virtual bool RouteWalkNotify(DBTablePartBase *partition, DBEntryBase *e)
const Type GetType() const
NextHop * nexthop() const
const ManagedPhysicalDevicesList & ManagedPhysicalDevices() const
AgentRouteWalkerManager * agent_route_walk_manager() const
virtual bool ReComputePathAdd(AgentPath *path)
DBTable::ListenerId vrf_listener_id_
const Peer * peer() const
void Notify(DBTablePartBase *partition, DBEntryBase *e)
COMPOSITETYPE composite_nh_type() const
AgentParam * params() const
void ClearState(DBTableBase *tbl_base, ListenerId listener)
virtual const PrefixType & prefix_address() const
Returns the value of a stored prefix address (IPv4, IPv6 or MAC address)
void RouteNotify(DBTablePartBase *partition, DBEntryBase *e)
std::vector< std::string > ManagedPhysicalDevicesList
VrfTable * vrf_table() const
void set_inactive(bool inactive)
void AcquireTsnMastership()
virtual ~TsnElectorWalker()
DBTable::ListenerId inet4_id_
AgentMode agent_mode() const
void Notify(DBEntryBase *entry)
std::vector< std::string > active_tsn_servers_
const PathList & GetPathList() const
const std::string & fabric_policy_vrf_name() const