-
Key: CORBA35-64
-
Legacy Issue Number: 5639
-
Status: open
-
Source: THALES ( Hakim Souami)
-
Summary:
Document ptc/2001-11-03, CORBA Component Model
{ HomeRegistration get_home_registration (); void req_passivate () raises (PolicyMismatch); CatalogBase get_persistence (in _TypeId catalog_type_id) raises (PersistenceNotAvailable); }
----------------------------------------------
62.4.1.1 The CCM2Context Interface
....
local interface CCM2Context : CCMContext
;
....
req_passivate
The req_passivate operation is used by the component to inform the container
that it wishes to be passivated when its current operation completes. To be
valid, the component must have a servant lifetime policy of component or
container. If not, the PolicyMismatch exception shall be raised.
----------------------------------------------What happens if req_passivate() operation is not called in the scope of a
callback operation?
I think that req_passivate() can only make sense if called in the context of
a callback operation. The IllegalState exception is appropriate for this
case.The IDL might then look like this :
void req_passivate () raises (IllegalState,PolicyMismatch);and the following sentence might be appended to the paragraph above:
"If this operation is issued outside of the scope of a callback operation,
the IllegalState exception is returned."This addition will ease implementation of CCM2Context objects based on
POACurrent : implementing container and component servant lifetime policies
on a POA with RETAIN servant retention policy and the other servant lifetime
policies on a POA with NON_RETAIN servant retention policy can rely entirely
on the POACurrent. -
Reported: CORBA 3.0 — Fri, 6 Sep 2002 04:00 GMT
-
Updated: Wed, 1 Feb 2023 21:59 GMT
CORBA35 — A new exception specification is needed for CCM2Context::req_passivate()
- Key: CORBA35-64
- OMG Task Force: CORBA 3.5 RTF