|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
APIAccessor | Helper class giving access to QueryDefinitionAPI , QueryRuntimeAPI ,
ManagementAPI , DefinitionAPI , RuntimeAPI and CommandAPI interfaces. |
CommandAPI | |
DefinitionAPI | |
ManagementAPI | Workflow process deployment operations. |
QueryAPIAccessor | Helper class giving access to QueryDefinitionAPI and QueryRuntimeAPI interfaces. |
QueryDefinitionAPI | Getters on the workflow definition data for: packages processes activities participants As indicated by its prefix: Query, this interface could be seen as complementary to the QueryRuntimeAPI interface. |
QueryRuntimeAPI | Getters on workflow recorded data. |
RuntimeAPI | Main API responsible of workflow state change operations. |
Class Summary | |
---|---|
APIInterceptor |
Enum Summary | |
---|---|
APIInterceptor.Context |
Nova Bonita Workflow APIs for handling workflow definition, deployment, execution and history.
Nova Bonita is the name of new version of Bonita v4.
"Nova" technology is based on the "Process Virtual Machine" conceptual model for processes. The Process Virtual Machine defines a generic process engine enabling support for multiple process languages (such BPEL, XPDL).
Nova Bonita is an extensible and embeddable workflow solution that can be easily deployed in both standard (JSE) and Enterprise (JEE) environments.
As a example of this, Nova Bonita provides a default JEE integration
with a EJB3 lightweight container
such Easybeans
. You can easily deploy Nova Bonita in another JEE application
server by just deploying the bonita.ear file in your
favorite application server.
Nova Bonita APIs are divided into 5 different areas:
DefinitionAPI
: to create/modify major
process elements into the engine (packages,
processes, activities, role mappers, variables by calling java methods
instead of importing xpdl files. It will allows also to
modify the execution of runtime elements such as tasks and instances.QueryDefinitionAPI
: to get
definition/static informations for elements defined in the xpdl file:
packages, processes, activities, participants, hooks, mappers,
performer assignments.RuntimeAPI
: to manage process,
instance and task life cycle operations as well as to set/updates
variables.QueryRuntimeAPI
: ManagementAPI
: to deploy workflow
processes into the engine. XPDL files and advanced entities
such hooks, mappers and performer assignments can be deployed
individually or in one shot.CommandAPI
: to allow developpers to
execute its own commands (package within the application).
Nova Bonita Use Case 1: Bonita used as
a java library inside your application
The java APIs can be accessed thru
an API accessor object as described in the above example.
APIAccessorImpl
accessor = new APIAccessorImpl();
RuntimeAPI
runtimeAPI = accessor.getRuntimeAPI();
QueryAPIAccessorImpl accessorQ = new QueryAPIAccessorImpl();
QueryRuntimeAPI
queryRuntimeAPI = accessorQ.getRuntimeAPI();
There are 2 different accessor interfaces available:
QueryAPIAccessor
: to get access to
QueryRuntimeAPI QueryDefinitionAPI interfaces.APIAccessor
: to get access to
getRuntimeAPI,
ManagementAPI, DefinitionAPI, CommandAPI interfaces.QueryAPIAccessorImpl and APIAccessorImpl classes implements
those interfaces.
Instantiation of these classes gives access to the expected bonita API.
There is also an utility class called AccessorUtil (under the org.ow2.bonita.util package)
that allows developers to directly get the APIs in both standalone or Session Bean modes.
You will find a sample application leveraging this API under the /examples directory.
Nova Bonita Use Case 2: Bonita used as
a server application
The session Bean APIs can be accessed by simply executing a
lookup on the
expected API interface. The jndi name is the name of the java interface.
RuntimeAPI
runtimeAPI = (RuntimeAPI) initialContext.lookup("runtimeAPI");
QueryDefinitionAPI queryDefinitionAPI
=
(QueryDefinitionAPI) initialContext.lookup("QueryDefinitionAPI ");
Note:
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |