TAO_CosTrader  2.0.8
Public Member Functions | Private Types | Private Member Functions | Private Attributes
TAO_Offer_Modifier Class Reference

This class deletes, modifies, and adds properties to a given offer according to the rules of the modify method on the Register interface. More...

#include <Trader_Utils.h>

Collaboration diagram for TAO_Offer_Modifier:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_Offer_Modifier (const char *type, const CosTradingRepos::ServiceTypeRepository::TypeStruct &type_struct, CosTrading::Offer *offer)
 ~TAO_Offer_Modifier (void)
void delete_properties (const CosTrading::PropertyNameSeq &deletes)
void merge_properties (const CosTrading::PropertySeq &modifies)
void affect_change (const CosTrading::PropertySeq &modifies)
 Return a reference to the Offer with the changes affected.

Private Types

typedef
ACE_Hash_Map_Manager_Ex
< CORBA::String_var,
CosTrading::Property
*, ACE_Hash< CORBA::String_var >
, ACE_Equal_To
< CORBA::String_var >
, ACE_Null_Mutex
Property_Table

Private Member Functions

 TAO_Offer_Modifier (const TAO_Offer_Modifier &)
TAO_Offer_Modifieroperator= (const TAO_Offer_Modifier &)

Private Attributes

const char * type_
 The type of the offer.
Property_Table props_
 The map of properties in the offer.
TAO_Typecode_Table prop_types_
 Table of property types.
TAO_String_Set readonly_
TAO_String_Set mandatory_
CosTrading::Offeroffer_
 A reference to the offer undergoing change.

Detailed Description

This class deletes, modifies, and adds properties to a given offer according to the rules of the modify method on the Register interface.


Member Typedef Documentation


Constructor & Destructor Documentation

TAO_Offer_Modifier::TAO_Offer_Modifier ( const char *  type,
const CosTradingRepos::ServiceTypeRepository::TypeStruct type_struct,
CosTrading::Offer offer 
)

Modify an <offer> of type <type>, whose properties are described by <type_struct>

TAO_Offer_Modifier::~TAO_Offer_Modifier ( void  )
TAO_Offer_Modifier::TAO_Offer_Modifier ( const TAO_Offer_Modifier ) [private]

Member Function Documentation

void TAO_Offer_Modifier::affect_change ( const CosTrading::PropertySeq modifies)

Return a reference to the Offer with the changes affected.

void TAO_Offer_Modifier::delete_properties ( const CosTrading::PropertyNameSeq deletes)

Delete the properties whose names were given to the constructor. Ensure we don't delete mandatory properties.

void TAO_Offer_Modifier::merge_properties ( const CosTrading::PropertySeq modifies)

Copy to the destination the union of the source and destination properties. In the case of duplicate properties, update the destination with the source's value. This class claims the memory in the modifies sequence.

TAO_Offer_Modifier& TAO_Offer_Modifier::operator= ( const TAO_Offer_Modifier ) [private]

Member Data Documentation

A reference to the offer undergoing change.

Table of property types.

The map of properties in the offer.

The set of readonly and mandatory property names in the offer's type.

const char* TAO_Offer_Modifier::type_ [private]

The type of the offer.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines