CORBA Programming Reference
Obtains a reference to a single factory object.
public org.omg.CORBA.Object
find_one_factory_by_id( java.lang.String factory_id)
throws
org.omg.CosLifeCycle.NoFactory,
com.beasys.Tobj.CannotProceed,
com.beasys.Tobj.RegistrarNotAvailable;
A NULL-terminated string that contains a value that is used to identify the registered factory object to be found.
The value of the factory_id
parameter is used as the value of the id
field of a NameComponent that has a kind
field with the value "FactoryInterface"
when comparing against registered references for factory objects.
Indicates that the value of an input parameter has an inappropriate value or is invalid. Of particular importance, the exception is raised if no value or a NULL value for the parameter factory_key
is specified.
Indicates that there are no factories registered that match the information in the factory_key
parameter.
Indicates that the FactoryFinder or NameManager encountered an internal error while attempting to locate a reference for a factory object.
Indicates that the FactoryFinder could not communicate with the NameManager.
The find_one_factory_by_id
method is called by an application to obtain a reference to a single factory object whose registration ID matches the value of the ID specified as input to the method. If more than one factory object is registered with the specified ID, the FactoryFinder selects one factory object based on the FactoryFinder's load balancing scheme. As a result, invoking the find_one_factory_by_id
operation multiple times using the same ID may return different object references.
The find_one_factory_by_id
method behaves the same as the find_one_factory
operation that was passed a key that contains a single NameComponent with an id
field that contains the same value as the factory_id
parameter and a kind
field that contains the value "FactoryInterface"
.
The registered identifier for a factory is considered equal to the value of the factory_id
parameter if the result of constructing a CosLifeCycle::Key
structure containing a single NameComponent that has the factory_id
parameter as the value of the id
field and the value "FactoryInterface"
as the value of the kind
field. The values must match exactly in all respects (case, location, etc.).
An object reference for a factory object. In C++, the method returns an object reference of type CosLifeCycle::Factory
. In Java, the method returns an object reference of type org.omg.CORBA.Object
.
If the operation raises an exception, the return value is invalid and does not need to be released by the caller.