Public Member Functions

TAO_RT_PolicyFactory Class Reference

Policy factory for all RTCORBA related policies. More...

#include <RT_PolicyFactory.h>

Inheritance diagram for TAO_RT_PolicyFactory:
Inheritance graph
[legend]
Collaboration diagram for TAO_RT_PolicyFactory:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual CORBA::Policy_ptr create_policy (CORBA::PolicyType type, const CORBA::Any &value)
virtual CORBA::Policy_ptr _create_policy (CORBA::PolicyType type)

Detailed Description

Policy factory for all RTCORBA related policies.

Definition at line 43 of file RT_PolicyFactory.h.


Member Function Documentation

CORBA::Policy_ptr TAO_RT_PolicyFactory::_create_policy ( CORBA::PolicyType  type  )  [virtual]

Definition at line 41 of file RT_PolicyFactory.cpp.

{
  CORBA::Policy_ptr policy = CORBA::Policy_ptr ();

  switch (type)
  {
    case RTCORBA::PRIORITY_MODEL_POLICY_TYPE :
    {
      ACE_NEW_THROW_EX (policy,
                        TAO_PriorityModelPolicy,
                        CORBA::NO_MEMORY (
                          CORBA::SystemException::_tao_minor_code (
                            TAO::VMCID,
                            ENOMEM),
                          CORBA::COMPLETED_NO));

      return policy;
    }
    break;
    case RTCORBA::PRIORITY_BANDED_CONNECTION_POLICY_TYPE :
    {
      ACE_NEW_THROW_EX (policy,
                        TAO_PriorityBandedConnectionPolicy,
                        CORBA::NO_MEMORY (
                          CORBA::SystemException::_tao_minor_code (
                            TAO::VMCID,
                            ENOMEM),
                          CORBA::COMPLETED_NO));

      return policy;
    }
    break;
    case RTCORBA::CLIENT_PROTOCOL_POLICY_TYPE :
    {
      ACE_NEW_THROW_EX (policy,
                        TAO_ClientProtocolPolicy,
                        CORBA::NO_MEMORY (
                          CORBA::SystemException::_tao_minor_code (
                            TAO::VMCID,
                            ENOMEM),
                          CORBA::COMPLETED_NO));

      return policy;
    }
    break;
  }

  throw ::CORBA::PolicyError (CORBA::BAD_POLICY_TYPE);
}

CORBA::Policy_ptr TAO_RT_PolicyFactory::create_policy ( CORBA::PolicyType  type,
const CORBA::Any value 
) [virtual]

Definition at line 17 of file RT_PolicyFactory.cpp.

{
  switch (type)
  {
    case RTCORBA::PRIORITY_MODEL_POLICY_TYPE :
      return TAO_PriorityModelPolicy::create (value);
    case RTCORBA::THREADPOOL_POLICY_TYPE :
      return TAO_ThreadpoolPolicy::create (value);
    case RTCORBA::SERVER_PROTOCOL_POLICY_TYPE :
      return TAO_ServerProtocolPolicy::create (value);
    case RTCORBA::CLIENT_PROTOCOL_POLICY_TYPE :
      return TAO_ClientProtocolPolicy::create (value);
    case RTCORBA::PRIVATE_CONNECTION_POLICY_TYPE :
      return TAO_PrivateConnectionPolicy::create (value);
    case RTCORBA::PRIORITY_BANDED_CONNECTION_POLICY_TYPE :
      return TAO_PriorityBandedConnectionPolicy::create (value);
  }

  throw ::CORBA::PolicyError (CORBA::BAD_POLICY_TYPE);
}


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