Previous Table of Contents Next


21.6.1 PolicyFactory Interface


   A portable ORB service implementation registers an instance of the PolicyFactory interface during ORB initialization (see Section 21.7.2.12, “register_policy_factory,? on page 21-54) in order to enable its policy types to be constructed using CORBA::ORB::create_policy. The POA is required to preserve any policy that is registered with ORBInitInfo in this manner.

   module PortableInterceptor

   { local interface PolicyFactory {

   CORBA::Policy create_policy ( in CORBA::PolicyType type, in any value) raises (CORBA::PolicyError);

   };};

   21.6.1.1 create_policy

   The ORB calls create_policy on a registered PolicyFactory instance when CORBA::ORB::create_policy is called for the PolicyType under which the PolicyFactory has been registered. The create_policy operation then returns an instance of the appropriate interface derived from CORBA::Policy whose value corresponds to the specified any. If it cannot, it shall raise an exception as described for CORBA::ORB::create_policy.

Parameters Description
type A CORBA::PolicyType specifying the type of policy being created.
value An any containing data with which to construct the CORBA::Policy.
Return Value A CORBA::Policy object of the specified type and value.