Module java.corba
Package org.omg.PortableInterceptor

## Interface PolicyFactoryOperations

All Known Subinterfaces:
  PolicyFactory

    public interface PolicyFactoryOperations

Enables policy types to be constructed using `CORBA.ORB.create_policy`.

A portable ORB service implementation registers an instance of the `PolicyFactory` interface during ORB initialization in order to enable its policy types to be constructed using `CORBA.ORB.create_policy`. The POA is required to preserve any policy which is registered with `ORBInitInfo` in this manner.

See Also:
  `ORBInitInfoOperations.register_policy_factory(int, org.omg.PortableInterceptor.PolicyFactory)`

### Method Summary

All Methods Instance Methods Abstract Methods
`Policy` `create_policy(int type, Any value)` Returns an instance of the appropriate interface derived from `CORBA.Policy` whose value corresponds to the specified any.

### Method Detail

#### create_policy

    Policy create_policy(int type,
                         Any value)
                  throws PolicyError

Returns an instance of the appropriate interface derived from `CORBA.Policy` whose value corresponds to the specified any.

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 throw an exception as described for `CORBA.ORB.create_policy`.

Parameters:
  `type` - An int specifying the type of policy being created.
  `value` - An any containing data with which to construct the `CORBA.Policy`.
Returns:
  A `CORBA.Policy` object of the specified type and value.
Throws:
  `PolicyError`