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

#include <service_instance.h>

Inheritance diagram for ServiceInstance:
Collaboration diagram for ServiceInstance:

Classes

struct  Properties
 

Public Types

enum  ServiceType { Other = 1, SourceNAT, LoadBalancer }
 
enum  VirtualizationType { VirtualMachine = 1, NetworkNamespace, VRouterInstance }
 
enum  VRouterInstanceType { KVM = 1, Docker }
 
- 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

 ServiceInstance ()
 
virtual bool IsLess (const DBEntry &rhs) const
 
virtual std::string ToString () const
 
virtual void SetKey (const DBRequestKey *key)
 
virtual KeyPtr GetDBRequestKey () const
 
bool DBEntrySandesh (Sandesh *sresp, std::string &name) const
 
virtual uint32_t GetRefCount () const
 
void set_properties (const Properties &properties)
 
const Propertiesproperties () const
 
const boost::uuids::uuid & uuid () const
 
bool IsUsable () const
 
void SetIFMapNodeState (IFMapDependencyManager::IFMapNodePtr ref)
 
IFMapNodeifmap_node ()
 
- Public Member Functions inherited from AgentRefCount< ServiceInstance >
uint32_t GetRefCount () const
 
- 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 (ServiceInstance)
 

Private Attributes

boost::uuids::uuid uuid_
 
Properties properties_
 
IFMapDependencyManager::IFMapNodePtr ifmap_node_state_ref_
 

Additional Inherited Members

- Public Attributes inherited from DBEntryBase
boost::intrusive::list_member_hook chg_list_
 
- Protected Member Functions inherited from AgentRefCount< ServiceInstance >
 AgentRefCount ()
 
 AgentRefCount (const AgentRefCount &)
 
AgentRefCountoperator= (const AgentRefCount &)
 
virtual ~AgentRefCount ()
 
void swap (AgentRefCount &)
 
- Protected Attributes inherited from AgentRefCount< ServiceInstance >
tbb::mutex back_ref_mutex_
 
std::set< IntrusiveReferrerback_ref_set_
 

Detailed Description

Definition at line 32 of file service_instance.h.

Member Enumeration Documentation

Enumerator
Other 
SourceNAT 
LoadBalancer 

Definition at line 35 of file service_instance.h.

Enumerator
VirtualMachine 
NetworkNamespace 
VRouterInstance 

Definition at line 40 of file service_instance.h.

Enumerator
KVM 
Docker 

Definition at line 45 of file service_instance.h.

Constructor & Destructor Documentation

ServiceInstance::ServiceInstance ( )

Definition at line 651 of file service_instance.cc.

Here is the call graph for this function:

Member Function Documentation

bool ServiceInstance::DBEntrySandesh ( Sandesh sresp,
std::string &  name 
) const
virtual

Implements AgentDBEntry.

Definition at line 675 of file service_instance.cc.

Here is the call graph for this function:

ServiceInstance::DISALLOW_COPY_AND_ASSIGN ( ServiceInstance  )
private
DBEntryBase::KeyPtr ServiceInstance::GetDBRequestKey ( ) const
virtual

Implements DBEntryBase.

Definition at line 670 of file service_instance.cc.

virtual uint32_t ServiceInstance::GetRefCount ( ) const
inlinevirtual

Implements AgentDBEntry.

Definition at line 108 of file service_instance.h.

Here is the call graph for this function:

IFMapNode* ServiceInstance::ifmap_node ( )
inline

Definition at line 126 of file service_instance.h.

Here is the call graph for this function:

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

Implements DBEntry.

Definition at line 655 of file service_instance.cc.

bool ServiceInstance::IsUsable ( ) const

Definition at line 726 of file service_instance.cc.

Here is the call graph for this function:

const Properties& ServiceInstance::properties ( ) const
inline

Definition at line 116 of file service_instance.h.

void ServiceInstance::set_properties ( const Properties properties)
inline

Definition at line 112 of file service_instance.h.

Here is the call graph for this function:

void ServiceInstance::SetIFMapNodeState ( IFMapDependencyManager::IFMapNodePtr  ref)
inline

Definition at line 122 of file service_instance.h.

void ServiceInstance::SetKey ( const DBRequestKey key)
virtual

Implements DBEntry.

Definition at line 664 of file service_instance.cc.

Here is the call graph for this function:

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

Implements DBEntryBase.

Definition at line 660 of file service_instance.cc.

Here is the call graph for this function:

const boost::uuids::uuid& ServiceInstance::uuid ( ) const
inline

Definition at line 118 of file service_instance.h.

Member Data Documentation

IFMapDependencyManager::IFMapNodePtr ServiceInstance::ifmap_node_state_ref_
private

Definition at line 135 of file service_instance.h.

Properties ServiceInstance::properties_
private

Definition at line 134 of file service_instance.h.

boost::uuids::uuid ServiceInstance::uuid_
private

Definition at line 133 of file service_instance.h.


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