Repository: airavata
Updated Branches:
  refs/heads/master 06bf62b9d -> b643ea58f


updating experiment status to EXECUTING when gfac act upon it


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/b643ea58
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/b643ea58
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/b643ea58

Branch: refs/heads/master
Commit: b643ea58fe537d369e12f34feb66c9c88034bd7b
Parents: 06bf62b
Author: Chathuri Wimalasena <[email protected]>
Authored: Mon May 11 14:22:42 2015 -0400
Committer: Chathuri Wimalasena <[email protected]>
Committed: Mon May 11 14:22:42 2015 -0400

----------------------------------------------------------------------
 .../airavata/gfac/server/GfacServerHandler.java     | 16 ++++++++++++----
 pom.xml                                             |  2 +-
 2 files changed, 13 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/b643ea58/modules/gfac/airavata-gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
----------------------------------------------------------------------
diff --git 
a/modules/gfac/airavata-gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
 
b/modules/gfac/airavata-gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
index 8e17a38..76497ba 100644
--- 
a/modules/gfac/airavata-gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
+++ 
b/modules/gfac/airavata-gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
@@ -44,12 +44,14 @@ import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
 import org.apache.airavata.messaging.core.MessagingConstants;
 import org.apache.airavata.messaging.core.impl.RabbitMQTaskLaunchConsumer;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.TaskSubmitEvent;
-import org.apache.airavata.model.messaging.event.TaskTerminateEvent;
+import org.apache.airavata.model.messaging.event.*;
+import org.apache.airavata.model.workspace.experiment.ExperimentState;
+import org.apache.airavata.model.workspace.experiment.ExperimentStatus;
 import org.apache.airavata.persistance.registry.jpa.impl.RegistryFactory;
+import org.apache.airavata.persistance.registry.jpa.model.Status;
 import org.apache.airavata.registry.cpi.Registry;
 import org.apache.airavata.registry.cpi.RegistryException;
+import org.apache.airavata.registry.cpi.RegistryModelType;
 import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.apache.zookeeper.*;
@@ -370,8 +372,12 @@ public class GfacServerHandler implements 
GfacService.Iface, Watcher {
                     TBase messageEvent = message.getEvent();
                     byte[] bytes = 
ThriftUtils.serializeThriftObject(messageEvent);
                     ThriftUtils.createThriftFromBytes(bytes, event);
+                    // update experiment status to executing
+                    ExperimentStatus status = new ExperimentStatus();
+                    status.setExperimentState(ExperimentState.EXECUTING);
+                    
status.setTimeOfStateChange(Calendar.getInstance().getTimeInMillis());
+                    registry.update(RegistryModelType.EXPERIMENT_STATUS, 
status, event.getExperimentId());
                     experimentNode = 
ServerSettings.getSetting(Constants.ZOOKEEPER_GFAC_EXPERIMENT_NODE, 
"/gfac-experiments");
-
                     try {
                         
GFacUtils.createExperimentEntryForPassive(event.getExperimentId(), 
event.getTaskId(), zk, experimentNode, nodeName, event.getTokenId(), 
message.getDeliveryTag());
                         
AiravataZKUtils.getExpStatePath(event.getExperimentId());
@@ -388,6 +394,8 @@ public class GfacServerHandler implements 
GfacService.Iface, Watcher {
                     }
                 } catch (TException e) {
                     logger.error(e.getMessage(), e); //nobody is listening so 
nothing to throw
+                } catch (RegistryException e) {
+                    logger.error("Error while updating experiment status", e);
                 }
             } else if (message.getType().equals(MessageType.TERMINATETASK)) {
                 try {

http://git-wip-us.apache.org/repos/asf/airavata/blob/b643ea58/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 8d6405a..7655b49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -544,7 +544,7 @@
                                <module>modules/test-suite</module>
                                <module>modules/distribution</module>
                                <module>modules/messaging</module>
-                               <!--module>modules/integration-tests</module-->
+                               <module>modules/integration-tests</module>
                                <module>modules/workflow</module>
                                <module>modules/xbaya-gui</module>
                        </modules>

Reply via email to