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 2014/03/12 20:27:31 UTC

git commit: supporting customized output path

Repository: airavata
Updated Branches:
  refs/heads/master 0c08b94b8 -> 57c8aae38


supporting customized output path


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

Branch: refs/heads/master
Commit: 57c8aae38a129d573b28aac79fe828447d5d5586
Parents: 0c08b94
Author: lahiru <la...@apache.org>
Authored: Wed Mar 12 15:27:25 2014 -0400
Committer: lahiru <la...@apache.org>
Committed: Wed Mar 12 15:27:25 2014 -0400

----------------------------------------------------------------------
 .../airavata/gfac/handler/SCPOutputHandler.java | 23 ++++++++++++++------
 1 file changed, 16 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/57c8aae3/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/handler/SCPOutputHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/handler/SCPOutputHandler.java b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/handler/SCPOutputHandler.java
index 0e1fb3f..f48f03a 100644
--- a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/handler/SCPOutputHandler.java
+++ b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/handler/SCPOutputHandler.java
@@ -37,11 +37,7 @@ import org.apache.airavata.gfac.provider.GFacProviderException;
 import org.apache.airavata.gfac.utils.GFacUtils;
 import org.apache.airavata.gfac.utils.OutputUtils;
 import org.apache.airavata.gsi.ssh.api.Cluster;
-import org.apache.airavata.model.workspace.experiment.CorrectiveAction;
-import org.apache.airavata.model.workspace.experiment.DataTransferDetails;
-import org.apache.airavata.model.workspace.experiment.ErrorCategory;
-import org.apache.airavata.model.workspace.experiment.TransferState;
-import org.apache.airavata.model.workspace.experiment.TransferStatus;
+import org.apache.airavata.model.workspace.experiment.*;
 import org.apache.airavata.persistance.registry.jpa.model.DataTransferDetail;
 import org.apache.airavata.registry.cpi.ChildDataType;
 import org.apache.airavata.schemas.gfac.ApplicationDeploymentDescriptionType;
@@ -75,9 +71,22 @@ public class SCPOutputHandler extends AbstractHandler{
 
             // Get the Stdouts and StdErrs
             String timeStampedServiceName = GFacUtils.createUniqueNameForService(jobExecutionContext.getServiceName());
-            File localStdOutFile = File.createTempFile(timeStampedServiceName, "stdout");
-            File localStdErrFile = File.createTempFile(timeStampedServiceName, "stderr");
 
+            TaskDetails taskData = jobExecutionContext.getTaskData();
+            String outputDataDir = null;
+            File localStdOutFile = null;
+            File localStdErrFile = null;
+
+            if (taskData.getAdvancedOutputDataHandling() != null) {
+                outputDataDir = taskData.getAdvancedOutputDataHandling().getOutputDataDir();
+            }
+            if (outputDataDir == null) {
+                localStdOutFile = new File(outputDataDir + File.separator + timeStampedServiceName + "stdout");
+                localStdErrFile = new File(outputDataDir + File.separator + timeStampedServiceName + "stderr");
+            } else {
+                localStdOutFile = File.createTempFile(timeStampedServiceName, "stdout");
+                localStdErrFile = File.createTempFile(timeStampedServiceName, "stderr");
+            }
             log.info("Downloading file : " + app.getStandardError() + " to : " + localStdErrFile.getAbsolutePath());
             cluster.scpFrom(app.getStandardOutput(), localStdOutFile.getAbsolutePath());
             log.info("Downloading file : " + app.getStandardOutput() + " to : " + localStdOutFile.getAbsolutePath());