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

#include <acl.h>

Inheritance diagram for AclDBEntry:
Collaboration diagram for AclDBEntry:

Public Types

typedef
boost::intrusive::member_hook
< AclEntry,
boost::intrusive::list_member_hook
<>,&AclEntry::acl_list_node
AclEntryNode
 
typedef boost::intrusive::list
< AclEntry, AclEntryNode
AclEntries
 
- Public Types inherited from AgentDBEntry
typedef boost::intrusive_ptr
< AgentDBEntry
AgentDBEntyRef
 
- Public Types inherited from DBEntryBase
typedef DBTableBase::ListenerId ListenerId
 
typedef std::unique_ptr
< DBRequestKey
KeyPtr
 

Public Member Functions

 AclDBEntry (const boost::uuids::uuid &id)
 
 ~AclDBEntry ()
 
bool IsLess (const DBEntry &rhs) const
 
KeyPtr GetDBRequestKey () const
 
void SetKey (const DBRequestKey *key)
 
std::string ToString () const
 
uint32_t GetRefCount () const
 
const boost::uuids::uuidGetUuid () const
 
const std::string & GetName () const
 
void SetName (const std::string name)
 
bool DBEntrySandesh (Sandesh *resp, std::string &name) const
 
void SetAclSandeshData (AclSandeshData &data) const
 
AclEntryAddAclEntry (const AclEntrySpec &acl_entry_spec, AclEntries &entries)
 
bool DeleteAclEntry (const uint32_t acl_entry_id)
 
void DeleteAllAclEntries ()
 
uint32_t Size () const
 
void SetAclEntries (AclEntries &entries)
 
void SetDynamicAcl (bool dyn)
 
bool GetDynamicAcl () const
 
bool PacketMatch (const PacketHeader &packet_header, MatchAclParams &m_acl, FlowPolicyInfo *info) const
 
bool Changed (const AclEntries &new_acl_entries) const
 
uint32_t ace_count () const
 
bool IsRulePresent (const std::string &uuid) const
 
bool ResyncQosConfigEntries ()
 
bool IsQosConfigResolved ()
 
bool Isresolved ()
 
const AclEntryGetAclEntryAtIndex (uint32_t) const
 
- Public Member Functions inherited from AgentOperDBEntry
 AgentOperDBEntry ()
 
virtual ~AgentOperDBEntry ()
 
IFMapNodeifmap_node () const
 
void SetIFMapNodeState (IFMapDependencyManager::IFMapNodePtr sref)
 
- Public Member Functions inherited from AgentDBEntry
 AgentDBEntry ()
 
virtual ~AgentDBEntry ()
 
void SetRefState () const
 
void ClearRefState () const
 
bool IsActive () const
 
DBStateGetAgentDBEntryState (int listener_id)
 
const DBStateGetAgentDBEntryState (int listener_id) const
 
virtual void AllocateResources (ResourceManager *resource_manager)
 
virtual void FreeResources (ResourceManager *resource_manager)
 
virtual void PostAdd ()
 
- Public Member Functions inherited from DBEntry
 DBEntry ()
 
virtual ~DBEntry ()
 
bool operator< (const DBEntry &rhs) const
 
- Public Member Functions inherited from DBEntryBase
 DBEntryBase ()
 
virtual ~DBEntryBase ()
 
virtual bool IsMoreSpecific (const std::string &match) const
 
virtual bool IsLessSpecific (const std::string &match) const
 
void SetState (DBTableBase *tbl_base, ListenerId listener, DBState *state)
 
void ClearState (DBTableBase *tbl_base, ListenerId listener)
 
DBStateGetState (DBTableBase *tbl_base, ListenerId listener) const
 
const DBStateGetState (const DBTableBase *tbl_base, ListenerId listener) const
 
bool is_state_empty (DBTablePartBase *tpart)
 
bool is_state_empty_unlocked (DBTablePartBase *tpart)
 
void Delete ()
 
void MarkDelete ()
 
void ClearDelete ()
 
bool IsDeleted () const
 
void set_onlist ()
 
void clear_onlist ()
 
bool is_onlist ()
 
void SetOnRemoveQ ()
 
bool IsOnRemoveQ ()
 
void ClearOnRemoveQ ()
 
void set_last_change_at (uint64_t time)
 
void set_last_change_at_to_now ()
 
const uint64_t last_change_at () const
 
const std::string last_change_at_str () const
 
void set_last_update_at (uint64_t time)
 
void set_last_update_at_to_now ()
 
const uint64_t last_update_at () const
 
DBTablePartBaseget_table_partition () const
 
void set_table_partition (DBTablePartBase *tpart)
 
DBTableBaseget_table () const
 
void Notify ()
 

Private Member Functions

 DISALLOW_COPY_AND_ASSIGN (AclDBEntry)
 
- Private Member Functions inherited from AgentRefCount< AclDBEntry >
uint32_t GetRefCount () const
 
 AgentRefCount ()
 
 AgentRefCount (const AgentRefCount &)
 
AgentRefCountoperator= (const AgentRefCount &)
 
virtual ~AgentRefCount ()
 
void swap (AgentRefCount &)
 

Private Attributes

boost::uuids::uuid uuid_
 
