com.opensymphony.workflow.spi.memory
Class MemoryWorkflowStore

java.lang.Object
  extended by com.opensymphony.workflow.spi.memory.MemoryWorkflowStore
All Implemented Interfaces:
WorkflowStore
Direct Known Subclasses:
SerializableWorkflowStore

public class MemoryWorkflowStore
extends Object
implements WorkflowStore

Simple memory implementation.

Author:
Pat Lightbody

Constructor Summary
MemoryWorkflowStore()
           
 
Method Summary
 Step createCurrentStep(long entryId, int stepId, String owner, Date startDate, Date dueDate, String status, long[] previousIds)
          Persists a step with the given parameters.
 WorkflowEntry createEntry(String workflowName)
          Persists a new workflow entry that has not been initialized.
 List findCurrentSteps(long entryId)
          Returns a list of all current steps for the given workflow instance ID.
 WorkflowEntry findEntry(long entryId)
          Pulls up the workflow entry data for the entry ID given.
 List findHistorySteps(long entryId)
          Returns a list of all steps that are finished for the given workflow instance ID.
 com.opensymphony.module.propertyset.PropertySet getPropertySet(long entryId)
          Returns a PropertySet that is associated with this workflow instance ID.
 void init(Map props)
          Called once when the store is first created.
 Step markFinished(Step step, int actionId, Date finishDate, String status, String caller)
          Mark the specified step as finished.
 void moveToHistory(Step step)
          Called when a step is finished and can be moved to workflow history.
 List query(WorkflowExpressionQuery query)
           
 List query(WorkflowQuery query)
           
static void reset()
          Reset the MemoryWorkflowStore so it doesn't have any information.
 void setEntryState(long entryId, int state)
          Set the state of the workflow instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MemoryWorkflowStore

public MemoryWorkflowStore()
Method Detail

setEntryState

public void setEntryState(long entryId,
                          int state)
                   throws StoreException
Description copied from interface: WorkflowStore
Set the state of the workflow instance.

Specified by:
setEntryState in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
state - The state to move the workflow instance to.
Throws:
StoreException

getPropertySet

public com.opensymphony.module.propertyset.PropertySet getPropertySet(long entryId)
Description copied from interface: WorkflowStore
Returns a PropertySet that is associated with this workflow instance ID.

Specified by:
getPropertySet in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
Returns:
a property set unique to this entry ID

createCurrentStep

public Step createCurrentStep(long entryId,
                              int stepId,
                              String owner,
                              Date startDate,
                              Date dueDate,
                              String status,
                              long[] previousIds)
Description copied from interface: WorkflowStore
Persists a step with the given parameters.

Specified by:
createCurrentStep in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
stepId - the ID of the workflow step associated with this new Step (not to be confused with the step primary key)
owner - the owner of the step
startDate - the start date of the step
status - the status of the step
previousIds - the previous step IDs
Returns:
a representation of the workflow step persisted

reset

public static void reset()
Reset the MemoryWorkflowStore so it doesn't have any information. Useful when testing and you don't want the MemoryWorkflowStore to have old data in it.


createEntry

public WorkflowEntry createEntry(String workflowName)
Description copied from interface: WorkflowStore
Persists a new workflow entry that has not been initialized.

Specified by:
createEntry in interface WorkflowStore
Parameters:
workflowName - the workflow name that this entry is an instance of
Returns:
a representation of the workflow instance persisted

findCurrentSteps

public List findCurrentSteps(long entryId)
Description copied from interface: WorkflowStore
Returns a list of all current steps for the given workflow instance ID.

Specified by:
findCurrentSteps in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
Returns:
a List of Steps
See Also:
Step

findEntry

public WorkflowEntry findEntry(long entryId)
Description copied from interface: WorkflowStore
Pulls up the workflow entry data for the entry ID given.

Specified by:
findEntry in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
Returns:
a representation of the workflow instance persisted

findHistorySteps

public List findHistorySteps(long entryId)
Description copied from interface: WorkflowStore
Returns a list of all steps that are finished for the given workflow instance ID.

Specified by:
findHistorySteps in interface WorkflowStore
Parameters:
entryId - The workflow instance id.
Returns:
a List of Steps
See Also:
Step

init

public void init(Map props)
Description copied from interface: WorkflowStore
Called once when the store is first created.

Specified by:
init in interface WorkflowStore
Parameters:
props - properties set in osworkflow.xml

markFinished

public Step markFinished(Step step,
                         int actionId,
                         Date finishDate,
                         String status,
                         String caller)
Description copied from interface: WorkflowStore
Mark the specified step as finished.

Specified by:
markFinished in interface WorkflowStore
Parameters:
step - the step to finish.
actionId - The action that caused the step to finish.
finishDate - the date when the step was finished.
status - The status to set the finished step to.
caller - The caller that caused the step to finish.
Returns:
the finished step

moveToHistory

public void moveToHistory(Step step)
Description copied from interface: WorkflowStore
Called when a step is finished and can be moved to workflow history.

Specified by:
moveToHistory in interface WorkflowStore
Parameters:
step - the step to be moved to workflow history

query

public List query(WorkflowQuery query)
Specified by:
query in interface WorkflowStore
Parameters:
query - the query to use
Returns:
a List of workflow instance ID's

query

public List query(WorkflowExpressionQuery query)
Specified by:
query in interface WorkflowStore
Parameters:
query - the query to use
Returns:
a List of workflow instance ID's

OpenSymphony Workflow Project Page