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.