Author: mattmann
Date: Sun Sep 16 20:00:56 2012
New Revision: 1385360
URL: http://svn.apache.org/viewvc?rev=1385360&view=rev
Log:
- OODT-495: WIP refactoring into isAnyState and isAnyCategory methods
Modified:
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/TaskQuerier.java
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/processor/WorkflowProcessor.java
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/lifecycle/WorkflowLifecycle.java
Modified:
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/TaskQuerier.java
URL:
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/TaskQuerier.java?rev=1385360&r1=1385359&r2=1385360&view=diff
==============================================================================
---
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/TaskQuerier.java
(original)
+++
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/TaskQuerier.java
Sun Sep 16 20:00:56 2012
@@ -111,11 +111,8 @@ public class TaskQuerier implements Runn
+ processor.getWorkflowInstance().getId() + "]: state: "
+ processor.getWorkflowInstance().getState());
- if (!(processor.getWorkflowInstance().getState().getCategory()
- .getName().equals("done") || processor.getWorkflowInstance()
- .getState().getCategory().getName().equals("holding"))
- && !processor.getWorkflowInstance().getState().getName()
- .equals("Executing") && processor.getRunnableWorkflowProcessors()
!= null
+ if (!processor.isAnyCategory("done", "holding")
+ && !processor.isAnyState("Executing")
&& processor.getRunnableWorkflowProcessors().size() > 0) {
for (TaskProcessor tp : processor.getRunnableWorkflowProcessors()) {
WorkflowState state = lifecycle.createState("Executing", "running",
@@ -142,7 +139,8 @@ public class TaskQuerier implements Runn
Level.FINE,
"Processor for workflow instance: ["
+ processor.getWorkflowInstance().getId()
- + "] not ready to Execute or already Executing: advancing it
to next state.");
+ + "] not ready to Execute or already Executing: " +
+ "advancing it to next state.");
processor.nextState();
persist(processor.getWorkflowInstance());
}
Modified:
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/processor/WorkflowProcessor.java
URL:
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/processor/WorkflowProcessor.java?rev=1385360&r1=1385359&r2=1385360&view=diff
==============================================================================
---
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/processor/WorkflowProcessor.java
(original)
+++
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/engine/processor/WorkflowProcessor.java
Sun Sep 16 20:00:56 2012
@@ -24,6 +24,7 @@ import java.util.logging.Logger;
//OODT imports
import org.apache.oodt.cas.workflow.engine.ChangeType;
import org.apache.oodt.cas.workflow.lifecycle.WorkflowLifecycleManager;
+import org.apache.oodt.cas.workflow.lifecycle.WorkflowLifecycleStage;
import org.apache.oodt.cas.workflow.lifecycle.WorkflowState;
import org.apache.oodt.cas.workflow.structs.WorkflowInstance;
@@ -301,8 +302,8 @@ public abstract class WorkflowProcessor
if (nextState != null) {
this.workflowInstance.setState(nextState);
- }
-
+ }
+
} else {
this.workflowInstance.setState(helper.getLifecycleForProcessor(this)
.createState(
@@ -313,6 +314,47 @@ public abstract class WorkflowProcessor
+ "had a null state"));
}
}
+
+ /**
+ * Evaluates whether or not this processor's {@link WorkflowState}
+ * is in any of the provided state names.
+ *
+ * @param states The names of states to check this processor's
+ * {@link WorkflowState} against.
+ *
+ * @return True, if any of the state names provided is the name of
+ * this processor's internal {@link WorkflowState}, False otherwise.
+ */
+ public boolean isAnyState(String... states) {
+ for (String state : states) {
+ if (this.getWorkflowInstance().getState().getName().equals(state)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * Evaluates whether or not this processor's {@link WorkflowLifecycleStage}
+ * is in any of the provided category names.
+ *
+ * @param categories The names of categories to check this processor's
+ * {@link WorkflowLifecycleStage} against.
+ *
+ * @return True, if any of the category names provided is the name of
+ * this processor's internal {@link WorkflowLifecycleStage}, False otherwise.
+ */
+ public boolean isAnyCategory(String... categories) {
+ for (String category : categories) {
+ if (this.getWorkflowInstance().getState().getCategory().getName()
+ .equals(category)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
protected boolean passedPreConditions() {
if (this.getPreConditions() != null) {
@@ -381,16 +423,6 @@ public abstract class WorkflowProcessor
+ workflowInstance.getId() + "] are " + "not complete");
}
- protected boolean isAnyState(String... states) {
- for (String state : states) {
- if (this.getWorkflowInstance().getState().getName().equals(state)) {
- return true;
- }
- }
-
- return false;
- }
-
/**
* This is the core method of the WorkflowProcessor class in the new Wengine
* style workflows. Instead of requiring that a processor actually walk
Modified:
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/lifecycle/WorkflowLifecycle.java
URL:
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/lifecycle/WorkflowLifecycle.java?rev=1385360&r1=1385359&r2=1385360&view=diff
==============================================================================
---
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/lifecycle/WorkflowLifecycle.java
(original)
+++
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/lifecycle/WorkflowLifecycle.java
Sun Sep 16 20:00:56 2012
@@ -265,7 +265,6 @@ public class WorkflowLifecycle {
newState.setName(state.getName());
newState.setPrevState(state.getPrevState());
newState.setStartTime(state.getStartTime());
- newState.setSubStates(state.getSubStates());
return newState;
}