diff options
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java')
-rw-r--r-- | pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java new file mode 100644 index 00000000..f9d10d08 --- /dev/null +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java @@ -0,0 +1,32 @@ +package at.asit.pdfover.gui.workflow; + +/** + * Base state class + * @author afitzek + */ +public abstract class WorkflowState { + + private WorkflowState _next = null; + + /** + * Gets the next logical state or null if this their is no state transition + * @return the next state (or null) + */ + public WorkflowState nextState() { + return this._next; + } + + /** + * Sets the next logical state + * @param state + */ + protected void setNextState(WorkflowState state) { + this._next = state; + } + + /** + * Perform main logic for this state + * @param workflow + */ + public abstract void update(Workflow workflow); +} |