fesa::EventElement Class Reference

Used to handle and store all Event-specific Information which comes from the Instantiation-File. This class is Abstract. More...

#include <EventElement.h>

Inheritance diagram for fesa::EventElement:
fesa::CustomEventElement fesa::OnDemandEventElement fesa::OnSubscriptionEventElement fesa::TimerEventElement fesa::TimingEventElement

List of all members.

Public Member Functions

virtual ~EventElement ()
virtual void initialize (const std::string &xpath, ElementXML *eventElement)=0
 triggers the parsing of the xml-file-structures and initializes the class with all needed information
virtual const std::string & getSourceTypeSpecificData (const std::string &dataTag)=0
virtual const std::string & getLogicalName () const
virtual const std::string & getEventSourceName () const
virtual const EventSourceTypegetEventSourceType () const
virtual const std::string & getConcreteName () const
virtual const std::set
< AbstractDevice * > & 
getDeviceCollection () const
virtual void addDeviceRef (AbstractDevice *device)

Protected Member Functions

 EventElement (boost::shared_ptr< EventConfigurationElement > parent, const EventSourceType sourceType)
 EventElement ()
 To allow easy mocking of this class.

Protected Attributes

std::string eventSourceName_
 name of the event-source to which this object belongs. Filled by the child-class
std::string concreteEventName_
 The concrete event-name is build of the event-source-name and a string to make the name unique Filled by the child-class.
bool isInitialized_
 true, when initialization of this object was finished successfully Raised by the child-class

Private Attributes

EventSourceType eventSourceType_
std::set< AbstractDevice * > deviceCol_
 List of all devices which use this event for the given eventConfiguration and for the given logical-event.
boost::shared_ptr
< EventConfigurationElement
parentEventConfigurationElement_
 the parent-element in this linked-tree

Detailed Description

Used to handle and store all Event-specific Information which comes from the Instantiation-File. This class is Abstract.

Definition at line 21 of file EventElement.h.


Constructor & Destructor Documentation

fesa::EventElement::~EventElement (  )  [virtual]

Definition at line 21 of file EventElement.cpp.

fesa::EventElement::EventElement ( boost::shared_ptr< EventConfigurationElement parent,
const EventSourceType  sourceType 
) [protected]
Parameters:
parent the parent-element in the linked-tree
sourceType filled by the child-classes, according to their concrete type

Definition at line 10 of file EventElement.cpp.

fesa::EventElement::EventElement (  )  [protected]

To allow easy mocking of this class.

Definition at line 16 of file EventElement.cpp.


Member Function Documentation

void fesa::EventElement::addDeviceRef ( AbstractDevice device  )  [virtual]
Parameters:
used in order to add references of the connected devices to this object (according to the mapping in the xml-file)

Definition at line 36 of file EventElement.cpp.

References deviceCol_, FesaErrorNULLPointer, FesaErrorParserElementNotInitialized, and isInitialized_.

const std::string & fesa::EventElement::getConcreteName (  )  const [virtual]
const std::set< AbstractDevice * > & fesa::EventElement::getDeviceCollection (  )  const [virtual]

Definition at line 63 of file EventElement.cpp.

References deviceCol_, FesaErrorParserElementNotInitialized, and isInitialized_.

const std::string & fesa::EventElement::getEventSourceName (  )  const [virtual]
const EventSourceType & fesa::EventElement::getEventSourceType (  )  const [virtual]

Definition at line 31 of file EventElement.cpp.

References eventSourceType_.

const std::string & fesa::EventElement::getLogicalName (  )  const [virtual]
virtual const std::string& fesa::EventElement::getSourceTypeSpecificData ( const std::string &  dataTag  )  [pure virtual]
virtual void fesa::EventElement::initialize ( const std::string &  xpath,
ElementXML eventElement 
) [pure virtual]

triggers the parsing of the xml-file-structures and initializes the class with all needed information

Implemented in fesa::CustomEventElement, fesa::OnDemandEventElement, fesa::OnSubscriptionEventElement, fesa::TimerEventElement, and fesa::TimingEventElement.


Member Data Documentation

std::string fesa::EventElement::concreteEventName_ [protected]

List of all devices which use this event for the given eventConfiguration and for the given logical-event.

Definition at line 87 of file EventElement.h.

Referenced by addDeviceRef(), and getDeviceCollection().

std::string fesa::EventElement::eventSourceName_ [protected]

Definition at line 81 of file EventElement.h.

Referenced by getEventSourceType().

the parent-element in this linked-tree

Definition at line 92 of file EventElement.h.

Referenced by getLogicalName().


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

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1