Policy factory for all DiffServ related policies. More...
#include <DiffServPolicy_Factory.h>


Public Member Functions | |
| CORBA::Policy_ptr | create_policy (CORBA::PolicyType type, const CORBA::Any &value) |
| CORBA::Policy_ptr | _create_policy (CORBA::PolicyType type) |
Policy factory for all DiffServ related policies.
Definition at line 40 of file DiffServPolicy_Factory.h.
| CORBA::Policy_ptr TAO_DiffServ_PolicyFactory::_create_policy | ( | CORBA::PolicyType | type | ) |
Definition at line 29 of file DiffServPolicy_Factory.cpp.
{
CORBA::Policy_ptr policy = CORBA::Policy::_nil ();
if (type == TAO::CLIENT_NETWORK_PRIORITY_TYPE)
{
ACE_NEW_THROW_EX (policy,
TAO_Client_Network_Priority_Policy (),
CORBA::NO_MEMORY (
CORBA::SystemException::_tao_minor_code (
TAO::VMCID,
ENOMEM),
CORBA::COMPLETED_NO));
return policy;
}
if (type == TAO::NETWORK_PRIORITY_TYPE)
{
ACE_NEW_THROW_EX (policy,
TAO_Server_Network_Priority_Policy (),
CORBA::NO_MEMORY (
CORBA::SystemException::_tao_minor_code (
TAO::VMCID,
ENOMEM),
CORBA::COMPLETED_NO));
return policy;
}
throw ::CORBA::PolicyError (CORBA::BAD_POLICY_TYPE);
}
| CORBA::Policy_ptr TAO_DiffServ_PolicyFactory::create_policy | ( | CORBA::PolicyType | type, | |
| const CORBA::Any & | value | |||
| ) |
Definition at line 15 of file DiffServPolicy_Factory.cpp.
{
if (type == TAO::CLIENT_NETWORK_PRIORITY_TYPE)
return TAO_Client_Network_Priority_Policy::create (value);
if (type == TAO::NETWORK_PRIORITY_TYPE)
return TAO_Server_Network_Priority_Policy::create (value);
throw ::CORBA::PolicyError (CORBA::BAD_POLICY_TYPE);
}
1.7.0