3 //=============================================================================
5 * @file IdUniquenessStrategyFactory.h
7 * @author Johnny Willemsen <jwillemsen@remedy.nl>
9 //=============================================================================
11 #ifndef TAO_PORTABLESERVER_IDUNIQUENESSSTRATEGYFACTORY_H
12 #define TAO_PORTABLESERVER_IDUNIQUENESSSTRATEGYFACTORY_H
13 #include /**/ "ace/pre.h"
15 #include "tao/PortableServer/portableserver_export.h"
17 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 #endif /* ACE_LACKS_PRAGMA_ONCE */
21 #include "tao/PortableServer/StrategyFactory.h"
22 #include "tao/PortableServer/IdUniquenessPolicyC.h"
24 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
28 namespace Portable_Server
30 class IdUniquenessStrategy
;
32 class TAO_PortableServer_Export IdUniquenessStrategyFactory
33 : public StrategyFactory
36 /// Create a new servant retention strategy
37 virtual IdUniquenessStrategy
* create (::PortableServer::IdUniquenessPolicyValue value
) = 0;
39 /// Cleanup the given strategy instance
40 virtual void destroy (IdUniquenessStrategy
*strategy
) = 0;
45 TAO_END_VERSIONED_NAMESPACE_DECL
47 #include /**/ "ace/post.h"
48 #endif /* TAO_PORTABLESERVER_IDUNIQUENESSSTRATEGYFACTORY_H */