|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.oakgrovesystems.reactor.processMediation.Process
Process objects are the primary building blocks of a process model. They contain information about the current state and status of the process, the conditions under which it should start, stop, and change state, and the relationships the Process has with other objects. Most non-trivial business processes consist of multiple steps (subprocesses) that can often themselves be broken down into smaller, simpler steps. To model such processes, Process objects are associated with an arbitrary number of subprocesses, which are themselves Process objects, and can be broken down recursively into other subprocesses. Process objects represent both process definitions ('definitions') and enactments of a process definition ('instances'). The only difference between a Process object that is an instance and one that is a definition is that the boolean attribute 'definition' is true for definitions and false for instances. Also, some attributes are only relevant for instances (state, current statuses, start time, end time, and actual cost). Instances are cloned from definitions by issuing a 'clone instance' command to the Reactor system.
Field Summary | |
protected com.oakgrovesystems.reactor.processMediation.ACL |
acl
|
protected java.util.HashSet |
changeConditions
The change conditions of a Process dictate the circumstances under which the Process's state or current statuses should change. |
protected java.util.HashSet |
currentStatuses
The current statuses attribute of a Process object indicates the Statuses that currently apply to the Process. |
protected java.lang.String |
description
|
protected java.lang.String |
endDate
|
protected java.lang.String |
id
|
protected boolean |
isDefinition
true if the Process is a definition, false if it is an instance |
protected java.lang.String |
label
|
protected com.oakgrovesystems.reactor.processMediation.MetaDataParser |
metaDataParser
|
protected java.lang.String |
metaDataString
|
protected java.util.HashSet |
operands
The set of ReactorObjectIds of the Operands associated with this Process |
protected com.oakgrovesystems.reactor.ReactorObjectId |
parent
|
protected java.util.HashSet |
policies
The set of ReactorObjectIds of the Policies associated with this Process |
protected java.util.HashSet |
preconditions
The preconditions of a Process dictate the circumstances under which it should be started automatically. |
protected java.lang.String |
startDate
|
protected int |
state
The state attribute of a Process object holds the information on the current state of the process. |
static int |
STATE_FINISHED
|
static int |
STATE_STARTED
|
static int |
STATE_UNSTARTED
|
protected java.util.HashSet |
statuses
The set of ReactorObjectIds of the Statuses associated with this Process |
protected java.util.HashSet |
subprocesses
The set of ReactorObjectIds of the Subprocesses of this Process |
protected java.util.List |
timerIds
An ordered list of the ids (Strings) of the Timers that were started when this Process was started. |
protected java.util.List |
timers
An ordered list of timers (TimerSpec objects) that will be started in the Reactor Timer Service when the Process starts and deleted when the Process stops. |
Constructor Summary | |
Process()
Creates a new Process and sets its Id |
|
Process(com.oakgrovesystems.reactor.ReactorObjectId parent)
Creates a new Process with the specified superprocess |
Method Summary | |
void |
addChangeCondition(com.oakgrovesystems.reactor.processMediation.ProcessChangeCondition pcc)
|
void |
addCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
|
void |
addOperand(com.oakgrovesystems.reactor.ReactorObjectId operand)
|
void |
addPolicy(com.oakgrovesystems.reactor.ReactorObjectId policy)
|
void |
addPrecondition(com.oakgrovesystems.reactor.processMediation.ProcessPrecondition ppc)
|
void |
addStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
|
void |
addSubprocess(com.oakgrovesystems.reactor.ReactorObjectId subprocess)
|
void |
addTimer(com.oakgrovesystems.reactor.processMediation.TimerSpec timer)
|
com.oakgrovesystems.reactor.processMediation.ProcessMediationObject |
copy()
returns a deep copy of this ProcessMediationObject (all mutable members are copied) |
com.oakgrovesystems.reactor.processMediation.ACL |
getACL()
gets the ACL of this ProcessMediationObject. |
java.util.Set |
getAssociatedObjects()
Returns a set consisting of the ReactorObjectIds of all the Operands, Statuses, and Policies associated with this Process. |
java.util.Set |
getChangeConditions()
|
java.util.Set |
getCurrentStatuses()
|
java.lang.String |
getDescription()
gets the desciption of this ProcessMediationObject. |
java.lang.String |
getEndDate()
|
java.lang.String |
getId()
gets the Id of this ProcessMediationObject. |
java.lang.String |
getLabel()
set the desciption of this ProcessMediationObject. |
java.lang.String |
getMetaDataString()
|
java.lang.String |
getMetaDataValue(java.lang.String key)
|
java.util.Set |
getOperands()
|
com.oakgrovesystems.reactor.ReactorObjectId |
getParent()
returns the id of the superprocess of this Process |
java.util.Set |
getPolicies()
|
java.util.Set |
getPreconditions()
|
java.lang.String |
getStartDate()
|
int |
getState()
|
java.util.Set |
getStatuses()
|
java.util.Set |
getSubprocesses()
|
java.util.List |
getTimerIds()
|
java.util.List |
getTimers()
|
boolean |
hasCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId id)
|
boolean |
hasOperand(com.oakgrovesystems.reactor.ReactorObjectId id)
|
boolean |
hasPolicy(com.oakgrovesystems.reactor.ReactorObjectId id)
|
boolean |
hasStatus(com.oakgrovesystems.reactor.ReactorObjectId id)
|
boolean |
hasSubprocess(com.oakgrovesystems.reactor.ReactorObjectId id)
|
boolean |
isDefinition()
returns true if this Process is a definition, false if it is an instance |
void |
removeCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
|
void |
removeOperand(com.oakgrovesystems.reactor.ReactorObjectId operand)
|
void |
removePolicy(com.oakgrovesystems.reactor.ReactorObjectId policy)
|
void |
removeStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
|
void |
removeSubprocess(com.oakgrovesystems.reactor.ReactorObjectId subprocess)
|
boolean |
sameAs(java.lang.Object o)
compares two Processes for content equality |
void |
setACL(com.oakgrovesystems.reactor.processMediation.ACL acl)
set the ACL of this ProcessMediationObject. |
void |
setChangeConditions(java.util.Collection c)
|
void |
setCurrentStatuses(java.util.Collection c)
|
void |
setDescription(java.lang.String description)
set the desciption of this ProcessMediationObject. |
void |
setEndDate(java.lang.String endDate)
|
void |
setId(java.lang.String id)
set the Id of this ProcessMediationObject. |
void |
setIsDefinition(boolean isDefinition)
specifies if this Process is a definition or an instance |
void |
setLabel(java.lang.String label)
set the label of this ProcessMediationObject. |
void |
setMetaDataKeyValue(java.lang.String key,
java.lang.String value)
|
void |
setMetaDataString(java.lang.String s)
|
void |
setOperands(java.util.Collection c)
|
void |
setParent(com.oakgrovesystems.reactor.ReactorObjectId parent)
sets the superprocess of this Process |
void |
setPolicies(java.util.Collection c)
|
void |
setPreconditions(java.util.Collection preconditions)
|
void |
setStartDate(java.lang.String startDate)
|
void |
setState(int state)
|
void |
setStatuses(java.util.Collection c)
|
void |
setSubprocesses(java.util.Collection c)
|
void |
setTimerIds(java.util.List timerIds)
|
void |
setTimers(java.util.List timers)
|
java.lang.String |
toString()
returns the label if it is not empty or null. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final int STATE_UNSTARTED
public static final int STATE_STARTED
public static final int STATE_FINISHED
protected com.oakgrovesystems.reactor.ReactorObjectId parent
protected java.lang.String id
protected boolean isDefinition
protected java.lang.String label
protected java.lang.String description
protected com.oakgrovesystems.reactor.processMediation.ACL acl
protected java.lang.String startDate
protected java.lang.String endDate
protected java.lang.String metaDataString
protected com.oakgrovesystems.reactor.processMediation.MetaDataParser metaDataParser
protected java.util.List timers
protected java.util.List timerIds
protected int state
protected java.util.HashSet currentStatuses
protected java.util.HashSet preconditions
protected java.util.HashSet changeConditions
protected java.util.HashSet operands
protected java.util.HashSet statuses
protected java.util.HashSet policies
protected java.util.HashSet subprocesses
Constructor Detail |
public Process()
public Process(com.oakgrovesystems.reactor.ReactorObjectId parent)
parent
- the id of the superprocessMethod Detail |
public com.oakgrovesystems.reactor.ReactorObjectId getParent()
public void setParent(com.oakgrovesystems.reactor.ReactorObjectId parent)
parent
- the id of the new superprocess of this Processpublic java.lang.String getId()
getId
in interface ProcessMediationObject
public void setId(java.lang.String id)
setId
in interface ProcessMediationObject
id
- the Id of this ProcessMediationObjectpublic boolean isDefinition()
public void setIsDefinition(boolean isDefinition)
isDefinition
- true if this Process is a definition; false if it is an instancepublic java.lang.String getLabel()
getLabel
in interface ProcessMediationObject
public void setLabel(java.lang.String label)
setLabel
in interface ProcessMediationObject
label
- the label of this ProcessMediationObjectpublic java.lang.String getDescription()
getDescription
in interface ProcessMediationObject
public void setDescription(java.lang.String description)
setDescription
in interface ProcessMediationObject
description
- the description of this ProcessMediationObjectpublic com.oakgrovesystems.reactor.processMediation.ACL getACL()
getACL
in interface ProcessMediationObject
public void setACL(com.oakgrovesystems.reactor.processMediation.ACL acl)
setACL
in interface ProcessMediationObject
acl
- the acl of this ProcessMediationObjectpublic java.lang.String getStartDate()
public void setStartDate(java.lang.String startDate)
public java.lang.String getEndDate()
public void setEndDate(java.lang.String endDate)
public java.util.List getTimers()
public void setTimers(java.util.List timers)
public void addTimer(com.oakgrovesystems.reactor.processMediation.TimerSpec timer)
public void setTimerIds(java.util.List timerIds)
public java.util.List getTimerIds()
public int getState()
public void setState(int state)
public java.util.Set getPreconditions()
public void setPreconditions(java.util.Collection preconditions)
public void addPrecondition(com.oakgrovesystems.reactor.processMediation.ProcessPrecondition ppc)
public java.util.Set getChangeConditions()
public void setChangeConditions(java.util.Collection c)
public void addChangeCondition(com.oakgrovesystems.reactor.processMediation.ProcessChangeCondition pcc)
public java.util.Set getAssociatedObjects()
public java.util.Set getOperands()
public void setOperands(java.util.Collection c)
public void addOperand(com.oakgrovesystems.reactor.ReactorObjectId operand)
public void removeOperand(com.oakgrovesystems.reactor.ReactorObjectId operand)
public boolean hasOperand(com.oakgrovesystems.reactor.ReactorObjectId id)
public java.util.Set getStatuses()
public void setStatuses(java.util.Collection c)
public void addStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
public void removeStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
public boolean hasStatus(com.oakgrovesystems.reactor.ReactorObjectId id)
public java.util.Set getCurrentStatuses()
public void setCurrentStatuses(java.util.Collection c)
public void addCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
public void removeCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId status)
public boolean hasCurrentStatus(com.oakgrovesystems.reactor.ReactorObjectId id)
public java.util.Set getPolicies()
public void setPolicies(java.util.Collection c)
public void addPolicy(com.oakgrovesystems.reactor.ReactorObjectId policy)
public void removePolicy(com.oakgrovesystems.reactor.ReactorObjectId policy)
public boolean hasPolicy(com.oakgrovesystems.reactor.ReactorObjectId id)
public java.util.Set getSubprocesses()
public void setSubprocesses(java.util.Collection c)
public void addSubprocess(com.oakgrovesystems.reactor.ReactorObjectId subprocess)
public void removeSubprocess(com.oakgrovesystems.reactor.ReactorObjectId subprocess)
public boolean hasSubprocess(com.oakgrovesystems.reactor.ReactorObjectId id)
public java.lang.String getMetaDataString()
public void setMetaDataString(java.lang.String s)
public java.lang.String getMetaDataValue(java.lang.String key)
public void setMetaDataKeyValue(java.lang.String key, java.lang.String value)
public java.lang.String toString()
toString
in class java.lang.Object
public com.oakgrovesystems.reactor.processMediation.ProcessMediationObject copy()
copy
in interface ProcessMediationObject
public boolean sameAs(java.lang.Object o)
o
- the Process to compare for content equality
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |