TAO_CosTrader  2.2.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Types | Protected Attributes | Private Member Functions | List of all members
TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE > Class Template Reference

This class packages together all the various pieces that provide functionality specified in COS Trading specification. More...

#include <Trader_T.h>

Inheritance diagram for TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >:
Inheritance graph
Collaboration diagram for TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >:
Collaboration graph

Public Types

typedef TAO_Offer_Database
< MAP_LOCK_TYPE > 
Offer_Database
 Offer Database Trait. More...
 
- Public Types inherited from TAO_Trader_Base
enum  Trader_Components {
  LOOKUP = 0x001, REGISTER = 0x002, LINK = 0x004, PROXY = 0x008,
  ADMIN = 0x010
}
 

Public Member Functions

 TAO_Trader (Trader_Components components=LOOKUP)
 
virtual ~TAO_Trader (void)
 Destructor. More...
 
Offer_Databaseoffer_database (void)
 Accessor for the structure with all the service offers. More...
 
ACE_Locklock (void)
 Returns the trader. More...
 
- Public Member Functions inherited from TAO_Trader_Base
virtual ~TAO_Trader_Base (void)
 
TAO_Trading_Components_itrading_components (void)
 
const TAO_Trading_Components_itrading_components (void) const
 
TAO_Import_Attributes_iimport_attributes (void)
 
const TAO_Import_Attributes_iimport_attributes (void) const
 
TAO_Support_Attributes_isupport_attributes (void)
 
const TAO_Support_Attributes_isupport_attributes (void) const
 
TAO_Link_Attributes_ilink_attributes (void)
 
const TAO_Link_Attributes_ilink_attributes (void) const
 
- Public Member Functions inherited from TAO_Lockable
virtual ~TAO_Lockable (void)
 

Protected Types

enum  {
  LOOKUP_IF, REGISTER_IF, ADMIN_IF, PROXY_IF,
  LINK_IF
}
 
typedef TAO_Trader
< TRADER_LOCK_TYPE,
MAP_LOCK_TYPE > 
TRADER_SELF
 

Protected Attributes

Offer_Database offer_database_
 
ACE_Lock_Adapter
< TRADER_LOCK_TYPE > 
lock_
 Lock that guards the state of the trader (its configuration). More...
 
PortableServer::ServantBaseifs_ [5]
 
- Protected Attributes inherited from TAO_Trader_Base
TAO_Trading_Components_i trading_components_
 Stores and allows lookup of trader's components. More...
 
TAO_Import_Attributes_i import_attributes_
 Stores and allows access/modification of trader's import attributes. More...
 
TAO_Support_Attributes_i support_attributes_
 Stores and allows access/modification of trader's support attributes. More...
 
TAO_Link_Attributes_i link_attributes_
 Stores and allows access/modification of trader's link attributes. More...
 

Private Member Functions

void operator= (const TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE > &)
 

Additional Inherited Members

- Static Public Member Functions inherited from TAO_Trader_Base
static CORBA::Boolean is_valid_identifier_name (const char *ident)
 
static CORBA::Boolean is_valid_property_name (const char *ident)
 
static CORBA::Boolean is_valid_link_name (const char *ident)
 
- Protected Member Functions inherited from TAO_Trader_Base
 TAO_Trader_Base (void)
 Implemented. More...
 

Detailed Description

template<class TRADER_LOCK_TYPE, class MAP_LOCK_TYPE>
class TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >

This class packages together all the various pieces that provide functionality specified in COS Trading specification.

TAO_Trader contains all the components that together represent a single trader. Based on its constructor arguments, TAO_Trader creates instances of appropriate interface implementations as well as instances of objects common to more than one interface (offers, attributes, etc.). TAO_Trader also enforces the proper order on all initializations. TAO_Trader acts like a "glue" class that creates appropriate components, holds everything together, and enforces order. TAO_Trader is parameterized by two types of locks: one for its service service offers, one for its state (configuration).

Member Typedef Documentation

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
typedef TAO_Offer_Database<MAP_LOCK_TYPE> TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::Offer_Database

Offer Database Trait.

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
typedef TAO_Trader<TRADER_LOCK_TYPE, MAP_LOCK_TYPE> TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::TRADER_SELF
protected

Member Enumeration Documentation

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
anonymous enum
protected
Enumerator
LOOKUP_IF 
REGISTER_IF 
ADMIN_IF 
PROXY_IF 
LINK_IF 

Constructor & Destructor Documentation

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::TAO_Trader ( TAO_Trader_Base::Trader_Components  components = LOOKUP)

Constructor which based on its arguments will create a particular type of trader (e.g. Query trader, Simple trader, etc.) The argument is a bitwise OR of desired Trader_Components as listed in enumerated type above.

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::~TAO_Trader ( void  )
virtual

Destructor.

Member Function Documentation

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
ACE_Lock & TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::lock ( void  )
virtual

Returns the trader.

Implements TAO_Lockable.

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
TAO_Offer_Database< MAP_LOCK_TYPE > & TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::offer_database ( void  )

Accessor for the structure with all the service offers.

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
void TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::operator= ( const TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE > &  )
private

Member Data Documentation

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
PortableServer::ServantBase* TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::ifs_[5]
protected
template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
ACE_Lock_Adapter<TRADER_LOCK_TYPE> TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::lock_
protected

Lock that guards the state of the trader (its configuration).

template<class TRADER_LOCK_TYPE , class MAP_LOCK_TYPE >
Offer_Database TAO_Trader< TRADER_LOCK_TYPE, MAP_LOCK_TYPE >::offer_database_
protected

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