You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2012/01/13 20:33:06 UTC

svn commit: r1231264 - in /incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api: Registry.java impl/JCRRegistry.java

Author: lahiru
Date: Fri Jan 13 19:33:06 2012
New Revision: 1231264

URL: http://svn.apache.org/viewvc?rev=1231264&view=rev
Log:
adding workflow status saving methods to API.

Modified:
    incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java
    incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java

Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java?rev=1231264&r1=1231263&r2=1231264&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java Fri Jan 13 19:33:06 2012
@@ -240,4 +240,8 @@ public interface Registry {
     public List<WorkflowIOData> searchWorkflowInput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx);
 
     public List<WorkflowIOData> searchWorkflowOutput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx);
+
+    public boolean saveWorkflowStatus(String experimentId,String status);
+
+    public String getWorkflowStatus(String experimentId);
 }

Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java?rev=1231264&r1=1231263&r2=1231264&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java Fri Jan 13 19:33:06 2012
@@ -90,6 +90,7 @@ public class JCRRegistry extends Observa
     public static final String WORKFLOW_DATA = "experiments";
     public static final String INPUT = "Input";
     public static final String OUTPUT = "Output";
+    public static final String WORKFLOW_STATUS_PROPERTY = "Status";
 
     private Repository repository;
     private Credentials credentials;
@@ -951,6 +952,7 @@ public class JCRRegistry extends Observa
         return saveWorkflowIO(workflowOutputData, OUTPUT);
     }
 
+
     private boolean saveWorkflowIO(WorkflowIOData workflowOutputData, String type) {
         Session session = null;
         boolean isSaved = true;
@@ -1030,4 +1032,41 @@ public class JCRRegistry extends Observa
     public Repository getRepository() {
         return repository;
     }
+
+    public boolean saveWorkflowStatus(String experimentId,String status){
+        Session session = null;
+        boolean isSaved = true;
+        try {
+            session = getSession();
+            Node workflowDataNode = getOrAddNode(
+                    getOrAddNode(getOrAddNode(session.getRootNode(), WORKFLOW_DATA),
+                            experimentId),experimentId);
+            workflowDataNode.setProperty(WORKFLOW_STATUS_PROPERTY,status);
+            session.save();
+        } catch (Exception e) {
+            isSaved = false;
+            e.printStackTrace();
+        } finally {
+            closeSession(session);
+        }
+        return isSaved;
+    }
+
+    public String getWorkflowStatus(String experimentId){
+       Session session = null;
+        boolean isSaved = true;
+        String property = null;
+        try {
+            session = getSession();
+            Node workflowDataNode = getOrAddNode(getOrAddNode(getOrAddNode(session.getRootNode(), WORKFLOW_DATA),
+                            experimentId),experimentId);
+            property = workflowDataNode.getProperty(WORKFLOW_STATUS_PROPERTY).getString();
+            session.save();
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            closeSession(session);
+        }
+        return property;
+    }
 }