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;
   }
   


Reply via email to