00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file CSD_Object_Adapter.h 00006 * 00007 * $Id: CSD_Object_Adapter.h 78787 2007-07-05 08:02:28Z johnnyw $ 00008 * 00009 * @author Yan Dai (dai_y@ociweb.com) 00010 */ 00011 //============================================================================= 00012 00013 00014 #ifndef TAO_CSD_OBJECT_ADAPTER_H 00015 #define TAO_CSD_OBJECT_ADAPTER_H 00016 #include /**/ "ace/pre.h" 00017 00018 #include "tao/CSD_Framework/CSD_FW_Export.h" 00019 00020 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00021 # pragma once 00022 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00023 00024 #include "tao/PortableServer/Object_Adapter.h" 00025 00026 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00027 00028 /** 00029 * @class TAO_CSD_Object_Adapter 00030 * 00031 * @brief Defines the CSD version Object Adapter which overrides 00032 * default dispatch implementation. 00033 * 00034 * This class will be used as a facade for the CSD POAs in a server 00035 */ 00036 class TAO_CSD_FW_Export TAO_CSD_Object_Adapter : public TAO_Object_Adapter 00037 { 00038 public: 00039 00040 /// Constructor 00041 TAO_CSD_Object_Adapter (const TAO_Server_Strategy_Factory::Active_Object_Map_Creation_Parameters &creation_parameters, 00042 TAO_ORB_Core &orb_core); 00043 00044 /// Destructor 00045 virtual ~TAO_CSD_Object_Adapter (void); 00046 00047 /// Hand the request to the Service_Dispatching_Strategy_Proxy for 00048 /// dispatching. 00049 virtual void do_dispatch (TAO_ServerRequest& req, 00050 TAO::Portable_Server::Servant_Upcall& upcall); 00051 }; 00052 00053 TAO_END_VERSIONED_NAMESPACE_DECL 00054 00055 #include /**/ "ace/post.h" 00056 #endif /* TAO_CSD_OBJECT_ADAPTER_H */