OpenSDN source code
MatchExtCommunity Class Reference

#include <routing_policy_match.h>

Inheritance diagram for MatchExtCommunity:
Collaboration diagram for MatchExtCommunity:

Public Types

typedef std::vector< std::string > CommunityRegexStringList
 
typedef std::vector< contrail::regexCommunityRegexList
 

Public Member Functions

 MatchExtCommunity (const std::vector< std::string > &communities, bool match_all)
 
virtual ~MatchExtCommunity ()
 
virtual bool Match (const BgpRoute *route, const BgpPath *path, const BgpAttr *attr) const
 
virtual std::string ToString () const
 
virtual bool IsEqual (const RoutingPolicyMatch &community) const
 
bool match_all () const
 
const ExtCommunity::ExtCommunityListcommunities () const
 
const CommunityRegexStringListregex_strings () const
 
const CommunityRegexListregexs () const
 
bool Find (const ExtCommunity::ExtCommunityValue &community) const
 
- Public Member Functions inherited from RoutingPolicyMatch
virtual ~RoutingPolicyMatch ()
 
bool operator() (const BgpRoute *route, const BgpPath *path, const BgpAttr *attr) const
 
virtual bool operator== (const RoutingPolicyMatch &match) const
 
virtual bool operator!= (const RoutingPolicyMatch &match) const
 

Private Member Functions

bool MatchAll (const BgpAttr *attr) const
 
bool MatchAny (const BgpAttr *attr) const
 
const ExtCommunity::ExtCommunityList ExtCommunityFromString (const std::string &comm)
 

Private Attributes

bool match_all_
 
ExtCommunity::ExtCommunityList to_match_
 
CommunityRegexStringList to_match_regex_strings_
 
CommunityRegexList to_match_regexs_
 

Detailed Description

Definition at line 77 of file routing_policy_match.h.

Member Typedef Documentation

◆ CommunityRegexList

Definition at line 80 of file routing_policy_match.h.

◆ CommunityRegexStringList

typedef std::vector<std::string> MatchExtCommunity::CommunityRegexStringList

Definition at line 79 of file routing_policy_match.h.

Constructor & Destructor Documentation

◆ MatchExtCommunity()

MatchExtCommunity::MatchExtCommunity ( const std::vector< std::string > &  communities,
bool  match_all 
)

Definition at line 190 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ ~MatchExtCommunity()

MatchExtCommunity::~MatchExtCommunity ( )
virtual

Definition at line 218 of file routing_policy_match.cc.

Member Function Documentation

◆ communities()

const ExtCommunity::ExtCommunityList& MatchExtCommunity::communities ( ) const
inline

Definition at line 90 of file routing_policy_match.h.

◆ ExtCommunityFromString()

const ExtCommunity::ExtCommunityList MatchExtCommunity::ExtCommunityFromString ( const std::string &  comm)
private

◆ Find()

bool MatchExtCommunity::Find ( const ExtCommunity::ExtCommunityValue community) const

Definition at line 264 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ IsEqual()

bool MatchExtCommunity::IsEqual ( const RoutingPolicyMatch community) const
virtual

Implements RoutingPolicyMatch.

Definition at line 340 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ Match()

bool MatchExtCommunity::Match ( const BgpRoute route,
const BgpPath path,
const BgpAttr attr 
) const
virtual

Implements RoutingPolicyMatch.

Definition at line 310 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ match_all()

bool MatchExtCommunity::match_all ( ) const
inline

Definition at line 89 of file routing_policy_match.h.

◆ MatchAll()

bool MatchExtCommunity::MatchAll ( const BgpAttr attr) const
private

Definition at line 225 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ MatchAny()

bool MatchExtCommunity::MatchAny ( const BgpAttr attr) const
private

Definition at line 274 of file routing_policy_match.cc.

Here is the call graph for this function:

◆ regex_strings()

const CommunityRegexStringList& MatchExtCommunity::regex_strings ( ) const
inline

Definition at line 93 of file routing_policy_match.h.

◆ regexs()

const CommunityRegexList& MatchExtCommunity::regexs ( ) const
inline

Definition at line 96 of file routing_policy_match.h.

◆ ToString()

string MatchExtCommunity::ToString ( ) const
virtual

Implements RoutingPolicyMatch.

Definition at line 318 of file routing_policy_match.cc.

Here is the call graph for this function:

Member Data Documentation

◆ match_all_

bool MatchExtCommunity::match_all_
private

Definition at line 105 of file routing_policy_match.h.

◆ to_match_

ExtCommunity::ExtCommunityList MatchExtCommunity::to_match_
private

Definition at line 106 of file routing_policy_match.h.

◆ to_match_regex_strings_

CommunityRegexStringList MatchExtCommunity::to_match_regex_strings_
private

Definition at line 107 of file routing_policy_match.h.

◆ to_match_regexs_

CommunityRegexList MatchExtCommunity::to_match_regexs_
private

Definition at line 108 of file routing_policy_match.h.


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