Public Member Functions

TAO::Portable_Server::IdUniquenessStrategyFactoryImpl Class Reference

#include <IdUniquenessStrategyFactoryImpl.h>

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

List of all members.

Public Member Functions

virtual IdUniquenessStrategycreate (::PortableServer::IdUniquenessPolicyValue value)
 Create a new servant retention strategy.
virtual void destroy (IdUniquenessStrategy *strategy)
 Cleanup the given strategy instance.

Detailed Description

Definition at line 32 of file IdUniquenessStrategyFactoryImpl.h.


Member Function Documentation

IdUniquenessStrategy * TAO::Portable_Server::IdUniquenessStrategyFactoryImpl::create ( ::PortableServer::IdUniquenessPolicyValue  value  )  [virtual]

Create a new servant retention strategy.

Implements TAO::Portable_Server::IdUniquenessStrategyFactory.

Definition at line 6 of file IdUniquenessStrategyFactoryImpl.cpp.

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

TAO_BEGIN_VERSIONED_NAMESPACE_DECL

namespace TAO
{
  namespace Portable_Server
  {
    IdUniquenessStrategy*
    IdUniquenessStrategyFactoryImpl::create (
      ::PortableServer::IdUniquenessPolicyValue value)
    {
      IdUniquenessStrategy* strategy = 0;
      switch (value)
      {
        case ::PortableServer::MULTIPLE_ID :
        {
          strategy =
            ACE_Dynamic_Service<IdUniquenessStrategy>::instance ("IdUniquenessStrategyMultiple");

          if (strategy == 0)
            ACE_ERROR ((LM_ERROR,
                        ACE_TEXT ("(%P|%t) %p\n"),
                        ACE_TEXT ("ERROR, Unable to get ")
                        ACE_TEXT ("IdUniquenessStrategyMultiple")));

          break;
        }
        case ::PortableServer::UNIQUE_ID :
        {
          IdUniquenessStrategyFactory *strategy_factory =
            ACE_Dynamic_Service<IdUniquenessStrategyFactory>::instance ("IdUniquenessStrategyUniqueFactory");

          if (strategy_factory != 0)
            strategy = strategy_factory->create (value);

void TAO::Portable_Server::IdUniquenessStrategyFactoryImpl::destroy ( IdUniquenessStrategy strategy  )  [virtual]

Cleanup the given strategy instance.

Implements TAO::Portable_Server::IdUniquenessStrategyFactory.

Definition at line 46 of file IdUniquenessStrategyFactoryImpl.cpp.

    {
      switch (strategy->type ())
      {
        case ::PortableServer::MULTIPLE_ID :
        {
          // Noop
          break;
        }
        case ::PortableServer::UNIQUE_ID :


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