Software and Services, Portable Libraries  2019.Mar.01
A library for managing digital certificates
SoftwareAndServices::Library::iCalendar::icalData Class Reference

Manages a cache of iCalendar objects. More...

#include </home/doug/src/SoftwareAndServices/libSaSiCalendar/icaldata.hpp>

+ Inheritance diagram for SoftwareAndServices::Library::iCalendar::icalData:
+ Collaboration diagram for SoftwareAndServices::Library::iCalendar::icalData:

Public Types

enum  data_t {
  isNotUsed_t = 0, isiCalendar_t = 1, isComponent_t = 2, isProperty_t = 3,
  isParameter_t = 4
}
 

Public Member Functions

 icalData ()
 icalData - Default Constructor. More...
 
virtual ~icalData ()
 icalData - Destructor. More...
 

Static Public Member Functions

static CalendarId_t addCalendar (iCalendar *newCal, ::Uri *aUrl)
 Add a calendar to the cache. More...
 
static ComponentId_t addComponent (icalData *parent, component *newComp)
 Add a component to the cache. More...
 
static ParameterId_t addParameter (icalData *parent, parameter *newParam)
 Add a parameter to the cache. More...
 
static PropertyId_t addProperty (icalData *parent, property *newProp)
 Add a property to the cache. More...
 
static void cacheVtimezone (CalendarId_t calId)
 Add a VTIMEZONE to the time zone cache. More...
 
static void cacheVtimezone (iCalendar *ical)
 Add a VTIMEZONE by icalendar object. More...
 
static std::map< unsigned long long, icalData * >::iterator findComponent (component *existing)
 Instance c. More...
 
static std::map< unsigned long long, icalData * >::iterator findParameter (parameter *existing)
 Find a parameter in the cache. More...
 
static std::map< unsigned long long, icalData * >::iterator findProperty (property *existing)
 Find a property in the cache. More...
 

Public Attributes

componentcomponentPtr
 If component, pointer back to component. More...
 
iCalendarical
 Pointer back to calendar object. More...
 
unsigned long long id
 Unique id for this object. More...
 
std::vector< icalInstances * > * instancesFound
 If component: Pointers to instances when expanded to include recurrence rules. More...
 
parameterparameterPtr
 If a parameter, pointer back to the parameter. More...
 
icalDataparent
 If object has a parent, pointer to the parent. More...
 
propertypropertyPtr
 If Property, pointer back to property. More...
 
icalSQLsql
 Pointer back to the SQL object. More...
 
::Uri * theUrl
 If URL, this is a pointer to the URL. More...
 
Tokens_t tokenType
 Type of object in iCalendar terms. More...
 
data_t type
 Type of data. More...
 

Static Public Attributes

static unsigned long long itemId
 Last item-ID used. More...
 
static std::map< unsigned long long, icalData * > * objects
 A Forward map of all objects in cache. More...
 
static std::map< void *, icalData * > * rObjects
 A Reverse map of all objects in cache. More...
 

Detailed Description

Manages a cache of iCalendar objects.

Definition at line 636 of file icaldata.hpp.

Member Enumeration Documentation

◆ data_t

Enumerator
isNotUsed_t 

Not relevant to item.

isiCalendar_t 

Item is a calendar.

isComponent_t 

Item is a calendar component.

isProperty_t 

Item is a component property.

isParameter_t 

Item is a property parameter.

Definition at line 642 of file icaldata.hpp.

Constructor & Destructor Documentation

◆ icalData()

SoftwareAndServices::Library::iCalendar::icalData::icalData ( )

icalData - Default Constructor.

◆ ~icalData()

virtual SoftwareAndServices::Library::iCalendar::icalData::~icalData ( )
virtual

icalData - Destructor.

Member Function Documentation

◆ addCalendar()

static CalendarId_t SoftwareAndServices::Library::iCalendar::icalData::addCalendar ( iCalendar newCal,
::Uri *  aUrl 
)
static

Add a calendar to the cache.

◆ addComponent()

static ComponentId_t SoftwareAndServices::Library::iCalendar::icalData::addComponent ( icalData parent,
component newComp 
)
static

Add a component to the cache.

