Public Member Functions

TAO::Portable_Server::RequestProcessingStrategyFactoryImpl Class Reference

#include <RequestProcessingStrategyFactoryImpl.h>

Inheritance diagram for TAO::Portable_Server::RequestProcessingStrategyFactoryImpl:
Inheritance graph
[legend]
Collaboration diagram for TAO::Portable_Server::RequestProcessingStrategyFactoryImpl:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual RequestProcessingStrategycreate (::PortableServer::RequestProcessingPolicyValue value,::PortableServer::ServantRetentionPolicyValue srvalue)
 Create a new servant retention strategy.
virtual void destroy (RequestProcessingStrategy *strategy)

Detailed Description

Definition at line 32 of file RequestProcessingStrategyFactoryImpl.h.


Member Function Documentation

RequestProcessingStrategy * TAO::Portable_Server::RequestProcessingStrategyFactoryImpl::create ( ::PortableServer::RequestProcessingPolicyValue  value,
::PortableServer::ServantRetentionPolicyValue  srvalue 
) [virtual]

Create a new servant retention strategy.

Implements TAO::Portable_Server::RequestProcessingStrategyFactory.

Definition at line 10 of file RequestProcessingStrategyFactoryImpl.cpp.

               : RequestProcessingStrategyFactoryImpl.cpp 84281 2009-01-30 15:01:17Z wotte $")

TAO_BEGIN_VERSIONED_NAMESPACE_DECL

namespace TAO
{
  namespace Portable_Server
  {
    RequestProcessingStrategy*
    RequestProcessingStrategyFactoryImpl::create (
        ::PortableServer::RequestProcessingPolicyValue value,
        ::PortableServer::ServantRetentionPolicyValue srvalue)
    {
      RequestProcessingStrategy* strategy = 0;
      RequestProcessingStrategyFactory *strategy_factory = 0;

      switch (value)
      {
        case ::PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY :
        {
          strategy_factory =
            ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyAOMOnlyFactory");

          break;
        }
        case ::PortableServer::USE_DEFAULT_SERVANT :
        {
          strategy_factory =
            ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyDefaultServantFactory");

          break;
        }
        case ::PortableServer::USE_SERVANT_MANAGER :
        {
#if (TAO_HAS_MINIMUM_POA == 0)
          switch (srvalue)
          {
            case ::PortableServer::RETAIN :
            {
              strategy_factory =
                ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyServantActivatorFactory");

              break;
            }
            case ::PortableServer::NON_RETAIN :
            {
              strategy_factory =
                ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyServantLocatorFactory");

              break;
            }
          }
#endif /* TAO_HAS_MINIMUM_POA == 0 */
          break;
        }

void TAO::Portable_Server::RequestProcessingStrategyFactoryImpl::destroy ( RequestProcessingStrategy strategy  )  [virtual]

Implements TAO::Portable_Server::RequestProcessingStrategyFactory.

Definition at line 70 of file RequestProcessingStrategyFactoryImpl.cpp.

    {
      RequestProcessingStrategyFactory *strategy_factory = 0;

      switch (strategy->type ())
      {
        case ::PortableServer::USE_ACTIVE_OBJECT_MAP_ONLY :
        {
          strategy_factory =
            ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyAOMOnlyFactory");

          break;
        }
        case ::PortableServer::USE_DEFAULT_SERVANT :
        {
          strategy_factory =
            ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyDefaultServantFactory");

          break;
        }
        case ::PortableServer::USE_SERVANT_MANAGER :
        {
#if (TAO_HAS_MINIMUM_POA == 0)
          switch (strategy->sr_type ())
          {
            case ::PortableServer::RETAIN :
            {
              strategy_factory =
                ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyServantActivatorFactory");

              break;
            }
            case ::PortableServer::NON_RETAIN :
            {
              strategy_factory =
                ACE_Dynamic_Service<RequestProcessingStrategyFactory>::instance ("RequestProcessingStrategyServantLocatorFactory");
              break;


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines