J-Integra® Espresso Programming Documentation (API)

Ics.PortableServer Namespace

The PortableServer namespace comprehends all interfaces necessary to operate the Portable Object Adapter.

Namespaces

NamespaceDescription
CurrentPackage Provides method implementations with access to the identity of the object on which the method was invoked.
POAManagerPackage Encapsulates the processing state of the POAs it is associated with.
POAPackage Allows programmers to construct object implementations that are portable between different ORB products.
portable Provides classes and interfaces for making the server side of your applications portable across multivendor ORBs.

Interfaces

InterfaceDescription
AdapterActivator An adapter activator supplies a POA with the ability to create child POAs on demand, as a side-effect of receiving a request that names the child POA (or one of its children), or when find_POA is called with an activate parameter value of TRUE.
Current Provides method implementations with access to the identity of the object on which the method was invoked.
POA A Portable Object Adapter object manages the implementation of a collection of objects.
POAManager Each POA object has an associated POAManager object. A POA manager may be associated with one or more POA objects. A POA manager encapsulates the processing state of the POAs it is associated with.
ServantActivator When the POA has the RETAIN policy it uses servant managers that are ServantActivators.
ServantLocator When the POA has the NON_RETAIN policy it uses servant managers that are ServantLocators.
ServantManager A servant manager supplies a POA with the ability to activate objects on demand when the POA receives a request targeted at an inactive object. A servant manager is registered with a POA as a callback object, to be invoked by the POA when necessary. ServantManagers can either be ServantActivators or ServantLocators. A ServantManager object must be local to the process containing the POA objects it is registered with.

Policies

PoliceDescription
IdAssignmentPolicy This policy specifies whether object ids are generated by the application or by the POA. The default is SYSTEM_ID.
IdUniquenessPolicy This policy specifies whether the servants activated must have unique object identities. The default is UNIQUE_ID.
ImplicitActivationPolicy This policy specifies whether implicit activation of servants is supported.
LifespanPolicy This policy specifies the lifespan of the objects. The default is TRANSIENT.
RequestProcessingPolicy This policy specifies how requests are processed. The default is USE_ACTIVE_OBJECT_MAP_ONLY.
ServantRetentionPolicy This policy specifies whether the POA retains active servants in an active object map.
ThreadPolicy This policy specifies the threading model used. The default is ORB_CTRL_MODEL.

Classes

ClassDescription
Servant It defines the native Servant type.

Structures

StructureDescription
ID_ASSIGNMENT_POLICY_ID

Constant definition: ID_ASSIGNMENT_POLICY_ID.

ID_UNIQUENESS_POLICY_ID

Constant definition: ID_UNIQUENESS_POLICY_ID.

IMPLICIT_ACTIVATION_POLICY_ID

Constant definition: IMPLICIT_ACTIVATION_POLICY_ID.

LIFESPAN_POLICY_ID

Constant definition: ID_ASSIGNMENT_POLICY_ID.

REQUEST_PROCESSING_POLICY_ID

Constant definition: LIFESPAN_POLICY_ID.

SERVANT_RETENTION_POLICY_ID

Constant definition: SERVANT_RETENTION_POLICY_ID.

THREAD_POLICY_ID

Constant definition: THREAD_POLICY_ID.

Enumerations

EnumerationDescription
IdAssignmentPolicyValue

The IdAssignmentPolicyValue can have the following values. USER_ID - Objects created with that POA are assigned Object Ids only by the application. SYSTEM_ID - Objects created with that POA are assigned Object Ids only by the POA. If the POA also has the PERSISTENT policy, assigned Object Ids must be unique across all instantiations of the same POA.

IdUniquenessPolicyValue

IdUniquenessPolicyValue can have the following values. UNIQUE_ID - Servants activated with that POA support exactly one Object Id. MULTIPLE_ID - a servant activated with that POA may support one or more Object Ids.

ImplicitActivationPolicyValue

ImplicitActivationPolicyValue has the following semantics. IMPLICIT_ACTIVATION to indicate implicit activation of servants. This requires SYSTEM_ID and RETAIN policies to be set. NO_IMPLICIT_ACTIVATION to indicate no implicit servant activation.

LifespanPolicyValue

The LifespanPolicyValue can have the following values. TRANSIENT - The objects implemented in the POA cannot outlive the POA instance in which they are first created. PERSISTENT - The objects implemented in the POA can outlive the process in which they are first created.

RequestProcessingPolicyValue

The RequestProcessingPolicyValue can have the following values. USE_ACTIVE_OBJECT_MAP_ONLY - If the Object Id is not found in the Active Object Map, an OBJECT_NOT_EXIST exception is returned to the client. The RETAIN policy is also required. USE_DEFAULT_SERVANT - If the Object Id is not found in the Active Object Map or the NON_RETAIN policy is present, and a default servant has been registered with the POA using the set_servant operation, the request is dispatched to the default servant. USE_SERVANT_MANAGER - If the Object Id is not found in the Active Object Map or the NON_RETAIN policy is present, and a servant manager has been registered with the POA using the set_servant_manager operation, the servant manager is given the opportunity to locate a servant or raise an exception.

ServantRetentionPolicyValue

ServantRetentionPolicyValue can have the following values. RETAIN - to indicate that the POA will retain active servants in its Active Object Map. NON_RETAIN - to indicate Servants are not retained by the POA. If no ServantRetentionPolicy is specified at POA creation, the default is RETAIN.

ThreadPolicyValue

The ThreadPolicyValue can have the following values. ORB_CTRL_MODEL - The ORB is responsible for assigning requests for an ORB- controlled POA to threads. SINGLE_THREAD_MODEL - Requests for a single-threaded POA are processed sequentially.


See Also

Ics Namespace


© 2007 Intrinsyc Software International, Inc. All rights reserved.