Previous section   Next section
BusinessLifeCycleManager javax.xml.registry

JAXR 1.0; JWSDP 1.0, J2EE 1.4
public interface BusinessLifeCycleManager extends LifeCycleManager {
// Public Instance Methods
    public abstract void confirmAssociation(javax.xml.registry.infomodel.Association assoc) 
        throws JAXRExceptionInvalidRequestException;           // L0
    public abstract BulkResponse deleteAssociations(Collection associationKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse deleteClassificationSchemes(Collection schemeKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse deleteConcepts(Collection conceptKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse deleteOrganizations(Collection organizationKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse deleteServiceBindings(Collection bindingKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse deleteServices(Collection serviceKeys) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveAssociations(Collection associations,  boolean replace) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveClassificationSchemes(Collection schemes) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveConcepts(Collection concepts) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveOrganizations(Collection organizations) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveServiceBindings(Collection bindings) 
        throws JAXRException;            // L0
    public abstract BulkResponse saveServices(Collection services) 
        throws JAXRException;            // L0
    public abstract void unConfirmAssociation(javax.xml.registry.infomodel.Association assoc) 
        throws JAXRExceptionInvalidRequestException;         // L0
}

BusinessLifeCycleManager is a derived interface of LifeCycleManager that provides additional methods to allow registry objects to be saved and deleted by reference to their type rather than by using the generic methods provided by LifeCycleManager itself. Additionally, the confirmAssociation( ) and unConfirmAssociation( ) methods allow the caller to change the confirmed state of an extramural association (see the description of javax.xml.registry.infomodel.Association in the next chapter for the meaning of this term). These two methods can only be called by the owner of either the source or the target object in the association, as indicated by the credentials associated with the connection to the provider, or an InvalidRequestException is thrown.

All of the delete methods in this interface require a Collection argument, which must contain the Keys for the registry objects to be deleted. The BulkResponse returned by these methods contains the Keys of the deleted objects. If an error occurs, a DeleteException is added to the response, along with the keys of all objects that have been deleted. A registry may refuse to allow the removal of an object that is referenced from another object, but is not obliged to do so. If this error is detected, an InvalidRequestException is placed in the BulkResponse.

The save methods in this interface all accept a Collection containing the objects to be saved. Objects in this collection that did not already exist in the registry are created and a new key is assigned. Objects that already exist are updated from the instance provided in the collection. When an object refers to other objects, those dependent objects are also updated or created as a result of saving the first object. Therefore, if a new Organization is created in memory, the act of saving that Organization also saves any Classifications and other objects that become associated with it. The BulkResponse returned by these methods contains the Keys that are associated with the created or updated objects, together with any SaveExceptions that result from failures to save or create individual objects. When an object is created using a factory method of the LifeCycleManager interface, it does not necessarily have a valid key, but the process of saving it does not install a key in the client's view of the object, even though one will have been allocated and returned in the BulkResponse.

Returned By

RegistryService.getBusinessLifeCycleManager( )


  Previous section   Next section