bool dynamic_acl_
 
std::string name_
 
AclEntries acl_entries_
 
- Private Attributes inherited from AgentRefCount< AclDBEntry >
tbb::mutex back_ref_mutex_
 
std::set< IntrusiveReferrerback_ref_set_
 

Friends

class AclTable
 

Additional Inherited Members

- Public Attributes inherited from DBEntryBase
boost::intrusive::list_member_hook chg_list_
 

Detailed Description

Definition at line 92 of file acl.h.

Member Typedef Documentation

typedef boost::intrusive::list<AclEntry, AclEntryNode> AclDBEntry::AclEntries

Definition at line 97 of file acl.h.

typedef boost::intrusive::member_hook<AclEntry, boost::intrusive::list_member_hook<>, &AclEntry::acl_list_node> AclDBEntry::AclEntryNode

Definition at line 96 of file acl.h.

Constructor & Destructor Documentation

AclDBEntry::AclDBEntry ( const boost::uuids::uuid id)
inline

Definition at line 99 of file acl.h.

AclDBEntry::~AclDBEntry ( )
inline

Definition at line 102 of file acl.h.

Member Function Documentation

uint32_t AclDBEntry::ace_count ( ) const
inline

Definition at line 132 of file acl.h.

AclEntry * AclDBEntry::AddAclEntry ( const AclEntrySpec acl_entry_spec,
AclEntries entries 
)

Definition at line 726 of file acl.cc.

Here is the call graph for this function:

bool AclDBEntry::Changed ( const AclEntries new_acl_entries) const

Definition at line 902 of file acl.cc.

bool AclDBEntry::DBEntrySandesh ( Sandesh resp,
std::string &  name 
) const
virtual

Implements AgentDBEntry.

Definition at line 68 of file acl.cc.

Here is the call graph for this function:

bool AclDBEntry::DeleteAclEntry ( const uint32_t  acl_entry_id)

Definition at line 768 of file acl.cc.

Here is the call graph for this function:

void AclDBEntry::DeleteAllAclEntries ( )

Definition at line 786 of file acl.cc.

AclDBEntry::DISALLOW_COPY_AND_ASSIGN ( AclDBEntry  )
private
const AclEntry * AclDBEntry::GetAclEntryAtIndex ( uint32_t  index) const

Definition at line 888 of file acl.cc.

DBEntryBase::KeyPtr AclDBEntry::GetDBRequestKey ( ) const
virtual

Implements DBEntryBase.

Definition at line 58 of file acl.cc.

bool AclDBEntry::GetDynamicAcl ( ) const
inline

Definition at line 126 of file acl.h.

const std::string& AclDBEntry::GetName ( ) const
inline

Definition at line 113 of file acl.h.

uint32_t AclDBEntry::GetRefCount ( ) const
inlinevirtual

Implements AgentDBEntry.

Definition at line 109 of file acl.h.

Here is the call graph for this function:

const boost::uuids::uuid& AclDBEntry::GetUuid ( ) const
inline

Definition at line 112 of file acl.h.

bool AclDBEntry::IsLess ( const DBEntry rhs) const
virtual

Implements DBEntry.

Definition at line 47 of file acl.cc.

bool AclDBEntry::IsQosConfigResolved ( )

Definition at line 699 of file acl.cc.

Here is the call graph for this function:

bool AclDBEntry::Isresolved ( )
bool AclDBEntry::IsRulePresent ( const std::string &  uuid) const

Definition at line 937 of file acl.cc.

Here is the call graph for this function:

bool AclDBEntry::PacketMatch ( const PacketHeader packet_header,
MatchAclParams m_acl,
FlowPolicyInfo info 
) const

Definition at line 798 of file acl.cc.

Here is the call graph for this function:

bool AclDBEntry::ResyncQosConfigEntries ( )

Definition at line 712 of file acl.cc.

Here is the call graph for this function:

void AclDBEntry::SetAclEntries ( AclEntries entries)

Definition at line 687 of file acl.cc.

void AclDBEntry::SetAclSandeshData ( AclSandeshData &  data) const

Definition at line 89 of file acl.cc.

void AclDBEntry::SetDynamicAcl ( bool  dyn)
inline

Definition at line 125 of file acl.h.

void AclDBEntry::SetKey ( const DBRequestKey key)
virtual

Implements DBEntry.

Definition at line 63 of file acl.cc.

void AclDBEntry::SetName ( const std::string  name)
inline

Definition at line 114 of file acl.h.

uint32_t AclDBEntry::Size ( ) const
inline

Definition at line 123 of file acl.h.

std::string AclDBEntry::ToString ( ) const
virtual

Implements DBEntryBase.

Definition at line 52 of file acl.cc.

Friends And Related Function Documentation

friend class AclTable
friend

Definition at line 139 of file acl.h.

Member Data Documentation

AclEntries AclDBEntry::acl_entries_
private

Definition at line 143 of file acl.h.

bool AclDBEntry::dynamic_acl_
private

Definition at line 141 of file acl.h.

std::string AclDBEntry::name_
private

Definition at line 142 of file acl.h.

boost::uuids::uuid AclDBEntry::uuid_
private

Definition at line 140 of file acl.h.


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