00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TAO_PG_SERVANT_DISPATCHER_H
00014 #define TAO_PG_SERVANT_DISPATCHER_H
00015 #include "ace/pre.h"
00016
00017 #include "orbsvcs/PortableGroup/portablegroup_export.h"
00018 #include "tao/PortableServer/Servant_Dispatcher.h"
00019
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif
00023
00024 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 class TAO_PortableGroup_Export TAO_PG_Servant_Dispatcher
00036 : public TAO_Servant_Dispatcher
00037 {
00038 public:
00039 virtual ~TAO_PG_Servant_Dispatcher (void);
00040
00041
00042 void pre_invoke_remote_request (TAO_Root_POA &poa,
00043 CORBA::Short servant_priority,
00044 TAO_ServerRequest &req,
00045 TAO::Portable_Server::Servant_Upcall::Pre_Invoke_State &pre_invoke_state
00046 ACE_ENV_ARG_DECL);
00047
00048
00049 void pre_invoke_collocated_request (TAO_Root_POA &poa,
00050 CORBA::Short servant_priority,
00051 TAO::Portable_Server::Servant_Upcall::Pre_Invoke_State &pre_invoke_state
00052 ACE_ENV_ARG_DECL);
00053
00054
00055 void post_invoke (TAO_Root_POA &poa,
00056 TAO::Portable_Server::Servant_Upcall::Pre_Invoke_State &pre_invoke_state);
00057
00058
00059 TAO_Root_POA *create_Root_POA (const ACE_CString &name,
00060 PortableServer::POAManager_ptr poa_manager,
00061 const TAO_POA_Policy_Set &policies,
00062 ACE_Lock &lock,
00063 TAO_SYNCH_MUTEX &thread_lock,
00064 TAO_ORB_Core &orb_core,
00065 TAO_Object_Adapter *object_adapter
00066 ACE_ENV_ARG_DECL);
00067 };
00068
00069 TAO_END_VERSIONED_NAMESPACE_DECL
00070
00071 #include "ace/post.h"
00072 #endif