Reference

corelinux_Subject(3)

Subject knows its Observer objects, communicates with its observers through event notification.

NAME

corelinux::Subject - Subject knows its Observer objects, communicates with its observers through event notification.

SYNOPSIS

#include <Subject.hpp>

Inherited by SubjectObserver.

Public Member Functions

Subject (void)
Default constructor. Subject (SubjectCref)
Copy constructor. virtual ~Subject (void)
Virtual destructor. SubjectRef operator= (SubjectCref)
Assignment operator. bool operator== (SubjectCref) const
Equality operator. bool operator!= (SubjectCref) const
In-Equality operator. virtual void addObserver (ObserverPtr, Event< Identifier > *)=0 throw ( NullPointerException )
Add an observer for a specific event. virtual void removeObserver (ObserverPtr)=0 throw ( NullPointerException )
Remove an observer from all event notifications. virtual void removeObserver (ObserverPtr, Event< Identifier > *)=0 throw ( NullPointerException )
Remove an observer from specific event notifications. virtual Iterator< ObserverPtr > * createIterator (void)=0
Create a iterator for all observers. virtual Iterator< ObserverPtr > * createIterator (Event< Identifier > *)=0 throw ( NullPointerException )
Create a iterator for observers of this event. virtual void destroyIterator (Iterator< ObserverPtr > *)=0 throw ( NullPointerException )
Deletes the iterator instance.

Protected Member Functions

virtual void notifyObservers (Event< Identifier > *) throw ( NullPointerException )
Performs the notification of observers for a specific event. virtual void notifyAllObservers (Event< Identifier > *) throw ( NullPointerException )
Performs the notification of ALL observers for a with a specific event.

Detailed Description

Subject knows its Observer objects, communicates with its observers through event notification.

Constructor & Destructor Documentation

corelinux::Subject::Subject (SubjectCref)

Copy constructor. Parameters:

Subject const referencee

Member Function Documentation

virtual void corelinux::Subject::addObserver (ObserverPtr, Event< Identifier > *) throw ( NullPointerException ) [pure virtual]

Add an observer for a specific event. Parameters:

Event the type of event interested in

Exceptions:

NullPointer exception if event is null

virtual Iterator<ObserverPtr>* corelinux::Subject::createIterator (Event< Identifier > *) throw ( NullPointerException ) [pure virtual]

Create a iterator for observers of this event. Parameters:

Event defines the event type predicate

Returns:

Iterator

Exceptions:

NullPointerException if event null

virtual Iterator<ObserverPtr>* corelinux::Subject::createIterator (void) [pure virtual]

Create a iterator for all observers. Returns:

Iterator

Implemented in SubjectObserver.

virtual void corelinux::Subject::destroyIterator (Iterator< ObserverPtr > *) throw ( NullPointerException ) [pure virtual]

Deletes the iterator instance. Parameters:

Iterator .RE

Exceptions:

NullPointerException if iterator null

void corelinux::Subject::notifyAllObservers (Event< Identifier > *) throw ( NullPointerException ) [protected, virtual]

Performs the notification of ALL observers for a with a specific event. Parameters:

Event key

Exceptions:

NullPointerException if event is null

void corelinux::Subject::notifyObservers (Event< Identifier > *) throw ( NullPointerException ) [protected, virtual]

Performs the notification of observers for a specific event. Parameters:

Event key

Exceptions:

NullPointerException if event is null

virtual void corelinux::Subject::removeObserver (ObserverPtr, Event< Identifier > *) throw ( NullPointerException ) [pure virtual]

Remove an observer from specific event notifications. Parameters:

Observer to remove

Exceptions:

NullPointer exception Observer or Event is null

virtual void corelinux::Subject::removeObserver (ObserverPtr) throw ( NullPointerException ) [pure virtual]

Remove an observer from all event notifications. Parameters:

Observer to remove

Exceptions:

NullPointer exception Observer is null

Implemented in SubjectObserver.

Author

Generated automatically by Doxygen for CoreLinux++ from the source code.

History