OpenSDN source code
VirtualGateway Class Reference

#include <vgw.h>

Collaboration diagram for VirtualGateway:

Public Member Functions

 VirtualGateway (Agent *agent)
 
 ~VirtualGateway ()
 
void InterfaceNotify (DBTablePartBase *partition, DBEntryBase *entry)
 
void Init ()
 
void Shutdown ()
 
void CreateVrf ()
 
void CreateVrf (const std::string &vrf_name)
 
void DeleteVrf (const std::string &vrf_name)
 
void CreateInterfaces (Interface::Transport transport)
 
void CreateInterface (const std::string &interface_name, const std::string &vrf_name, Interface::Transport transport)
 
void DeleteInterface (const std::string &interface_name)
 
void SubnetUpdate (const VirtualGatewayConfig &vgw, const VirtualGatewayConfig::SubnetList &add_list, const VirtualGatewayConfig::SubnetList &del_list)
 
void RouteUpdate (const VirtualGatewayConfig &vgw, const VirtualGatewayConfig::SubnetList &new_list, const VirtualGatewayConfig::SubnetList &add_list, const VirtualGatewayConfig::SubnetList &del_list, bool add_default_route)
 
void RegisterDBClients ()
 

Private Member Functions

void SubnetUpdate (const std::string &vrf, InetUnicastAgentRouteTable *rt_table, const VirtualGatewayConfig::SubnetList &add_list, const VirtualGatewayConfig::SubnetList &del_list)
 
void RouteUpdate (const VirtualGatewayConfig &vgw, uint32_t new_list_size, InetUnicastAgentRouteTable *rt_table, const VirtualGatewayConfig::SubnetList &add_list, const VirtualGatewayConfig::SubnetList &del_list, bool add_default_route, bool del_default_route)
 
 DISALLOW_COPY_AND_ASSIGN (VirtualGateway)
 

Private Attributes

Agent * agent_
 
DBTableBase::ListenerId listener_id_
 
VirtualGatewayConfigTable * vgw_config_table_
 

Detailed Description

Definition at line 10 of file vgw.h.

Constructor & Destructor Documentation

◆ VirtualGateway()

VirtualGateway::VirtualGateway ( Agent *  agent)

Definition at line 27 of file vgw.cc.

Here is the call graph for this function:

◆ ~VirtualGateway()

VirtualGateway::~VirtualGateway ( )
inline

Definition at line 13 of file vgw.h.

Member Function Documentation

◆ CreateInterface()

void VirtualGateway::CreateInterface ( const std::string &  interface_name,
const std::string &  vrf_name,
Interface::Transport  transport 
)

Definition at line 135 of file vgw.cc.

Here is the call graph for this function:

◆ CreateInterfaces()

void VirtualGateway::CreateInterfaces ( Interface::Transport  transport)

Definition at line 123 of file vgw.cc.

Here is the call graph for this function:

◆ CreateVrf() [1/2]

void VirtualGateway::CreateVrf ( )

Definition at line 102 of file vgw.cc.

Here is the call graph for this function:

◆ CreateVrf() [2/2]

void VirtualGateway::CreateVrf ( const std::string &  vrf_name)

Definition at line 113 of file vgw.cc.

Here is the call graph for this function:

◆ DeleteInterface()

void VirtualGateway::DeleteInterface ( const std::string &  interface_name)

Definition at line 144 of file vgw.cc.

Here is the call graph for this function:

◆ DeleteVrf()

void VirtualGateway::DeleteVrf ( const std::string &  vrf_name)

Definition at line 118 of file vgw.cc.

Here is the call graph for this function:

◆ DISALLOW_COPY_AND_ASSIGN()

VirtualGateway::DISALLOW_COPY_AND_ASSIGN ( VirtualGateway  )
private

◆ Init()

void VirtualGateway::Init ( )

Definition at line 244 of file vgw.cc.

◆ InterfaceNotify()

void VirtualGateway::InterfaceNotify ( DBTablePartBase *  partition,
DBEntryBase *  entry 
)

Definition at line 37 of file vgw.cc.

Here is the call graph for this function:

◆ RegisterDBClients()

void VirtualGateway::RegisterDBClients ( )

Definition at line 96 of file vgw.cc.

Here is the call graph for this function:

◆ RouteUpdate() [1/2]

void VirtualGateway::RouteUpdate ( const VirtualGatewayConfig &  vgw,
const VirtualGatewayConfig::SubnetList &  new_list,
const VirtualGatewayConfig::SubnetList &  add_list,
const VirtualGatewayConfig::SubnetList &  del_list,
bool  add_default_route 
)

Definition at line 189 of file vgw.cc.

Here is the call graph for this function:

◆ RouteUpdate() [2/2]

void VirtualGateway::RouteUpdate ( const VirtualGatewayConfig &  vgw,
uint32_t  new_list_size,
InetUnicastAgentRouteTable *  rt_table,
const VirtualGatewayConfig::SubnetList &  add_list,
const VirtualGatewayConfig::SubnetList &  del_list,
bool  add_default_route,
bool  del_default_route 
)
private

Definition at line 205 of file vgw.cc.

Here is the call graph for this function:

◆ Shutdown()

void VirtualGateway::Shutdown ( void  )

Definition at line 247 of file vgw.cc.

Here is the call graph for this function:

◆ SubnetUpdate() [1/2]

void VirtualGateway::SubnetUpdate ( const std::string &  vrf,
InetUnicastAgentRouteTable *  rt_table,
const VirtualGatewayConfig::SubnetList &  add_list,
const VirtualGatewayConfig::SubnetList &  del_list 
)
private

Definition at line 164 of file vgw.cc.

Here is the call graph for this function:

◆ SubnetUpdate() [2/2]

void VirtualGateway::SubnetUpdate ( const VirtualGatewayConfig &  vgw,
const VirtualGatewayConfig::SubnetList &  add_list,
const VirtualGatewayConfig::SubnetList &  del_list 
)

Definition at line 149 of file vgw.cc.

Here is the call graph for this function:

Member Data Documentation

◆ agent_

Agent* VirtualGateway::agent_
private

Definition at line 48 of file vgw.h.

◆ listener_id_

DBTableBase::ListenerId VirtualGateway::listener_id_
private

Definition at line 49 of file vgw.h.

◆ vgw_config_table_

VirtualGatewayConfigTable* VirtualGateway::vgw_config_table_
private

Definition at line 50 of file vgw.h.


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