com.beasys.Tobj
Interface FactoryFinder


public interface FactoryFinder
extends org.omg.CORBA.Object, org.omg.CORBA.portable.IDLEntity, FactoryFinder

The FactoryFinder interface provides clients with one object reference that serves as the single point of entry into the M3 domain. The CORBAservices Naming Service provides the mapping of factory names to object references for the FactoryFinder. Multiple FactoryFinders and the CORBAservices Naming Service together provide increased availability and reliability over the single-implementation approach used in the previous release of this product.


Method Summary
 org.omg.CORBA.Object[] find_factories_by_id(java.lang.String factory_id)
          Obtains a list of application factories.
 org.omg.CORBA.Object find_one_factory_by_id(java.lang.String factory_id)
          This member function instructs the FactoryFinder to return one application factory object reference whose id in the key matches the method's input factory_id.
 org.omg.CORBA.Object find_one_factory(NameComponent[] factory_key)
          Obtains a single application factory.
 FactoryComponent[] list_factories()
          Lists all of the application factory names and object references.
 
Methods inherited from interface org.omg.CosLifeCycle.FactoryFinder
find_factories
 

Method Detail

find_one_factory

public org.omg.CORBA.Object find_one_factory(NameComponent[] factory_key)
                                      throws org.omg.CosLifeCycle.NoFactory,
                                             CannotProceed,
                                             RegistrarNotAvailable
Obtains a single application factory. This member function instructs the FactoryFinder to return one application factory object reference whose key matches the input factory_key. To accomplish this, the member function performs an equality match; that is, every NameComponent pair in the input factory_key must exactly match each pair in the application factory's key. If multiple factory keys contain the input factory_key, the FactoryFinder selects one factory key, based on an internally defined load balancing scheme. Invoking find_one_factory multiple times using the same id may return different object references.
Parameters:
factory_key - This parameter contains a sequence of NameComponents (<id, kind> value pairs) that uniquely identifies a factory object reference.
Returns:
Returns an object reference for an application factory. The C++ member function returns CosLifeCycle.Factory, and the Java method returns org.omg.CORBA.Object.
Throws:
NoFactory - This exception is raised if the FactoryFinder cannot find an application factory object reference that corresponds to the input factory_key.
CannotProceed - This exception is raised if the FactoryFinder or CORBAservices Naming Service encounter an internal error during the search, with the error being written to the user log (ULOG). Notify the operations staff immediately if this exception is raised. Depending on the severity of the internal error, the server running the FactoryFinder or CORBAservices Naming Service may have terminated. If a FactoryFinder service has terminated, start a new FactoryFinder service. If a CORBAservices Naming Service has terminated and there is another CORBAservices Naming Service running, start a new CORBAservices Naming Service. If no naming services servers are running, restart the application.
RegistrarNotAvailable - This exception is raised if the FactoryFinder object cannot locate the CORBAservices Naming Service object. Notify the operations staff immediately if this exception is raised. If no naming services servers are running, restart the application.

find_one_factory_by_id

public org.omg.CORBA.Object find_one_factory_by_id(java.lang.String factory_id)
                                            throws org.omg.CosLifeCycle.NoFactory,
                                                   CannotProceed,
                                                   RegistrarNotAvailable
