summaryrefslogtreecommitdiff
path: root/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java')
-rw-r--r--pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java32
1 files changed, 32 insertions, 0 deletions
diff --git a/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java b/pdf-over/pdf-gui/src/main/java/at/asit/pdfover/gui/workflow/WorkflowState.java
new file mode 100644
index 00000000..5a4f1776
--- /dev/null
+++ b/pdf-over/pdf-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
+ */
+ 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);
+}