Ceylan::IdentifierOwner Class Reference

Interface that every object owning an identifier should implement. More...

#include <CeylanIdentifierOwner.h>

Inheritance diagram for Ceylan::IdentifierOwner:

Inheritance graph
[legend]
Collaboration diagram for Ceylan::IdentifierOwner:

Collaboration graph
[legend]

List of all members.

Public Types

enum  TextOutputFormat { rawText, html }
 Defines what text output formats for TextDisplayable instances are available. More...

Public Member Functions

 IdentifierOwner ()
 Basic constructor, does not assign internal identifier.
 IdentifierOwner (const Identifier &id)
 Common constructor, assigns internal identifier.
virtual ~IdentifierOwner () throw ()
 Deletes this IdentifierOwner and, if necessary, its internal identifier.
IdentifiergetIdentifier () const
 Returns this IdentifierOwner's identifier.
void setIdentifier (Identifier &id)
 Sets this IdentifierOwner's identifier.
bool hasIdentifier () const
 Returns whether this IdentifierOwner has a stored identifier.
void deleteIdentifier ()
 Deletes this IdentifierOwner's identifier.
virtual const std::string toString (Ceylan::VerbosityLevels level=Ceylan::high) const
 Returns a user-friendly description of the state of this object.

Static Public Member Functions

static const std::string ToString (std::list< TextDisplayable * > displayables, Ceylan::VerbosityLevels level=Ceylan::high)
 Returns a user-friendly description of this list of pointers to text displayable instances.
static TextOutputFormat GetOutputFormat ()
 Returns the current overall text format to be used by TextDisplayable instances.
static void SetOutputFormat (TextOutputFormat newOutputFormat)
 Sets the current overall text format to be used by TextDisplayable instances.

Static Protected Attributes

static TextOutputFormat _OutputFormat = rawText
 The text format to be used currently by TextDisplayable instances.

Private Member Functions

 IdentifierOwner (const IdentifierOwner &source)
 Copy constructor made private to ensure that it will be never called.
IdentifierOwneroperator= (const IdentifierOwner &source)
 Assignment operator made private to ensure that it will be never called.

Private Attributes

Identifier_id
 The owned identifier.


Detailed Description

Interface that every object owning an identifier should implement.

An identifier, a primary key, is a way of surely distinguishing between two references to know whether they point towards the same object or not.

Such identifiers are meant to be unique, among all possible instances, classes, processes and hosts, at a particular moment.

See also:
Object.

Identifier.

Definition at line 77 of file CeylanIdentifierOwner.h.


Member Enumeration Documentation

Defines what text output formats for TextDisplayable instances are available.

Enumerator:
rawText 
html 

Definition at line 124 of file CeylanTextDisplayable.h.


Constructor & Destructor Documentation

IdentifierOwner::IdentifierOwner (  ) 

Basic constructor, does not assign internal identifier.

Definition at line 63 of file CeylanIdentifierOwner.cc.

References CEYLAN_LOG.

Ceylan::IdentifierOwner::IdentifierOwner ( const Identifier id  )  [explicit]

Common constructor, assigns internal identifier.

Parameters:
id the identifier this IdentifierOwner should have.

IdentifierOwner::~IdentifierOwner (  )  throw () [virtual]

Deletes this IdentifierOwner and, if necessary, its internal identifier.

Definition at line 73 of file CeylanIdentifierOwner.cc.

References deleteIdentifier(), and hasIdentifier().

Ceylan::IdentifierOwner::IdentifierOwner ( const IdentifierOwner source  )  [private]

Copy constructor made private to ensure that it will be never called.

The compiler should complain whenever this undefined constructor is called, implicitly or not.


Member Function Documentation

void IdentifierOwner::deleteIdentifier (  ) 

Deletes this IdentifierOwner's identifier.

Definition at line 128 of file CeylanIdentifierOwner.cc.

References _id, and Ceylan::emergencyShutdown().

Referenced by Ceylan::Object::dropIdentifier(), and ~IdentifierOwner().

Identifier & IdentifierOwner::getIdentifier (  )  const

Returns this IdentifierOwner's identifier.

Exceptions:
IdentifierNotAvailableException if the operation failed.

Definition at line 83 of file CeylanIdentifierOwner.cc.

References _id.

Referenced by Ceylan::Object::forgeIdentifier().

TextDisplayable::TextOutputFormat TextDisplayable::GetOutputFormat (  )  [static, inherited]

bool IdentifierOwner::hasIdentifier (  )  const

Returns whether this IdentifierOwner has a stored identifier.

Definition at line 119 of file CeylanIdentifierOwner.cc.

References _id.

Referenced by Ceylan::Object::forgeIdentifier(), and ~IdentifierOwner().

IdentifierOwner& Ceylan::IdentifierOwner::operator= ( const IdentifierOwner source  )  [private]

Assignment operator made private to ensure that it will be never called.

The compiler should complain whenever this undefined operator is called, implicitly or not.

void IdentifierOwner::setIdentifier ( Identifier id  ) 

Sets this IdentifierOwner's identifier.

Exceptions:
IdentifierNotAvailableException if the operation failed.
Note:
This IdentifierOwner takes ownership of provided identifier.

Definition at line 101 of file CeylanIdentifierOwner.cc.

References _id.

Referenced by Ceylan::Object::forgeIdentifier().

void TextDisplayable::SetOutputFormat ( TextOutputFormat  newOutputFormat  )  [static, inherited]

Sets the current overall text format to be used by TextDisplayable instances.

Parameters:
newOutputFormat the new output format.

Definition at line 72 of file CeylanTextDisplayable.cc.

References Ceylan::TextDisplayable::_OutputFormat.

Referenced by Ceylan::Log::LogHolder::LogHolder().

const std::string TextDisplayable::ToString ( std::list< TextDisplayable * >  displayables,
Ceylan::VerbosityLevels  level = Ceylan::high 
) [static, inherited]

Returns a user-friendly description of this list of pointers to text displayable instances.

Parameters:
displayables a list of pointers to TextDisplayable instances/
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
toString, Ceylan::VerbosityLevels

Definition at line 45 of file CeylanTextDisplayable.cc.

References Ceylan::formatStringList().

const string IdentifierOwner::toString ( Ceylan::VerbosityLevels  level = Ceylan::high  )  const [virtual]

Returns a user-friendly description of the state of this object.

Parameters:
level the requested verbosity level.
Note:
Text output format is determined from overall settings.
See also:
TextDisplayable

Implements Ceylan::TextDisplayable.

Reimplemented in Ceylan::Object, Ceylan::Maths::Random::RandomGenerator, Ceylan::Maths::Random::RandomGeneratorFromPDF, Ceylan::Maths::Random::WhiteNoiseGenerator, Ceylan::Module, and Ceylan::Plugin.

Definition at line 156 of file CeylanIdentifierOwner.cc.

References _id, and Ceylan::Identifier::toString().


Member Data Documentation

The owned identifier.

Definition at line 165 of file CeylanIdentifierOwner.h.

Referenced by deleteIdentifier(), getIdentifier(), hasIdentifier(), setIdentifier(), and toString().

TextDisplayable::TextOutputFormat TextDisplayable::_OutputFormat = rawText [static, protected, inherited]

The text format to be used currently by TextDisplayable instances.

Note:
Defaults to raw text.

Definition at line 158 of file CeylanTextDisplayable.h.

Referenced by Ceylan::TextDisplayable::GetOutputFormat(), and Ceylan::TextDisplayable::SetOutputFormat().


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

Generated on Thu Jun 4 20:40:15 2009 for Ceylan by  doxygen 1.5.8