![]() |
Overview Retrieves an ImplementationDef from the Implementation Repository, by server id. Original class CORBA::ImplRepository Exceptions CORBA::SystemException
Intended Usage
This method is used to retrieve an ImplementationDef object from the Implementation Repository, using the server id as a key. This method (or the find_impldef_by_alias method) is intended to be used by a server application to retrieve its own ImplementationDef object from the Implementation Repository; a server application then passes this ImplementationDef object to the BOA::impl_is_ready and BOA::deactivate_impl methods.
A CORBA::SystemException is thrown if the Implementation Repository cannot be accessed (for instance, due to a configuration error), if the input server id is NULL or is not in the correct format, or if the specified server id cannot be found in the Implementation Repository.
Note: This is an IBM-defined operation, which extends the CORBA 2.0 specifications provided by the OMG.
IDL Syntax
CORBA::ImplementationDef* find_impldef(const char * ImplId);
Input parameters
- ImplId
- The server id of the ImplementationDef to be retrieved. A CORBA::SystemException will be thrown if this string is NULL or is not in the proper format of an Implementation Repository UUID (as created by the ImplementationDef constructor).
Return values
- CORBA::ImplementationDef*
- The CORBA::ImplementationDef from the Implementation Repository whose id matches the input. The caller assumes ownership of this object and must subsequently delete it. (If passed to BOA::impl_is_ready, however, the ImplementationDef object should not be deleted until after BOA::deactivate_impl has subsequently been called and the server has quiesced, to insure that the BOA does not subsequently refer to that object.) Each call to find_impldef returns a different ImplementationDef object (although the different objects will be equivalent for equivalent input to find_impldef).
Related reference... | |
CORBA module in Object Request Broker | |
Parent: CORBA module: ImplRepository Class | |
ImplRepository::find_impldef_by_alias | |