5 #ifndef vnsw_agent_ksync_vxlan_route_h
6 #define vnsw_agent_ksync_vxlan_route_h
127 virtual std::string
ToString()
const;
132 virtual bool Add() = 0;
134 virtual bool Change() = 0;
136 virtual bool Delete() = 0;
150 #endif // vnsw_agent_ksync_vxlan_route_h
DBTableBase::ListenerId vrf_listener_id_
DISALLOW_COPY_AND_ASSIGN(KSyncVxlanRouteEntry)
DISALLOW_COPY_AND_ASSIGN(KSyncVxlanFdbEntry)
void DelFromVrfMap(KSyncVxlanRouteObject *)
AgentRouteTable * rt_table_
virtual KSyncVxlanRouteObject * AllocBridgeRouteTable(const VrfEntry *entry)=0
KSyncVxlanRouteObject * GetRouteKSyncObject(uint32_t vrf_id) const
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.
virtual ~KSyncVxlanVrfObject()
DISALLOW_COPY_AND_ASSIGN(KSyncVxlanVrfObject)
void AddToVrfMap(uint32_t vrf_id, KSyncVxlanRouteObject *)
KSyncVxlanRouteEntry(KSyncVxlanRouteObject *obj, const KSyncVxlanRouteEntry *entry)
virtual bool CompareRoute(const KSyncVxlanRouteEntry &rhs) const =0
virtual KSyncEntry * UnresolvedReference()
const MacAddress & mac() const
virtual KSyncEntry * Alloc(const KSyncEntry *key, uint32_t index)=0
KSyncVxlanRouteObject(KSyncVxlanVrfObject *vrf, AgentRouteTable *rt_table)
Base class for all Route entries in agent.
virtual void EmptyTable()
void VrfNotify(DBTablePartBase *partition, DBEntryBase *e)
KSyncVxlan * ksync() const
virtual ~KSyncVxlanRouteObject()
virtual std::string ToString() const
const Ip4Address & tunnel_dest() const
KSyncVxlanRouteObject * ksync_object() const
virtual ~KSyncVxlanFdbEntry()
KSyncVxlanPortEntry * port_
virtual KSyncEntry * DBToKSyncEntry(const DBEntry *e)=0
boost::asio::ip::address_v4 Ip4Address
LifetimeRef< KSyncVxlanRouteObject > table_delete_ref_
virtual bool Sync(DBEntry *e)
virtual bool IsLess(const KSyncEntry &rhs) const
KSyncVxlanFdbEntry(KSyncVxlanRouteObject *obj, const KSyncVxlanFdbEntry *entry)
virtual ~KSyncVxlanRouteEntry()
const AgentRouteTable * route_table() const
VrfRouteObjectMap vrf_fdb_object_map_
std::map< uint32_t, KSyncVxlanRouteObject * > VrfRouteObjectMap
KSyncVxlanRouteObject * ksync_obj_
KSyncVxlanBridgeEntry * bridge_
KSyncDBObject * GetObject() const
DISALLOW_COPY_AND_ASSIGN(KSyncVxlanRouteObject)
const KSyncVxlanBridgeEntry * bridge() const
KSyncVxlanVrfObject(KSyncVxlan *ksync)
KSyncVxlan * ksync() const
const KSyncVxlanPortEntry * port() const
virtual bool CompareRoute(const KSyncVxlanRouteEntry &rhs) const