OSB_LIB::PersService Class Reference

Inheritance diagram for OSB_LIB::PersService:

Inheritance graph
[legend]
Collaboration diagram for OSB_LIB::PersService:

Collaboration graph
[legend]
List of all members.

Detailed Description

Pers service keeps the personalization setting for a service.

This class contains an attribute that keeps all the personalization setting in a string.

Definition at line 67 of file serviceitem.h.

Public Types

Public Member Functions

Static Public Attributes

Private Member Functions

Database operation:

Private Attributes

Friends


Member Typedef Documentation

typedef std::auto_ptr<PersService> OSB_LIB::PersService::AutoPtr

Short-cut for an auto pointer.

For details see quality manual, implementation patterns: Virtual copy construction.

Reimplemented from OSB_LIB::PersProductItem.

Definition at line 78 of file serviceitem.h.


Constructor & Destructor Documentation

OSB_LIB::PersService::PersService ( const std::string &  personalization  )  [inline]

Constructor with personalization setting.

Definition at line 82 of file serviceitem.h.

OSB_LIB::PersService::PersService ( const Oid persItemId = Oid(),
const std::string &  personalization = "" 
) [inline]

Constructor with personalization setting and pers product id.

Definition at line 86 of file serviceitem.h.


Member Function Documentation

virtual bool OSB_LIB::PersService::canConfig (  )  const [virtual]

The configuration type of service item (Can).

Implements OSB_LIB::PersProductItem.

AutoPtr OSB_LIB::PersService::clone (  )  const

Virtual copy construction.

For details see quality manual, implementation patterns.

Reimplemented from OSB_LIB::PersProductItem.

virtual PersProductItem* OSB_LIB::PersService::clone_ (  )  const [private, virtual]

Internal virtual copy constructor.

For details see quality manual, implementation patterns.

Implements OSB_LIB::PersProductItem.

virtual bool OSB_LIB::PersService::delSpecific ( const OSB_DB::Session session  )  [private, virtual]

Delele a service item from the database.

Implements OSB_LIB::PersProductItem.

virtual bool OSB_LIB::PersService::insSpecific ( const OSB_DB::Session session  )  [private, virtual]

Insert a service item into database.

Implements OSB_LIB::PersProductItem.

std::string OSB_LIB::PersService::personalization (  )  const [virtual]

Get the personalization setting for a ServiceItem.

Returns:
Return the personalization setting in a string.

Implements OSB_LIB::PersProductItem.

virtual bool OSB_LIB::PersService::readSpecific ( const OSB_DB::Session session  )  [private, virtual]

Read a service item from database.

Implements OSB_LIB::PersProductItem.

Type OSB_LIB::PersService::type (  )  const [inline, virtual]

The type of the product item.

The function returns the type of the product item. It is needed for only one reason: Corba clients must provide a configuration window that depends on the actual type.

No appropriate design can be provided: Unless on-line clients use the real product item type through-out the whole live cycle of an object, there must be a way to determine the actual type of a product item. No matter how clever we make our design, for on-line clients there will always be one step where they need to determine a product item's type in a switch-like statement. For this step I personally perfer to work with an enumeration type (and compiler warnings) rather than relying on dynamic casts (where errors can be detected only during run-time).

Remarks:
Derived classes declare the function private.

Implements OSB_LIB::ProductItemBase.

Definition at line 94 of file serviceitem.h.

References type_.

virtual bool OSB_LIB::PersService::updSpecific ( const OSB_DB::Session session  )  [private, virtual]

Updata a service item in the database.

Implements OSB_LIB::PersProductItem.


Friends And Related Function Documentation

friend struct OSB_DB::PersServiceGw [friend]

The database gateway needs to populate data members after construction.

Definition at line 72 of file serviceitem.h.


Member Data Documentation

std::string OSB_LIB::PersService::personalization_ [private]

Attribute that keeps the personalization setting.

Definition at line 132 of file serviceitem.h.

const Type OSB_LIB::PersService::type_ [static]

The product item type id: PiType::piService.

Definition at line 75 of file serviceitem.h.

Referenced by type().


The documentation for this class was generated from the following file:
Generated on Sat Sep 2 14:13:03 2006 for OSB Library by  doxygen 1.4.7