◆ addParameter()

static ParameterId_t SoftwareAndServices::Library::iCalendar::icalData::addParameter ( icalData parent,
parameter newParam 
)
static

Add a parameter to the cache.

◆ addProperty()

static PropertyId_t SoftwareAndServices::Library::iCalendar::icalData::addProperty ( icalData parent,
property newProp 
)
static

Add a property to the cache.

◆ cacheVtimezone() [1/2]

static void SoftwareAndServices::Library::iCalendar::icalData::cacheVtimezone ( CalendarId_t  calId)
static

Add a VTIMEZONE to the time zone cache.

◆ cacheVtimezone() [2/2]

static void SoftwareAndServices::Library::iCalendar::icalData::cacheVtimezone ( iCalendar ical)
static

Add a VTIMEZONE by icalendar object.

◆ findComponent()

static std::map<unsigned long long, icalData*>::iterator SoftwareAndServices::Library::iCalendar::icalData::findComponent ( component existing)
static

Instance c.

Find a component in the cache.

◆ findParameter()

static std::map<unsigned long long,icalData*>::iterator SoftwareAndServices::Library::iCalendar::icalData::findParameter ( parameter existing)
static

Find a parameter in the cache.

◆ findProperty()

static std::map<unsigned long long,icalData*>::iterator SoftwareAndServices::Library::iCalendar::icalData::findProperty ( property existing)
static

Find a property in the cache.

Member Data Documentation

◆ componentPtr

component* SoftwareAndServices::Library::iCalendar::icalData::componentPtr

If component, pointer back to component.

Definition at line 682 of file icaldata.hpp.

◆ ical

iCalendar* SoftwareAndServices::Library::iCalendar::icalData::ical

Pointer back to calendar object.

Definition at line 677 of file icaldata.hpp.

◆ id

unsigned long long SoftwareAndServices::Library::iCalendar::icalData::id

Unique id for this object.

Definition at line 716 of file icaldata.hpp.

◆ instancesFound

std::vector<icalInstances*>* SoftwareAndServices::Library::iCalendar::icalData::instancesFound

If component: Pointers to instances when expanded to include recurrence rules.

Definition at line 688 of file icaldata.hpp.

◆ itemId

unsigned long long SoftwareAndServices::Library::iCalendar::icalData::itemId
static

Last item-ID used.

This is used to generate a unique ID that persists for the duration of the program.

Definition at line 801 of file icaldata.hpp.

◆ objects

std::map<unsigned long long, icalData *>* SoftwareAndServices::Library::iCalendar::icalData::objects
static

A Forward map of all objects in cache.

Definition at line 790 of file icaldata.hpp.

◆ parameterPtr

parameter* SoftwareAndServices::Library::iCalendar::icalData::parameterPtr

If a parameter, pointer back to the parameter.

Definition at line 698 of file icaldata.hpp.

◆ parent

icalData* SoftwareAndServices::Library::iCalendar::icalData::parent

If object has a parent, pointer to the parent.

Definition at line 711 of file icaldata.hpp.

◆ propertyPtr

property* SoftwareAndServices::Library::iCalendar::icalData::propertyPtr

If Property, pointer back to property.

Definition at line 693 of file icaldata.hpp.

◆ rObjects

std::map<void *, icalData *>* SoftwareAndServices::Library::iCalendar::icalData::rObjects
static

A Reverse map of all objects in cache.

Definition at line 795 of file icaldata.hpp.

◆ sql

icalSQL* SoftwareAndServices::Library::iCalendar::icalData::sql

Pointer back to the SQL object.

Definition at line 705 of file icaldata.hpp.

◆ theUrl

::Uri* SoftwareAndServices::Library::iCalendar::icalData::theUrl

If URL, this is a pointer to the URL.

Definition at line 726 of file icaldata.hpp.

◆ tokenType

Tokens_t SoftwareAndServices::Library::iCalendar::icalData::tokenType

Type of object in iCalendar terms.

Definition at line 721 of file icaldata.hpp.

◆ type

data_t SoftwareAndServices::Library::iCalendar::icalData::type

Type of data.

Definition at line 672 of file icaldata.hpp.


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