We make no attempt to explain POA here. We only mention aspects of our implementation that affect an application's use of ORBLink with POA.
poa:poa-exception
-- superclass of all the poa exceptions poa:forwardrequest
poa:current/nocontext
poa:poamanager/adapterinactive
poa:adapteralreadyexists
poa:adapternonexistent
poa:invalidpolicy
poa:noservant
poa:objectalreadyactive
poa:objectnotactive
poa:servantalreadyactive
poa:servantnotactive
poa:wrongadapter
poa:wrongpolicy
Policy classes:
poa:threadpolicy
poa:lifespanpolicy
poa:iduniquenesspolicy
poa:idassignmentpolicy
poa:implicitactivationpolicy
poa:servantretentionpolicy
poa:requestprocessingpolicy
Other classes
poa:poa
poa:userid
-- a mixin class. A method for poa:default-poa is
specialized on this class returns a particular (predefined) poa that supports
user-specified object id's. See the discussion of the default-poa function. poa:poamanager
poa:adapteractivater
-- to be subclassed to provide for method
specialization poa:servantmanager
-- superclass of poa:servantactivator and
poa:servantlocator poa:servantactivator
-- to be subclassed to provide for method
specialization poa:servantlocator
-- to be subclassed to provide for method
specialization poa:current
poa:threadpolicyvalue-type
= (member :orb_ctrl_model
:single_thread_model)
poa:lifespanpolicyvalue-type
= (member :transient
:persistent)
poa:iduniquenesspolicyvalue-type
= (member :unique_id
:multiple_id)
poa:idassignmentpolicyvalue-type
= (member :user_id
:system_id)
poa:implicitactivationpolicyvalue-type
= (member
:implicit_activation :no_implicit_activation)
poa:servantretentionpolicyvalue-type
= (member :retain
:non_retain)
poa:requestprocessingpolicyvalue-type
= (member
:use_active_object_map_only :use_default_servant :use_servant_manager)
A generic function. A method specialized on corba:servant returns a particular :retain :system_id :transient :implicit_activation :use_active_object_map_only POA that approximates the semantics of pre-POA ORBLink.
A second POA, with :no_implicit_activation and :user_id policies, is returned by a method specialized on poa:user-id. This allows an application to mix the poa:user-id class in to an implementation to get a default user_id POA for instances of that class.
Applications can provide methods specialized on any implementation classes to use specific POAs.
(typep x
'poa:threadpolicyvalue-type)
(typep x
'poa:lifespanpolicyvalue-type)
(typep x
'poa:iduniquenesspolicyvalue-type)
(typep x
'poa:idassignmentpolicyvalue-type)
(typep x
'poa:implicitactivationpolicyvalue-type)
(typep x
'poa:servantretentionpolicyvalue-type)
(typep x
'poa:requestprocessingpolicyvalue-type)