TAO::Portable_Server::RequestProcessingStrategyServantActivatorFactoryImpl Class Reference

#include <RequestProcessingStrategyServantActivatorFI.h>

Inheritance diagram for TAO::Portable_Server::RequestProcessingStrategyServantActivatorFactoryImpl:

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

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 34 of file RequestProcessingStrategyServantActivatorFI.h.


Member Function Documentation

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

Create a new servant retention strategy.

Implements TAO::Portable_Server::RequestProcessingStrategyFactory.

Definition at line 24 of file RequestProcessingStrategyServantActivatorFI.cpp.

References ACE_ERROR, ACE_NEW_RETURN, and LM_ERROR.

00027     {
00028       RequestProcessingStrategy* strategy = 0;
00029 
00030       switch (value)
00031       {
00032         case ::PortableServer::USE_SERVANT_MANAGER :
00033         {
00034           switch (srvalue)
00035           {
00036             case ::PortableServer::RETAIN :
00037             {
00038               ACE_NEW_RETURN (strategy, RequestProcessingStrategyServantActivator, 0);
00039               break;
00040             }
00041             case ::PortableServer::NON_RETAIN :
00042             {
00043               ACE_ERROR ((LM_ERROR, "Incorrect type in RequestProcessingStrategyServantActivatorFactoryImpl"));
00044               break;
00045             }
00046           }
00047           break;
00048         }
00049         default :
00050         {
00051           ACE_ERROR ((LM_ERROR, "Incorrect type in RequestProcessingStrategyServantActivatorFactoryImpl"));
00052           break;
00053         }
00054       }
00055 
00056       return strategy;
00057     }

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

Implements TAO::Portable_Server::RequestProcessingStrategyFactory.

Definition at line 60 of file RequestProcessingStrategyServantActivatorFI.cpp.

References TAO::Portable_Server::RequestProcessingStrategy::strategy_cleanup().

00063     {
00064       strategy->strategy_cleanup ();
00065 
00066       delete strategy;
00067     }


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:41:48 2010 for TAO_PortableServer by  doxygen 1.4.7