OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BgpInstanceConfig Class Reference

#include <bgp_config.h>

Collaboration diagram for BgpInstanceConfig:

Public Types

typedef std::set< std::string > NeighborList
 
typedef std::set< std::string > RouteTargetList
 
typedef std::set
< StaticRouteConfig
StaticRouteList
 
typedef std::vector
< ServiceChainConfig
ServiceChainList
 
typedef std::vector
< AggregateRouteConfig
AggregateRouteList
 

Public Member Functions

 BgpInstanceConfig (const std::string &name)
 
virtual ~BgpInstanceConfig ()
 
const std::string & name () const
 
const NeighborListneighbor_list () const
 
void add_neighbor (const std::string &neighbor)
 
void delete_neighbor (const std::string &neighbor)
 
const RouteTargetListimport_list () const
 
void set_import_list (const RouteTargetList &import_list)
 
const RouteTargetListexport_list () const
 
void set_export_list (const RouteTargetList &export_list)
 
bool has_pnf () const
 
void set_has_pnf (bool has_pnf)
 
const std::string & virtual_network () const
 
void set_virtual_network (const std::string &virtual_network)
 
int virtual_network_index () const
 
void set_virtual_network_index (int virtual_network_index)
 
bool virtual_network_allow_transit () const
 
void set_virtual_network_allow_transit (bool allow_transit)
 
bool virtual_network_pbb_evpn_enable () const
 
void set_virtual_network_pbb_evpn_enable (bool pbb_evpn)
 
int vxlan_id () const
 
void set_vxlan_id (int vxlan_id)
 
uint64_t last_change_at () const
 
void set_last_change_at (uint64_t tstamp) const
 
const StaticRouteListstatic_routes (Address::Family family) const
 
void swap_static_routes (Address::Family family, StaticRouteList *list)
 
const ServiceChainListservice_chain_list () const
 
void swap_service_chain_list (ServiceChainList *list)
 
const ServiceChainConfigservice_chain_info (SCAddress::Family family) const
 
const RoutingPolicyConfigListrouting_policy_list () const
 
void swap_routing_policy_list (RoutingPolicyConfigList *list)
 
const AggregateRouteListaggregate_routes (Address::Family family) const
 
void swap_aggregate_routes (Address::Family family, AggregateRouteList *list)
 
void Clear ()
 
void set_index (int index)
 
int index () const
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (BgpInstanceConfig)
 

Private Attributes

std::string name_
 
NeighborList neighbor_list_
 
RouteTargetList import_list_
 
RouteTargetList export_list_
 
bool has_pnf_
 
std::string virtual_network_
 
int virtual_network_index_
 
bool virtual_network_allow_transit_
 
bool virtual_network_pbb_evpn_enable_
 
int index_
 
int vxlan_id_
 
uint64_t last_change_at_
 
StaticRouteList inet_static_routes_
 
StaticRouteList inet6_static_routes_
 
AggregateRouteList inet_aggregate_routes_
 
AggregateRouteList inet6_aggregate_routes_
 
ServiceChainList service_chain_list_
 
RoutingPolicyConfigList routing_policies_
 

Friends

class BgpInstanceConfigTest
 

Detailed Description

Definition at line 421 of file bgp_config.h.

Member Typedef Documentation

Definition at line 427 of file bgp_config.h.

typedef std::set<std::string> BgpInstanceConfig::NeighborList

Definition at line 423 of file bgp_config.h.

typedef std::set<std::string> BgpInstanceConfig::RouteTargetList

Definition at line 424 of file bgp_config.h.

Definition at line 426 of file bgp_config.h.

Definition at line 425 of file bgp_config.h.

Constructor & Destructor Documentation

BgpInstanceConfig::BgpInstanceConfig ( const std::string &  name)
explicit

Definition at line 331 of file bgp_config.cc.

BgpInstanceConfig::~BgpInstanceConfig ( )
virtual

Definition at line 342 of file bgp_config.cc.

Member Function Documentation

void BgpInstanceConfig::add_neighbor ( const std::string &  neighbor)
inline

Definition at line 435 of file bgp_config.h.

const BgpInstanceConfig::AggregateRouteList & BgpInstanceConfig::aggregate_routes ( Address::Family  family) const

Definition at line 390 of file bgp_config.cc.

void BgpInstanceConfig::Clear ( )

Definition at line 345 of file bgp_config.cc.

void BgpInstanceConfig::delete_neighbor ( const std::string &  neighbor)
inline

Definition at line 438 of file bgp_config.h.

BgpInstanceConfig::DISALLOW_COPY_AND_ASSIGN ( BgpInstanceConfig  )
private
const RouteTargetList& BgpInstanceConfig::export_list ( ) const
inline

Definition at line 446 of file bgp_config.h.

bool BgpInstanceConfig::has_pnf ( ) const
inline

Definition at line 451 of file bgp_config.h.

const RouteTargetList& BgpInstanceConfig::import_list ( ) const
inline

Definition at line 442 of file bgp_config.h.

int BgpInstanceConfig::index ( ) const
inline

Definition at line 509 of file bgp_config.h.

uint64_t BgpInstanceConfig::last_change_at ( ) const
inline

Definition at line 482 of file bgp_config.h.

const std::string& BgpInstanceConfig::name ( ) const
inline

Definition at line 432 of file bgp_config.h.

