diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Trader/Trader_T.h')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Trader/Trader_T.h | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Trader/Trader_T.h b/TAO/orbsvcs/orbsvcs/Trader/Trader_T.h deleted file mode 100644 index c3964a08654..00000000000 --- a/TAO/orbsvcs/orbsvcs/Trader/Trader_T.h +++ /dev/null @@ -1,103 +0,0 @@ -/* -*- C++ -*- */ - -// ======================================================================== -// $Id$ -// -// = LIBRARY -// orbsvcs -// -// = FILENAME -// Trader.h -// -// = AUTHOR -// Marina Spivak <marina@cs.wustl.edu> -// Seth Widoff <sbw1@cs.wustl.edu> -// Irfan Pyarali <irfan@cs.wustl.edu> -// -// ======================================================================== - -#ifndef TAO_TRADER_H -#define TAO_TRADER_H - -// ACE includes -#include "Trader.h" -#include "Service_Type_Map.h" - -template <class TRADER_LOCK_TYPE, class MAP_LOCK_TYPE> -class TAO_Trader : public TAO_Trader_Base - // - // = TITLE - // This class packages together all the various pieces that - // provide functionality specified in COS Trading specification. - // - // = DESCRIPTION - // 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). -{ -public: - - enum Trader_Components - { - LOOKUP = 0x001, - REGISTER = 0x002, - LINK = 0x004, - PROXY = 0x008, - ADMIN = 0x010 - }; - // The desired combination of interfaces to be passed to the - // TAO_Trader constructor. - - typedef TAO_Service_Type_Map<MAP_LOCK_TYPE> Service_Type_Map; - - TAO_Trader (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. - - ~TAO_Trader (void); - // destructor. - - Service_Type_Map& service_type_map (void); - // Accessor for the structure with all the service offers. - - ACE_Lock &lock (void); - // returns the trader - -protected: - - typedef TAO_Trader<TRADER_LOCK_TYPE, MAP_LOCK_TYPE> TRADER_SELF; - - Service_Type_Map service_type_map_; - // A monitor (i.e. an STL map + a lock) serving as a storage for - // all the service offers of a trader. - // Structure: a map (actually a monitor) of service type names to - // a counter + a map (a monitor) of offers for that service type. A map of offers for - // a service type (an internal map) is a mapping from a number ids to offers. - - ACE_Lock_Adapter<TRADER_LOCK_TYPE> lock_; - // lock that guards the state of the trader (its configuration). - - enum { LOOKUP_IF, REGISTER_IF, ADMIN_IF, PROXY_IF, LINK_IF }; - - PortableServer::ServantBase* ifs_[5]; -}; - -template <class SEQ, class OPERAND_TYPE> -CORBA::Boolean TAO_find (SEQ& sequence, const OPERAND_TYPE operand); - -#if defined (ACE_TEMPLATES_REQUIRE_SOURCE) -#include "Trader_T.cpp" -#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */ - -#endif /* ACE_TRADER_H */ - |