This member function instructs the FactoryFinder to return one application factory object reference whose id in the key matches the method's input factory_id. To accomplish this, the member function performs an equality match (that is, the input factory_id must exactly match the id in the pair in the application factory's key). If multiple factory keys contain the input factory_id, the FactoryFinder selects one factory key, based on an internally defined load balancing scheme. Invoking the find_one_factory_by_id method multiple times using the same id may return different object references.
Parameters:
factory_id - This parameter represents a string identifier that is used to identify the id or type of application factory. For some suggestions as to the composition of this string, see Creating Java Server Applications.
Returns:
Returns an object reference for an application factory. The C++ member function returns a CosLifeCycle.Factory, and the Java method returns org.omg.CORBA.Object.
Throws:
NoFactory - This exception is raised if the FactoryFinder cannot find an application factory object reference that corresponds to the input factory_id.
CannotProceed - This exception is raised if the FactoryFinder or CORBAservices Naming Service encounter an internal error during the search, with the error being written to the user log (ULOG). Notify the operations staff immediately if this exception is raised. Depending on the severity of the internal error, the server running the FactoryFinder or the CORBAservices Naming Service may have terminated. If a FactoryFinder service has terminated, start a new FactoryFinder service. If a CORBAservices Naming Service has terminated and there is another CORBAservices Naming Service running, start a new CORBAservices Naming Service. If no naming services servers are running, restart the application.
RegistrarNotAvailable - This exception is raised if the FactoryFinder object cannot locate the CORBAservices Naming Service object. Notify the operations staff immediately if this exception is raised. If no naming service servers are running, restart the application.

find_factories_by_id

public org.omg.CORBA.Object[] find_factories_by_id(java.lang.String factory_id)
                                            throws org.omg.CosLifeCycle.NoFactory,
                                                   CannotProceed,
                                                   RegistrarNotAvailable
Obtains a list of application factories. This member function instructs the FactoryFinder to return a list of application factory object references whose id in the keys match the method's input factory_id. To accomplish this, the member function performs an equality match (that is, the input factory_id must exactly match each id in the pair in the application factory's keys).
Parameters:
factory_id - This parameter represents a string identifier that is used to identify the kind or type of application factory. For some suggestions as to the composition of this string, see Creating Client Applications.
Returns:
Returns a sequence of object references for application factories. The C++ member function returns CosLifeCycle.Factories, and the Java method returns org.omg.CORBA.Object[].
Throws:
NoFactory - This exception is raised if the FactoryFinder cannot find an application factory object reference that corresponds to the input factory_key or factory_id.

CannotProceed - This exception is raised if the FactoryFinder or CORBAservices Naming Service encounter an internal error during the search with the error being written to the user log (ULOG). Notify the operations staff immediately if this exception is raised. Depending on the severity of the internal error, the server running the FactoryFinder or CORBAservices Naming Service may have terminated. If a FactoryFinder service has terminated, start a new FactoryFinder service. If a CORBAservices Naming Service has terminated and there is another CORBAservices Naming Service running, start a new CORBAservices Naming Service. If no naming services servers are running, restart the application.

RegistrarNotAvailable - This exception is raised if the FactoryFinder object cannot locate the CORBAservices Naming Service object. Notify the operations staff immediately if this exception is raised. If no naming service servers are running, restart the application.

list_factories

public FactoryComponent[] list_factories()
                                  throws CannotProceed,
                                         RegistrarNotAvailable
Lists all of the application factory names and object references. This method instructs the FactoryFinder to return a list containing all of the factory keys and associated object references for application factories registered with the CORBAservices Naming Service.
Returns:
Returns Tobj.FactoryListing, which is a sequence of Tobj.FactoryComponents where each component contains the factory key that conforms to CosNaming.Name, and the corresponding object reference for the application factory.
Throws:
CannotProceed - This exception is raised if the FactoryFinder or the CORBAservices Naming Service encounter an internal error during the search, with the error being written to the user log (ULOG). Notify the operations staff immediately if this exception is raised. Depending on the severity of the internal error, the server running the FactoryFinder or CORBAservices Naming Service may have terminated. If a FactoryFinder service has terminated, start a new FactoryFinder service. If a CORBAservices Naming Service has terminated and there is another CORBAservices Naming Service running, start a new CORBAservices Naming Service. If no naming services servers are running, restart the application.
RegistrarNotAvailable - This exception is raised if the FactoryFinder object cannot locate the CORBAservices Naming Service object. Notify the operations staff immediately if this exception is raised. It is possible that no naming service servers are running. Restart the application.