OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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::regex
CommunityRegexList
 

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::ExtCommunityList
communities () 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

Definition at line 80 of file routing_policy_match.h.

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

Definition at line 79 of file routing_policy_match.h.

Constructor & Destructor Documentation

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 ( )
virtual

Definition at line 218 of file routing_policy_match.cc.

Member Function Documentation

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

Definition at line 90 of file routing_policy_match.h.

const ExtCommunity::ExtCommunityList MatchExtCommunity::ExtCommunityFromString ( const std::string &  comm)
private
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:

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:

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:

bool MatchExtCommunity::match_all ( ) const
inline

Definition at line 89 of file routing_policy_match.h.

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:

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:

const CommunityRegexStringList& MatchExtCommunity::regex_strings ( ) const
inline

Definition at line 93 of file routing_policy_match.h.

const CommunityRegexList& MatchExtCommunity::regexs ( ) const
inline

Definition at line 96 of file routing_policy_match.h.

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

bool MatchExtCommunity::match_all_
private

Definition at line 105 of file routing_policy_match.h.

ExtCommunity::ExtCommunityList MatchExtCommunity::to_match_
private

Definition at line 106 of file routing_policy_match.h.

CommunityRegexStringList MatchExtCommunity::to_match_regex_strings_
private

Definition at line 107 of file routing_policy_match.h.

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: