LOM2M  0.8.0
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
Entity Struct Reference

#include <Entity.h>

Inheritance diagram for Entity:
AccessControlPolicy Application Container ContentInstance CseBase RemoteCse Subscription AcpAdmin

Public Types

using collection = std::list< Entity * >
 
using collectionIt = collection::iterator
 
using Children = std::list< Entity * >
 
using Child = Children::iterator
 

Public Member Functions

void register_observer (Observer &o)
 
void notify_observers ()
 
 Entity ()
 
 Entity (const String &name, int type, Entity *parent)
 
virtual ~Entity ()
 
virtual const __FlashStringHelper * headerStr () const
 
void init ()
 
virtual void clear ()
 
void printTo (printfmt to, int level=0) const
 
virtual void printLocalTo (printfmt to, int level) const
 
void setExpirationTime (String et)
 
void setResourceID (String id)
 
const String & getCreator () const
 
void setCreator (String creator)
 
const String getParentID () const
 
const String & getName () const
 
int getType () const
 
String getResourceIdentifier ()
 
String getIdentifier ()
 
String getFullName ()
 
bool addChild (Entity *e)
 
Children getChildren ()
 
AccessControlPolicygetAcp ()
 
ApplicationgetApplication ()
 
ContainergetContainer ()
 
ContentInstancegetInstance ()
 
CseBasegetCseBase ()
 
RemoteCsegetRemoteCse ()
 
SubscriptiongetSubscription ()
 
ApplicationgetApplicationParent ()
 
ContainergetContainerParent ()
 

Static Public Member Functions

static EntitygetByHierUri (const String &uri)
 
static String generateName (int type)
 
static EntitygetByName (const String &name)
 
static EntitygetByName (const String &name, const String &parentName)
 
static EntitygetByIdentifier (const String &identifier)
 
static collectionIt findByName (const String &name)
 
static collectionIt findByResource (const String &name)
 
static ContentInstanceaddInstance (const String &name, Container *parent)
 
static ContaineraddContainer (const String &name, Entity *parent)
 
static ApplicationaddApplication (const String &name)
 
static RemoteCseaddRemoteCse (const String &name, CseBase *parent)
 
static SubscriptionaddSubscription (const String &name, Entity *parent)
 
static bool remove (const String &name, int ty=TY_NONE)
 
static void deleteEntity (Entity *e, bool r=false)
 

Public Attributes

Children children
 
String m_resourceId
 
String m_name
 
String m_parentID
 
int m_type
 
time_t m_time_creation
 
time_t m_time_modification
 
time_t m_time_expiration
 
Entitym_parent
 
std::list< String > m_labels
 
String m_creator
 
std::list< AccessControlPolicy * > m_acps
 

Static Public Attributes

static collection entities
 

Detailed Description

Generic struc, define commons attributes for all entities

Member Typedef Documentation

◆ Child

using Entity::Child = Children::iterator

◆ Children

using Entity::Children = std::list<Entity*>

◆ collection

using Entity::collection = std::list<Entity*>

◆ collectionIt

using Entity::collectionIt = collection::iterator

Constructor & Destructor Documentation

◆ Entity() [1/2]

Entity::Entity ( )
inline

◆ Entity() [2/2]

Entity::Entity ( const String &  name,
int  type,
Entity parent 
)

◆ ~Entity()

Entity::~Entity ( )
virtual

Member Function Documentation

◆ addApplication()

Application * Entity::addApplication ( const String &  name)
static

◆ addChild()

bool Entity::addChild ( Entity e)

◆ addContainer()

Container * Entity::addContainer ( const String &  name,
Entity parent 
)
static

◆ addInstance()

ContentInstance * Entity::addInstance ( const String &  name,
Container parent 
)
static

◆ addRemoteCse()

RemoteCse * Entity::addRemoteCse ( const String &  name,
CseBase parent 
)
static

◆ addSubscription()

