OSB_LIB::E164Item Class Reference

Inheritance diagram for OSB_LIB::E164Item:

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

Collaboration graph
[legend]
List of all members.

Detailed Description

Product item for E.164 resources.

Definition at line 182 of file e164item.h.

Public Types

Public Member Functions

Static Public Attributes

Private Member Functions

Database operations:
E.164 items do not have specific data. All I/O members just return true, the argument `session' is never used.


Member Typedef Documentation

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

Short-cut for an auto pointer.

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

Reimplemented from OSB_LIB::ResourceItem.

Definition at line 188 of file e164item.h.


Constructor & Destructor Documentation

OSB_LIB::E164Item::E164Item ( const Oid oid,
const std::string &  name = "",
const std::string &  des = "" 
)

Constructor with object id, name and description.

Parameters:
oid Product item object id.
name Name of the resource item.
des Description of the resource item.


Member Function Documentation

ProductItem::CfgType OSB_LIB::E164Item::canConfigure (  )  const [virtual]

Configuration type.

Returns:
E.164 items can not be configured: ProductItem::cfgNone.

Implements OSB_LIB::ProductItem.

ProductItem::DefPersType OSB_LIB::E164Item::canDefPers (  )  const [virtual]

Default personalization type.

Returns:
Default personalization of E.164 items is not possible: ProductItem::defPersNone;

Implements OSB_LIB::ProductItem.

CfgPersType OSB_LIB::E164Item::canPersonalize (  )  const [virtual]

The personalization type of E.164 items: mandatory.

Implements OSB_LIB::ProductItem.

AutoPtr OSB_LIB::E164Item::clone (  )  const

Virtual copy construction.

For details see quality manual, implementation patterns.

Reimplemented from OSB_LIB::ResourceItem.

ProductItem* OSB_LIB::E164Item::clone_ (  )  const [private, virtual]

Virtual copy construction.

For details see quality manual, implementation patterns.

Implements OSB_LIB::ResourceItem.

std::auto_ptr<PersProductItem> OSB_LIB::E164Item::crePersProductItem (  )  const [virtual]

Create a personalized E.164 item.

Returns:
An auto pointer that contains a PersE164Item without configuration, i.e., no personalization.

Implements OSB_LIB::ProductItem.

const PersProductItem* OSB_LIB::E164Item::defPersItem (  )  const [virtual]

Pointer to the default personalized E.164 item: always 0.

Implements OSB_LIB::ProductItem.

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

No E.164 item specific data to delete.

Implements OSB_LIB::ProductItem.

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

No E.164 item specific data to insert.

Implements OSB_LIB::ProductItem.

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

No E.164 item specific data to read.

Implements OSB_LIB::ProductItem.

Type OSB_LIB::E164Item::type (  )  const [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.

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

No E.164 item specific data to update.

Implements OSB_LIB::ProductItem.


Member Data Documentation

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

The product item type: PiType::piE164Item.

Definition at line 185 of file e164item.h.


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