Java Reference
In-Depth Information
Vector steps
#
new
Vector();
NameValue[] processResult;
static private long
uniqueId
#
1;
static private
String getId(){
return
Long.toString(uniqueId
!!
);
}
WfProcessImpl(WfProcessMgr mgr, WfProcessDefinition def,
WfRequester req) {
super(def.getName());
originator
#
req;
processManager
#
mgr;
definition
#
def;
try
{
set_key(getId());
set_description(def.getDescription());
}
catch
(Exception e){ }
}
public void
start()
throws
BaseException, CannotStart,
AlreadyRunning {
if
( state.workflow_state()
##
workflow_stateType.open){
if
( state.
while
_open()
##
while
_openType.not_running &&
state.why_not_running()
##
why_not_running Type.
not_started ){
WfEventAudit event;
try
{
Collection initialActivities
#
definition.initialActivities();
Iterator it
#
initialActivities.iterator();
while
(it.hasNext()){
WfActivity activity
#
new
WfActivityImpl(
this
,
WfActivityDefinition) it.next());
steps.add(activity);
}
change_state(workflow_stateType.open,
while_openType.running,
null
,
null
);
event
#
new WfEventAuditImpl(
this
,"process started");
}
catch
(Exception e){
change_state(workflow_stateType.closed,
null
,
null
,
state.how_closed().aborted);
event
#
new
WfEventAuditImpl(
this
,
"Aborted, reason: "
!
e.toString());
}