Subscription * Entity::addSubscription ( const String &  name,
Entity parent 
)
static

◆ clear()

void Entity::clear ( )
virtual

Reimplemented in Container, RemoteCse, and CseBase.

◆ deleteEntity()

void Entity::deleteEntity ( Entity e,
bool  r = false 
)
static

◆ findByName()

Entity::collectionIt Entity::findByName ( const String &  name)
static

◆ findByResource()

Entity::collectionIt Entity::findByResource ( const String &  name)
static

◆ generateName()

static String Entity::generateName ( int  type)
inlinestatic

◆ getAcp()

AccessControlPolicy * Entity::getAcp ( )

◆ getApplication()

Application * Entity::getApplication ( )

◆ getApplicationParent()

Application* Entity::getApplicationParent ( )
inline

◆ getByHierUri()

Entity * Entity::getByHierUri ( const String &  uri)
static

Get an entity from hierarchical uri

Parameters
uri- hierarchical uri

◆ getByIdentifier()

Entity * Entity::getByIdentifier ( const String &  identifier)
static

◆ getByName() [1/2]

Entity * Entity::getByName ( const String &  name)
static

◆ getByName() [2/2]

Entity * Entity::getByName ( const String &  name,
const String &  parentName 
)
static

◆ getChildren()

Children Entity::getChildren ( )
inline

◆ getContainer()

Container * Entity::getContainer ( )

◆ getContainerParent()

Container* Entity::getContainerParent ( )
inline

◆ getCreator()

const String& Entity::getCreator ( ) const
inline

◆ getCseBase()

CseBase * Entity::getCseBase ( )

◆ getFullName()

String Entity::getFullName ( )

◆ getIdentifier()

String Entity::getIdentifier ( )

◆ getInstance()

ContentInstance * Entity::getInstance ( )

◆ getName()

const String& Entity::getName ( ) const
inline

◆ getParentID()

const String Entity::getParentID ( ) const
inline

◆ getRemoteCse()

RemoteCse * Entity::getRemoteCse ( )

◆ getResourceIdentifier()

String Entity::getResourceIdentifier ( )

◆ getSubscription()

Subscription * Entity::getSubscription ( )

◆ getType()

int Entity::getType ( ) const
inline

◆ headerStr()

virtual const __FlashStringHelper* Entity::headerStr ( ) const
inlinevirtual

Reimplemented in Application, ContentInstance, and Container.

◆ init()

void Entity::init ( )

◆ notify_observers()

void Entity::notify_observers ( )
inline

Notify all subscribed entities

◆ printLocalTo()

virtual void Entity::printLocalTo ( printfmt  to,
int  level 
) const
inlinevirtual

Reimplemented in Application, ContentInstance, and Container.

◆ printTo()

void Entity::printTo ( printfmt  to,
int  level = 0 
) const

◆ register_observer()

void Entity::register_observer ( Observer o)
inline

Add internal subscription and registration

◆ remove()

static bool Entity::remove ( const String &  name,
int  ty = TY_NONE 
)
static

◆ setCreator()

void Entity::setCreator ( String  creator)
inline

◆ setExpirationTime()

void Entity::setExpirationTime ( String  et)

◆ setResourceID()

void Entity::setResourceID ( String  id)
inline

Member Data Documentation

◆ children

Children Entity::children

◆ entities

Entity::collection Entity::entities
static

◆ m_acps

std::list<AccessControlPolicy*> Entity::m_acps

◆ m_creator

String Entity::m_creator

◆ m_labels

std::list<String> Entity::m_labels

◆ m_name

String Entity::m_name

◆ m_parent

Entity* Entity::m_parent

◆ m_parentID

String Entity::m_parentID

◆ m_resourceId

String Entity::m_resourceId

◆ m_time_creation

time_t Entity::m_time_creation

◆ m_time_expiration

time_t Entity::m_time_expiration

◆ m_time_modification

time_t Entity::m_time_modification

◆ m_type

int Entity::m_type

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