Author: mattmann
Date: Wed Sep  5 05:56:22 2012
New Revision: 1381007

URL: http://svn.apache.org/viewvc?rev=1381007&view=rev
Log:
- fix for OODT-492: Refactor Workflow Instance repo to store/retrieve that 
state information

Modified:
    oodt/trunk/CHANGES.txt
    
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/DataSourceWorkflowInstanceRepository.java
    
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/LuceneWorkflowInstanceRepository.java
    
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/util/DbStructFactory.java
    oodt/trunk/workflow/src/main/resources/workflow.sql
    oodt/trunk/workflow/src/testdata/workflow.sql

Modified: oodt/trunk/CHANGES.txt
URL: 
http://svn.apache.org/viewvc/oodt/trunk/CHANGES.txt?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- oodt/trunk/CHANGES.txt (original)
+++ oodt/trunk/CHANGES.txt Wed Sep  5 05:56:22 2012
@@ -4,6 +4,9 @@ Apache OODT Change Log
 Release 0.5
 --------------------------------------------
 
+* OODT-492: Refactor Workflow Instance repo to store/retrieve that state 
+  information (mattmann)
+
 * OODT-490: Refactor WorkflowProcessor to push all of its state information 
   into Workflow Instance (mattmann)
 

Modified: 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/DataSourceWorkflowInstanceRepository.java
URL: 
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/DataSourceWorkflowInstanceRepository.java?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/DataSourceWorkflowInstanceRepository.java
 (original)
+++ 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/DataSourceWorkflowInstanceRepository.java
 Wed Sep  5 05:56:22 2012
@@ -103,12 +103,13 @@ public class DataSourceWorkflowInstanceR
             startWorkflowSql = "INSERT INTO workflow_instances "
                     + "(workflow_instance_status, workflow_id, 
current_task_id,"
                     + "start_date_time, end_date_time, 
current_task_start_date_time,"
-                    + "current_task_end_date_time, priority) " + "VALUES ('"
+                    + "current_task_end_date_time, priority, times_blocked) " 
+ "VALUES ('"
                     + wInst.getStatus() + "', " + workflowIdField + ","
                     + taskIdField + ", '" + wInst.getStartDateTimeIsoStr()
                     + "','" + wInst.getEndDateTimeIsoStr() + "','"
                     + wInst.getCurrentTaskStartDateTimeIsoStr() + "','"
-                    + wInst.getCurrentTaskEndDateTimeIsoStr() + "', 
"+wInst.getPriority().getValue()+")";
+                    + wInst.getCurrentTaskEndDateTimeIsoStr() + "', 
"+wInst.getPriority().getValue()+", "
+                    + wInst.getTimesBlocked() + ")";
 
             LOG.log(Level.FINE, "sql: Executing: " + startWorkflowSql);
             statement.execute(startWorkflowSql);
@@ -212,6 +213,8 @@ public class DataSourceWorkflowInstanceR
                     + wInst.getCurrentTaskEndDateTimeIsoStr()
                     + "',priority="
                     + wInst.getPriority().getValue()
+                    + ",times_blocked="
+                    + wInst.getTimesBlocked()
                     +" WHERE workflow_instance_id = " + wInst.getId();
 
             LOG.log(Level.FINE, "updateStatusSql: Executing: "

Modified: 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/LuceneWorkflowInstanceRepository.java
URL: 
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/LuceneWorkflowInstanceRepository.java?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/LuceneWorkflowInstanceRepository.java
 (original)
+++ 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/instrepo/LuceneWorkflowInstanceRepository.java
 Wed Sep  5 05:56:22 2012
@@ -482,6 +482,10 @@ public class LuceneWorkflowInstanceRepos
         doc.add(new Field("workflow_inst_id", workflowInst.getId(),
                 Field.Store.YES, Field.Index.UN_TOKENIZED));
         
+        doc.add(new Field("workflow_inst_timesblocked", 
+            String.valueOf(workflowInst.getTimesBlocked()), Field.Store.YES, 
+            Field.Index.UN_TOKENIZED));
+        
         // will leave this for back compat, but will also store 
         // category 
         doc.add(new Field("workflow_inst_status", workflowInst.getStatus(),
@@ -650,6 +654,9 @@ public class LuceneWorkflowInstanceRepos
         // first read all the instance info
         inst.setId(doc.get("workflow_inst_id"));
         
+        
inst.setTimesBlocked(Integer.parseInt(doc.get("workflow_inst_timesblocked") != 
+          null ? doc.get("workflow_inst_timesblocked"):"0"));
+        
         // try and construct a state
         WorkflowState state = new WorkflowState();
         state.setName(doc.get("workflow_inst_status"));

Modified: 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/util/DbStructFactory.java
URL: 
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/util/DbStructFactory.java?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/util/DbStructFactory.java
 (original)
+++ 
oodt/trunk/workflow/src/main/java/org/apache/oodt/cas/workflow/util/DbStructFactory.java
 Wed Sep  5 05:56:22 2012
@@ -57,6 +57,7 @@ public final class DbStructFactory {
     public static WorkflowInstance getWorkflowInstance(ResultSet rs)
             throws SQLException {
         WorkflowInstance workflowInst = new WorkflowInstance();
+        workflowInst.setTimesBlocked(rs.getInt("times_blocked"));
         workflowInst.setStatus(rs.getString("workflow_instance_status"));
         workflowInst.setId(rs.getString("workflow_instance_id"));
         workflowInst.setCurrentTaskId(rs.getString("current_task_id"));

Modified: oodt/trunk/workflow/src/main/resources/workflow.sql
URL: 
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/main/resources/workflow.sql?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- oodt/trunk/workflow/src/main/resources/workflow.sql (original)
+++ oodt/trunk/workflow/src/main/resources/workflow.sql Wed Sep  5 05:56:22 2012
@@ -44,7 +44,8 @@ start_date_time varchar(255),
 end_date_time varchar(255),
 current_task_start_date_time varchar(255),
 current_task_end_date_time varchar(255),
-priority float);
+priority float,
+times_blocked int DEFAULT 0);
 
 -- use this definition if you would like
 -- to use quoteFields (string versions of

Modified: oodt/trunk/workflow/src/testdata/workflow.sql
URL: 
http://svn.apache.org/viewvc/oodt/trunk/workflow/src/testdata/workflow.sql?rev=1381007&r1=1381006&r2=1381007&view=diff
==============================================================================
--- oodt/trunk/workflow/src/testdata/workflow.sql (original)
+++ oodt/trunk/workflow/src/testdata/workflow.sql Wed Sep  5 05:56:22 2012
@@ -43,7 +43,8 @@ start_date_time varchar(255),
 end_date_time varchar(255),
 current_task_start_date_time varchar(255),
 current_task_end_date_time varchar(255),
-priority float NOT NULL);
+priority float NOT NULL,
+times_blocked int DEFAULT 0);
 
 CREATE TABLE workflow_instance_metadata
 (workflow_instance_id int NOT NULL,


Reply via email to