|
The process engine is the core of Twister, it's where the processes live and get
executed. The engine basically listens to messages that are sent to it and reacts to
those messages accordingly to one of the processes that hve been deployed in it.
The process engine manages the processes that haven been deployed using the Process
Deployer and interacts with your services and the WorkList Manager. So the only ways to
communicate with the engine is by deploying a process or sending a message to it. The
only way the engine communicates to its environment is by sending a message to another
service or by letting know an end user what he has to do through the WorkList Manager.
Let's describe now how a process is created, lives inside the engine and finish its
execution, that should clarify some points.
-
First, you should have a description of your process in a formal XML description
language. Twister supports BPEL4WS but could, later on, support other description
schemas if necessary. How do you obtain this stuff ? if you're very courageous you
can type it with your two hands but if you don't like cumbersome tasks we recommend
using a graphical interface like BPWS4J (by IBM) or anything that suits you. Twister
development plan includes such a tool but it shouldn't be implemented before a little
while.
-
The process description file must then be deployed in the engine using the Twister
Deployer. The Deployer will create, from the description, necessary structures in the
engine so that your process can actually be executed.
-
Upon reception of an appropriate message (as defined in the pro
cess description),
a new
process instance
will be created. The process instance is the execution
representation of your process, a process being executed several times
-
When more messages arrive aimed at the process instance that have been created,
the instance activities gets executed step by step until the instance is completed
(or faulted). Depending your process definition the engine can reply to messages,
send new messages, invoke services, wait for a specific date or deadline, ask the
WorkList Manager for a Work Item creation...
-
When the process instance execution is finished, it is simply archived. and that's
it !
|