org.ow2.bonita.facade
Interface ManagementAPI


public interface ManagementAPI

Workflow process deployment operations. Individual or grouped deployment of objects relating to the process definition: XPDL file, java class data Ofor hooks, mappers, performer assignments, ....

Author:
Marc Blachon, Guillaume Porcher, Charles Souillard, Miguel Valdes, Pierre Vigneras
See Also:
TxHook, Hook

Method Summary
 void deleteAllPackages()
          Deletes from journal and history :
all packages and their processes all instances of these processes.
 void deletePackage(org.ow2.bonita.facade.uuid.PackageDefinitionUUID pacDefinitionUUID)
          Deletes from journal and history :
the given package all its processes all instances of these processes.
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deploy(org.ow2.bonita.facade.def.element.BusinessArchive businessArchive)
          Deprecated. 
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deploy(java.net.URL xpdlURL, java.lang.Class<?>[] classes)
          Deprecated. 
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployBar(byte[] barContent)
          Deploys the businessArchive represented by this byte array.
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployBar(java.net.URL barFileURL)
          Deploys the business archive represented by the given url.
 void deployClass(byte[] clazz)
          Deploys a class giving its bytes table.
 void deployClasses(java.util.Collection<byte[]> classes)
          Deploys several classes in global class repository giving a collection of data classes.
 void deployClassesInJar(byte[] classesArchive)
          Deploys several classes in global class repository giving an archive containing the classes.
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployXpdl(byte[] xpdlFile)
          Deprecated. 
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployXpdl(java.net.URL xpdlURL)
          Deprecated. 
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployZip(byte[] zipFile)
          Deprecated. 
 java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployZip(java.net.URL barURL)
          Deprecated. 
 void removeClass(java.lang.String className)
          Removes a class giving the class name.
 void removeClasses(java.lang.String[] classNames)
          Removes classes giving there class names.
 void replaceClass(java.lang.String className, byte[] newClazz)
          Removes the class with the given className name.
 void undeploy(org.ow2.bonita.facade.uuid.PackageDefinitionUUID packageUUID)
          Un-deploys a Workflow package giving the package UUID.
 

Method Detail

deployXpdl

@Deprecated
java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployXpdl(java.net.URL xpdlURL)
                                                                                                    throws DeploymentException
Deprecated. 

Deploys the XPDL Workflow Package giving the URL of the XPDL file.

Parameters:
xpdlURL - the URL of the XPDL file.
Returns:
a map of deployed process definitions
(keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
Throws:
DeploymentException -
  • if XPDL file cannot be found at the given URL
  • if a process has already been deployed with the same version. New version is required
  • if the version of the package containing processes with new versions has not been changed.
  • if required classes have not been found into the global class repository.
  • BonitaInternalException - if an other exception occurs.

    deployXpdl

    @Deprecated
    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployXpdl(byte[] xpdlFile)
                                                                                                        throws DeploymentException
    Deprecated. 

    deploys the XPDL Workflow Package giving the byte array of the serialazed XPDL file.

    Parameters:
    xpdlFile - the byte array of the XPDL file.
    Returns:
    a map of deployed process definitions
    (keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
    Throws:
    DeploymentException -
    • if XPDL file cannot be deserialized from the given byte arry
    • if a process has already been deployed with the same version. New version is required
    • if the version of the package containing processes with new versions has not been changed.
  • if required classes have not been found into the global class repository.
  • BonitaInternalException - if an other exception occurs.

    deploy

    @Deprecated
    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deploy(java.net.URL xpdlURL,
                                                                                                               java.lang.Class<?>[] classes)
                                                                                                    throws DeploymentException
    Deprecated. 

    Deploys the XPDL Workflow Package and its depending java classes. giving the URL of the XPDL file and the table of classes.
    Classes are deployed at package level (not global level repository).

    Parameters:
    xpdlURL - the URL of the XPDL file.
    classes - the table of java classes.
    Returns:
    a map of deployed process definitions
    (keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
    Throws:
    DeploymentException -
    • if XPDL file cannot be found at the given URL
    • if a process has already been deployed with the same version. New version is required
    • if the version of the package containing processes with new versions has not been changed.
  • if required classes have not been found firstly within the provided classes (package dependence) or secondly into the global class repository.
  • BonitaInternalException - if an other exception occurs.

    deployZip

    @Deprecated
    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployZip(java.net.URL barURL)
                                                                                                       throws DeploymentException
    Deprecated. 

    Deploys the XPDL Workflow giving the URL of the bar archive containing the XPDL Workflow Package and optionally its depending java classes.
    Classes are deployed at package level (not global level repository).

    Parameters:
    barURL - the URL of the business archive
    Returns:
    a map of deployed process definitions
    (keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
    Throws:
    DeploymentException -
    • if the archive does not contain any XPDL file
    • if the archive contains more than one XPDL file
    • if a process has already been deployed with the same version. New version is required
    • if the version of the package containing processes with new versions has not been changed.
    • if required classes have not been found firstly within the archive (package dependence) or secondly into the global class repository.
    BonitaInternalException - if an other exception occurs.

    deployZip

    @Deprecated
    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployZip(byte[] zipFile)
                                                                                                       throws DeploymentException
    Deprecated. 

    Deploys the XPDL Workflow giving the byte table of the zip archive containing the XPDL Workflow Package and optionnally its depending java classes.
    Classes are deployed at package level (not global level repository).

    Parameters:
    zipFile - the bytes table of the zip file.
    Returns:
    a map of deployed process definitions
    (keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
    Throws:
    DeploymentException -
    • if the archive does not contain any XPDL file
    • if the archive contains more than one XPDL file
    • if a process has already been deployed with the same version. New version is required.
    • if the version of the package containing processes with new versions has not been changed too.
    • if required classes have not been found firstly within the archive (package dependence) or secondly into the global class repository.
    BonitaInternalException - if an other exception occurs.

    deploy

    @Deprecated
    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deploy(org.ow2.bonita.facade.def.element.BusinessArchive businessArchive)
                                                                                                    throws DeploymentException
    Deprecated. 

    Deploys the XPDL Workflow giving the deployment object containing the XPDL Workflow Package and optionnally its depending java classes.
    Classes are deployed at package level (not global level repository).

    Parameters:
    deployment - the deployment object that should contain the XPDL file and the depending classes.
    Returns:
    a map of deployed process definitions
    (keys are the id of the processes as specified by the value of the Id attribute within the WorkflowProcess elements into the XPDL definition file and values are the ProcessDefinition objects).
    Throws:
    DeploymentException -
    • if the deployment does not contain any XPDL file
    • if the deployment contains more than one XPDL file
    • if a process has already been deployed with the same version. New version is required
    • if the version of the package containing processes with new versions has not been changed too.
    • if required classes have not been found firstly within the deployment object (package dependence) or secondly into the global class repository.
    BonitaInternalException - if an exception occurs.

    deployBar

    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployBar(java.net.URL barFileURL)
                                                                                                       throws DeploymentException
    Deploys the business archive represented by the given url. A businessArchive must contain one and only one xpdl file. It must also contain all necessary resources (jar files, classes, forms, properties files...)

    Parameters:
    barFileURL: - url of bar to deploy
    Returns:
    a Map of all deployed processes. Key=processId, value=processDefinition
    Throws:
    DeploymentException - if an error occurs while deploying the given Bar
    BonitaInternalException - if an exception occurs.

    deployBar

    java.util.Map<java.lang.String,org.ow2.bonita.facade.def.majorElement.ProcessDefinition> deployBar(byte[] barContent)
                                                                                                       throws DeploymentException
    Deploys the businessArchive represented by this byte array. A businessArchive must contain one and only one xpdl file. It must also contain all necessary resources (jar files, classes, forms, properties files...)

    Parameters:
    barContent: - barContent to deploy
    Returns:
    a Map of all deployed processes. Key=processId, value=processDefinition
    Throws:
    DeploymentException - if an error occurs while deploying the given Bar
    BonitaInternalException - if an exception occurs.

    deployClass

    void deployClass(byte[] clazz)
                     throws DeploymentException
    Deploys a class giving its bytes table.

    Parameters:
    clazz - the bytes table of the class.
    Throws:
    DeploymentException - if there is already a deployed class with this name.
    BonitaInternalException - if an other exception occurs.

    deployClasses

    void deployClasses(java.util.Collection<byte[]> classes)
                       throws DeploymentException
    Deploys several classes in global class repository giving a collection of data classes.

    Parameters:
    classes - a collection of classes. Each class is represented by a bytes table.
    Throws:
    java.lang.IllegalArgumentException - if classes is null parameter.
    DeploymentException - if there is already a deployed class with the name
    BonitaInternalException - if an other exception occurs.

    deployClassesInJar

    void deployClassesInJar(byte[] classesArchive)
                            throws DeploymentException
    Deploys several classes in global class repository giving an archive containing the classes.

    Parameters:
    classesArchive - the archive containing the classes represented by a bytes table.
    Throws:
    java.lang.IllegalArgumentException - if the classes is null parameter.
    DeploymentException - if there is already a deployed class with this name or there's an IOException occurs.
    BonitaInternalException - if an other exception occurs.

    undeploy

    void undeploy(org.ow2.bonita.facade.uuid.PackageDefinitionUUID packageUUID)
                  throws DeploymentException
    Un-deploys a Workflow package giving the package UUID. This operation undeploys also the classes that have been deployed within the initial package deployment.

    Parameters:
    packageUUID - the package definition UUID. This UUID can be retrieved from any DefinitionRecord (e.g. ProcessDefinition) by calling DefinitionRecord.getPackageDefinitionUUID()
    Throws:
    java.lang.IllegalStateException - if the given parameter is null.
    DeploymentException -
    • if the package has not been found in the journal (ie. the package is not deployed)
    • if there's still running instances for process(es) deployed within the package.
    • .
    BonitaInternalException - if an exception occurs.

    removeClass

    void removeClass(java.lang.String className)
                     throws DeploymentException
    Removes a class giving the class name.

    Parameters:
    className - the name of the class.
    Throws:
    DeploymentException - if there's no class defined in global class repository with this name or a deployed process is still using this class.
    BonitaInternalException - if an other exception occurs.

    removeClasses

    void removeClasses(java.lang.String[] classNames)
                       throws DeploymentException
    Removes classes giving there class names.

    Parameters:
    classNames - the table of class names.
    Throws:
    DeploymentException - if there's no class defined in global class repository with this name or a deployed process is still using given classes (deployed into the global class repository).
    BonitaInternalException - if an other exception occurs.

    replaceClass

    void replaceClass(java.lang.String className,
                      byte[] newClazz)
                      throws DeploymentException
    Removes the class with the given className name. Deploy the new given one.

    Parameters:
    className - the class name to be replaced.
    newClazz - the bytes table of the new class.
    Throws:
    DeploymentException - if the class to be replaced is not found into the global class repository.
    BonitaInternalException - if an other exception occurs.

    deletePackage

    void deletePackage(org.ow2.bonita.facade.uuid.PackageDefinitionUUID pacDefinitionUUID)
                       throws PackageNotFoundException,
                              UndeletablePackageException,
                              UndeletableInstanceException
    Deletes from journal and history :

    deleteAllPackages

    void deleteAllPackages()
                           throws UndeletableInstanceException,
                                  UndeletablePackageException
    Deletes from journal and history :


    Copyright © 2009 OW2 Consortium. All Rights Reserved.