const NeighborList& BgpInstanceConfig::neighbor_list ( ) const
inline

Definition at line 434 of file bgp_config.h.

const RoutingPolicyConfigList& BgpInstanceConfig::routing_policy_list ( ) const
inline

Definition at line 497 of file bgp_config.h.

const ServiceChainConfig * BgpInstanceConfig::service_chain_info ( SCAddress::Family  family) const

Definition at line 379 of file bgp_config.cc.

const ServiceChainList& BgpInstanceConfig::service_chain_list ( ) const
inline

Definition at line 488 of file bgp_config.h.

void BgpInstanceConfig::set_export_list ( const RouteTargetList export_list)
inline

Definition at line 447 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_has_pnf ( bool  has_pnf)
inline

Definition at line 452 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_import_list ( const RouteTargetList import_list)
inline

Definition at line 443 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_index ( int  index)
inline

Definition at line 508 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_last_change_at ( uint64_t  tstamp) const
inline

Definition at line 483 of file bgp_config.h.

void BgpInstanceConfig::set_virtual_network ( const std::string &  virtual_network)
inline

Definition at line 455 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_virtual_network_allow_transit ( bool  allow_transit)
inline

Definition at line 467 of file bgp_config.h.

void BgpInstanceConfig::set_virtual_network_index ( int  virtual_network_index)
inline

Definition at line 460 of file bgp_config.h.

Here is the call graph for this function:

void BgpInstanceConfig::set_virtual_network_pbb_evpn_enable ( bool  pbb_evpn)
inline

Definition at line 474 of file bgp_config.h.

void BgpInstanceConfig::set_vxlan_id ( int  vxlan_id)
inline

Definition at line 480 of file bgp_config.h.

Here is the call graph for this function:

const BgpInstanceConfig::StaticRouteList & BgpInstanceConfig::static_routes ( Address::Family  family) const

Definition at line 359 of file bgp_config.cc.

void BgpInstanceConfig::swap_aggregate_routes ( Address::Family  family,
AggregateRouteList list 
)

Definition at line 399 of file bgp_config.cc.

void BgpInstanceConfig::swap_routing_policy_list ( RoutingPolicyConfigList list)
inline

Definition at line 500 of file bgp_config.h.

void BgpInstanceConfig::swap_service_chain_list ( ServiceChainList list)
inline

Definition at line 491 of file bgp_config.h.

void BgpInstanceConfig::swap_static_routes ( Address::Family  family,
StaticRouteList list 
)

Definition at line 369 of file bgp_config.cc.

const std::string& BgpInstanceConfig::virtual_network ( ) const
inline

Definition at line 454 of file bgp_config.h.

bool BgpInstanceConfig::virtual_network_allow_transit ( ) const
inline

Definition at line 464 of file bgp_config.h.

int BgpInstanceConfig::virtual_network_index ( ) const
inline

Definition at line 459 of file bgp_config.h.

bool BgpInstanceConfig::virtual_network_pbb_evpn_enable ( ) const
inline

Definition at line 471 of file bgp_config.h.

int BgpInstanceConfig::vxlan_id ( ) const
inline

Definition at line 479 of file bgp_config.h.

Friends And Related Function Documentation

friend class BgpInstanceConfigTest
friend

Definition at line 512 of file bgp_config.h.

Member Data Documentation

RouteTargetList BgpInstanceConfig::export_list_
private

Definition at line 517 of file bgp_config.h.

bool BgpInstanceConfig::has_pnf_
private

Definition at line 518 of file bgp_config.h.

RouteTargetList BgpInstanceConfig::import_list_
private

Definition at line 516 of file bgp_config.h.

int BgpInstanceConfig::index_
private

Definition at line 523 of file bgp_config.h.

AggregateRouteList BgpInstanceConfig::inet6_aggregate_routes_
private

Definition at line 529 of file bgp_config.h.

StaticRouteList BgpInstanceConfig::inet6_static_routes_
private

Definition at line 527 of file bgp_config.h.

AggregateRouteList BgpInstanceConfig::inet_aggregate_routes_
private

Definition at line 528 of file bgp_config.h.

StaticRouteList BgpInstanceConfig::inet_static_routes_
private

Definition at line 526 of file bgp_config.h.

uint64_t BgpInstanceConfig::last_change_at_
mutableprivate

Definition at line 525 of file bgp_config.h.

std::string BgpInstanceConfig::name_
private

Definition at line 514 of file bgp_config.h.

NeighborList BgpInstanceConfig::neighbor_list_
private

Definition at line 515 of file bgp_config.h.

RoutingPolicyConfigList BgpInstanceConfig::routing_policies_
private

Definition at line 531 of file bgp_config.h.

ServiceChainList BgpInstanceConfig::service_chain_list_
private

Definition at line 530 of file bgp_config.h.

std::string BgpInstanceConfig::virtual_network_
private

Definition at line 519 of file bgp_config.h.

bool BgpInstanceConfig::virtual_network_allow_transit_
private

Definition at line 521 of file bgp_config.h.

int BgpInstanceConfig::virtual_network_index_
private

Definition at line 520 of file bgp_config.h.

bool BgpInstanceConfig::virtual_network_pbb_evpn_enable_
private

Definition at line 522 of file bgp_config.h.

int BgpInstanceConfig::vxlan_id_
private

Definition at line 524 of file bgp_config.h.


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