OSB_LIB::ProductNode Class Reference

Collaboration diagram for OSB_LIB::ProductNode:

Collaboration graph
[legend]
List of all members.

Detailed Description

Link ProductItem to Product.

Definition at line 92 of file product.h.

Public Types

Public Member Functions

Constructors and Destructors
Read access to data members
The product node's id.

Modify data members.
Set the parent node id of the node

Private Member Functions

Private Attributes

Friends


Member Typedef Documentation

typedef Id<ProductNode> OSB_LIB::ProductNode::Oid

Typesafe object identification, database link.

Remarks:
The table PRODUCT_NODE uses a single column as primary key.

Definition at line 110 of file product.h.


Constructor & Destructor Documentation

OSB_LIB::ProductNode::ProductNode ( const Oid id,
std::auto_ptr< ProductItem item,
const EditStatus es = EditStatus(EditStatus::esCreated) 
)

Constructor.

Parameters:
id Id of the product node.
item The product item belonging to this node.
es The edit status. Default is `esCreated'.

OSB_LIB::ProductNode::ProductNode ( const ProductNode node  ) 

Copy constructor and assignment.

Remarks:
The product item is cloned.

OSB_LIB::ProductNode::~ProductNode (  ) 

Destructor.

Remarks:
Removes memory allocated for product item.


Member Function Documentation

EditStatus::Status OSB_LIB::ProductNode::editStatus (  )  const

Edit status of product node.

int OSB_LIB::ProductNode::mandatory (  )  const

Mandatory setting.

Referenced by OSB_LIB::PersPart::mandatory().

const Oid& OSB_LIB::ProductNode::oid (  )  const

ProductNode& OSB_LIB::ProductNode::operator= ( const ProductNode rhs  ) 

const Oid& OSB_LIB::ProductNode::parentId (  )  const

Id of parent product node.

ProductNodeParts& OSB_LIB::ProductNode::parts (  ) 

None const 1st generation parts list.

const ProductNodeParts& OSB_LIB::ProductNode::parts (  )  const

1st generation parts list.

ProductItem* OSB_LIB::ProductNode::pItem (  ) 

Non-const access to product item.

const ProductItem* OSB_LIB::ProductNode::pItem (  )  const

Pointer to the product item.

std::ostream& OSB_LIB::ProductNode::prInfo ( std::ostream &  o,
bool  printParts = false,
const std::string &  indent = "" 
) const

Print debugging information.

bool OSB_LIB::ProductNode::setDelete (  )  [private]

Flag the product node for delete.

void OSB_LIB::ProductNode::setMandatory ( const int &  man  ) 

Set mandatory setting of the node.

void OSB_LIB::ProductNode::setParentId ( const ProductNode::Oid parentId  ) 


Friends And Related Function Documentation

friend class OSB_DB::ProductGw [friend]

When reading product nodes from the database or when inserting new product nodes, the gateway object needs access to otherwise private members.

Definition at line 101 of file product.h.

friend class Product [friend]

Product adds new nodes to its list.

Definition at line 95 of file product.h.


Member Data Documentation

EditStatus OSB_LIB::ProductNode::editStatus_ [private]

Edit status of product node.

This attribute will determine which gateway method is called when the product node is commited to the database.

Definition at line 196 of file product.h.

int OSB_LIB::ProductNode::mandatory_ [private]

Mandatory setting of node.

Definition at line 186 of file product.h.

Oid OSB_LIB::ProductNode::oid_ [private]

Product node id.

Definition at line 184 of file product.h.

Oid OSB_LIB::ProductNode::parentId_ [private]

Parent product node.

Definition at line 185 of file product.h.

ProductNodeParts OSB_LIB::ProductNode::parts_ [private]

1st generation parts list.

Definition at line 188 of file product.h.

ProductItem* OSB_LIB::ProductNode::pItem_ [private]

Points to product item.

Definition at line 187 of file product.h.


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