DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
This page goes through the excellent workflow patterns list showing how to implement them using BeanFlow.
Basic Control Patterns
Sequence
Execute activities in sequence. Flash animation
There are a few ways to do this. The simplest is regular Java method calls.
public void useRegularMethodCalls() {
a();
b();
c();
}
Another option is to make each activity be a separate method and then chain them together.
The final step can do nothing (which puts the flow in to a suspend or it can explicitly call stop()
public String a() {
return "b";
}
public String b() {
return "c";
}
public void c() {
}
Parallel Split
Execute activities in parallel. Flash animation
Firstly we can fork using explicit activity beans
public void myStep() {
fork(new ActivityA(), new ActivityB(), new ActivityC());
}
In this case each activity class can be any kind of activity; from a simple activity to a full workflow process.
If you are inside a workflow you may wish to fork the evaluation of separate steps in parallel using the method names in the current workflow.
e.g.
public void myStep() {
fork("a", "b", "c");
}
public void a() {
// do something...
}
public void b() {
// do something...
}
public void c() {
// do something...
}
Synchronization
Synchronize two parallel threads of execution.
Exclusive Choice
Choose one execution path from many alternatives
Simple Merge
Merge two alternative execution paths