com.opensymphony.workflow.spi
Interface WorkflowStore

All Known Implementing Classes:
AbstractHibernateWorkflowStore, AbstractHibernateWorkflowStore, EJBWorkflowStore, HibernateWorkflowStore, HibernateWorkflowStore, JDBCWorkflowStore, MemoryWorkflowStore, MySQLWorkflowStore, NewHibernateWorkflowStore, NewSpringHibernateWorkflowStore, OfbizWorkflowStore, OJBWorkflowStore, PrevaylerWorkflowStore, SerializableWorkflowStore, SpringHibernateWorkflowStore, SpringHibernateWorkflowStore, WorkflowSystem

public interface WorkflowStore

Interface for pluggable workflow stores configured in osworkflow.xml. Only one instance of a workflow store is ever created, meaning that if your persistence connections (such as java.sql.Connection) time out, it would be un-wise to use just one Connection for the entire object.

Author:
Pat Lightbody

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)
          Deprecated. use query(WorkflowExpressionQuery) instead.
 void setEntryState(long entryId, int state)
          Set the state of the workflow instance.
 

Method Detail

setEntryState

void setEntryState(long entryId,
                   int state)
                   throws StoreException
Set the state of the workflow instance.

Parameters:
entryId - The workflow instance id.
state - The state to move the workflow instance to.
Throws:
StoreException

getPropertySet

com.opensymphony.module.propertyset.PropertySet getPropertySet(long entryId)
                                                               throws StoreException
Returns a PropertySet that is associated with this workflow instance ID.

Parameters:
entryId - The workflow instance id.
Returns:
a property set unique to this entry ID
Throws:
StoreException

createCurrentStep

Step createCurrentStep(long entryId,
                       int stepId,
                       String owner,
                       Date startDate,
                       Date dueDate,
                       String status,
                       long[] previousIds)
                       throws StoreException
Persists a step with the given parameters.

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
Throws:
StoreException

createEntry

WorkflowEntry createEntry(String workflowName)
                          throws StoreException
Persists a new workflow entry that has not been initialized.

Parameters:
workflowName - the workflow name that this entry is an instance of
Returns:
a representation of the workflow instance persisted
Throws:
StoreException

findCurrentSteps

List findCurrentSteps(long entryId)
                      throws StoreException
Returns a list of all current steps for the given workflow instance ID.

Parameters:
entryId - The workflow instance id.
Returns:
a List of Steps
Throws:
StoreException
See Also:
Step

findEntry

WorkflowEntry findEntry(long entryId)
                        throws StoreException
Pulls up the workflow entry data for the entry ID given.

Parameters:
entryId - The workflow instance id.
Returns:
a representation of the workflow instance persisted
Throws:
StoreException

findHistorySteps

List findHistorySteps(long entryId)
                      throws StoreException
Returns a list of all steps that are finished for the given workflow instance ID.

Parameters:
entryId - The workflow instance id.
Returns:
a List of Steps
Throws:
StoreException
See Also:
Step

init

void init(Map props)
          throws StoreException
Called once when the store is first created.

Parameters:
props - properties set in osworkflow.xml
Throws:
StoreException

markFinished

Step markFinished(Step step,
                  int actionId,
                  Date finishDate,
                  String status,
                  String caller)
                  throws StoreException
Mark the specified step as finished.

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
Throws:
StoreException

moveToHistory

void moveToHistory(Step step)
                   throws StoreException
Called when a step is finished and can be moved to workflow history.

Parameters:
step - the step to be moved to workflow history
Throws:
StoreException

query

List query(WorkflowQuery query)
           throws StoreException
Deprecated. use query(WorkflowExpressionQuery) instead.

Parameters:
query - the query to use
Returns:
a List of workflow instance ID's
Throws:
StoreException

query

List query(WorkflowExpressionQuery query)
           throws StoreException
Parameters:
query - the query to use
Returns:
a List of workflow instance ID's
Throws:
StoreException

OpenSymphony Workflow Project Page