00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TAO_PORTABLESERVER_REQUESTPROCESSINGSTRATEGYFACTORY_H
00014 #define TAO_PORTABLESERVER_REQUESTPROCESSINGSTRATEGYFACTORY_H
00015 #include "ace/pre.h"
00016
00017 #include "tao/PortableServer/portableserver_export.h"
00018
00019 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00020 # pragma once
00021 #endif
00022
00023 #include "tao/PortableServer/StrategyFactory.h"
00024 #include "tao/PortableServer/RequestProcessingPolicyC.h"
00025 #include "tao/PortableServer/ServantRetentionPolicyC.h"
00026
00027 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00028
00029 namespace TAO
00030 {
00031 namespace Portable_Server
00032 {
00033 class RequestProcessingStrategy;
00034
00035 class TAO_PortableServer_Export RequestProcessingStrategyFactory
00036 : public StrategyFactory
00037 {
00038 public:
00039
00040 virtual RequestProcessingStrategy* create (
00041 ::PortableServer::RequestProcessingPolicyValue value,
00042 ::PortableServer::ServantRetentionPolicyValue srvalue) = 0;
00043
00044 virtual void destroy (
00045 RequestProcessingStrategy *strategy
00046 ) = 0;
00047 };
00048 }
00049 }
00050
00051 TAO_END_VERSIONED_NAMESPACE_DECL
00052
00053 #include "ace/post.h"
00054 #endif