#include <RequestProcessingStrategyServantLocatorFI.h>
Inheritance diagram for TAO::Portable_Server::RequestProcessingStrategyServantLocatorFactoryImpl:
Public Member Functions | |
virtual RequestProcessingStrategy * | create (::PortableServer::RequestProcessingPolicyValue value,::PortableServer::ServantRetentionPolicyValue srvalue) |
Create a new servant retention strategy. | |
virtual void | destroy (RequestProcessingStrategy *strategy) |
|
Create a new servant retention strategy.
Implements TAO::Portable_Server::RequestProcessingStrategyFactory. Definition at line 24 of file RequestProcessingStrategyServantLocatorFI.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_ERROR ((LM_ERROR, "Incorrect type in RequestProcessingStrategyServantLocatorFactoryImpl")); 00039 break; 00040 } 00041 case ::PortableServer::NON_RETAIN : 00042 { 00043 ACE_NEW_RETURN (strategy, RequestProcessingStrategyServantLocator, 0); 00044 break; 00045 } 00046 } 00047 break; 00048 } 00049 default : 00050 { 00051 ACE_ERROR ((LM_ERROR, "Incorrect type in RequestProcessingStrategyServantLocatorFactoryImpl")); 00052 break; 00053 } 00054 } 00055 00056 return strategy; 00057 } |
|
Implements TAO::Portable_Server::RequestProcessingStrategyFactory. Definition at line 60 of file RequestProcessingStrategyServantLocatorFI.cpp. References TAO::Portable_Server::RequestProcessingStrategy::strategy_cleanup().
00062 {
00063 strategy->strategy_cleanup ();
00064
00065 delete strategy;
00066 }
|