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 2011/10/21 01:56:30 UTC

svn commit: r1187137 - in /incubator/airavata/trunk/modules: commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ gfac-core/src/main/java/org/apache/airava...

Author: lahiru
Date: Thu Oct 20 23:56:29 2011
New Revision: 1187137

URL: http://svn.apache.org/viewvc?rev=1187137&view=rev
Log:
Applying the patch (AIRAVATA-153-patch-ver1.diff) for the issue AIRAVATA-153
Thanks Heshan for the contribution

Modified:
    incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/DataType.java
    incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ServiceDescription.java
    incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ShellApplicationDeployment.java
    incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/LocalProvider.java
    incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/SSHProvider.java
    incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/utils/GramRSLGenerator.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionAdvancedOptionDialog.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionRegistrationWindow.java

Modified: incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/DataType.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/DataType.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/DataType.java (original)
+++ incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/DataType.java Thu Oct 20 23:56:29 2011
@@ -43,4 +43,29 @@ public class DataType implements Type {
     public String toString() {
         return this.type;
     }
+
+    /*  TODO:
+        private org.apache.airavata.schemas.gfac.DataType dataType;
+
+    public DataType() {
+        dataType = org.apache.airavata.schemas.gfac.DataType.Factory.newInstance();
+    }
+
+    public DataType(String type) {
+        this.dataType.set(type);
+        //this.dataType.set(org.apache.airavata.schemas.gfac.DataType.DOUBLE);
+    }
+
+    public void setType(String type) {
+        this.dataType.set(type);
+    }
+
+    public String getType() {
+        return this.dataType.getStringValue();
+    }
+
+    public String toString() {
+        return this.dataType.toString();
+    }
+     */
 }
\ No newline at end of file

Modified: incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ServiceDescription.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ServiceDescription.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ServiceDescription.java (original)
+++ incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/ServiceDescription.java Thu Oct 20 23:56:29 2011
@@ -28,7 +28,7 @@ import java.util.List;
 public class ServiceDescription implements Type {
 
     private ServiceDescriptionType serviceDescriptionType;
-    private List<Parameter> inputParameters;
+    private List<org.apache.airavata.commons.gfac.type.Parameter> inputParameters;
     private List<Parameter> outputParameters;
 
     public ServiceDescription() {
@@ -62,5 +62,6 @@ public class ServiceDescription implemen
 
     public void setOutputParameters(List<Parameter> outputParameters) {
         this.outputParameters = outputParameters;
+        //this.serviceDescriptionType.setOutputParametersArray(outputParameters);
     }
 }

Modified: incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ShellApplicationDeployment.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ShellApplicationDeployment.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ShellApplicationDeployment.java (original)
+++ incubator/airavata/trunk/modules/commons/gfac-schema/src/main/java/org/apache/airavata/commons/gfac/type/app/ShellApplicationDeployment.java Thu Oct 20 23:56:29 2011
@@ -24,16 +24,15 @@ package org.apache.airavata.commons.gfac
 import org.apache.airavata.commons.gfac.type.ApplicationDeploymentDescription;
 import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
 
-import java.util.Map;
-
 public class ShellApplicationDeployment extends ApplicationDeploymentDescription {
 
     private ShellApplicationDeploymentType shellApplicationDeploymentType;
-    // TODO
-    private Map<String, String> env;
 
     public ShellApplicationDeployment() {
         shellApplicationDeploymentType = ShellApplicationDeploymentType.Factory.newInstance();
+        ShellApplicationDeploymentType.Env env =
+                ShellApplicationDeploymentType.Factory.newInstance().getEnv();
+        shellApplicationDeploymentType.setEnv(env);
     }
 
     public ShellApplicationDeployment(ShellApplicationDeploymentType sadt) {
@@ -48,12 +47,12 @@ public class ShellApplicationDeployment 
         this.shellApplicationDeploymentType.setExecutable(executable);
     }
 
-    public Map<String, String> getEnv() {
-        return env;
+    public ShellApplicationDeploymentType.Env getEnv() {
+        return this.shellApplicationDeploymentType.getEnv();
     }
 
-    public void setEnv(Map<String, String> env) {
-        this.env = env;
+    public void setEnv(ShellApplicationDeploymentType.Env entries) {
+        this.shellApplicationDeploymentType.setEnv(entries);
     }
 
     public String getStdOut() {

Modified: incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/LocalProvider.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/LocalProvider.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/LocalProvider.java (original)
+++ incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/LocalProvider.java Thu Oct 20 23:56:29 2011
@@ -21,18 +21,6 @@
 
 package org.apache.airavata.core.gfac.provider.impl;
 
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
 import org.apache.airavata.commons.gfac.type.ApplicationDeploymentDescription;
 import org.apache.airavata.commons.gfac.type.app.ShellApplicationDeployment;
 import org.apache.airavata.commons.gfac.type.parameter.AbstractParameter;
@@ -43,6 +31,13 @@ import org.apache.airavata.core.gfac.uti
 import org.apache.airavata.core.gfac.utils.GfacUtils;
 import org.apache.airavata.core.gfac.utils.InputUtils;
 import org.apache.airavata.core.gfac.utils.OutputUtils;
+import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
+
+import java.io.*;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 
 /**
  * {@link LocalProvider} will execute jobs (application) on local machine.
@@ -134,7 +129,15 @@ public class LocalProvider extends Abstr
         this.builder = new ProcessBuilder(cmdList);
 
         // get the env of the host and the application
-        Map<String, String> nv = app.getEnv();
+        ShellApplicationDeploymentType.Env.Entry[] env = app.getEnv().getEntryArray();
+
+        Map<String, String> nv = null;
+        for (int i=0; i<env.length; i++) {
+            String key = app.getEnv().getEntryArray(i).getKey();
+            String value = app.getEnv().getEntryArray(i).getValue();
+            nv.put(key,value);
+        }
+
         if(app.getEnv() != null){
             builder.environment().putAll(nv);
         }

Modified: incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/SSHProvider.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/SSHProvider.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/SSHProvider.java (original)
+++ incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/impl/SSHProvider.java Thu Oct 20 23:56:29 2011
@@ -21,15 +21,6 @@
 
 package org.apache.airavata.core.gfac.provider.impl;
 
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.concurrent.TimeUnit;
-
 import net.schmizz.sshj.SSHClient;
 import net.schmizz.sshj.connection.ConnectionException;
 import net.schmizz.sshj.connection.channel.direct.Session;
@@ -37,7 +28,6 @@ import net.schmizz.sshj.connection.chann
 import net.schmizz.sshj.transport.TransportException;
 import net.schmizz.sshj.userauth.keyprovider.KeyProvider;
 import net.schmizz.sshj.xfer.scp.SCPFileTransfer;
-
 import org.apache.airavata.commons.gfac.type.app.ShellApplicationDeployment;
 import org.apache.airavata.commons.gfac.type.parameter.AbstractParameter;
 import org.apache.airavata.core.gfac.context.invocation.InvocationContext;
@@ -49,6 +39,16 @@ import org.apache.airavata.core.gfac.uti
 import org.apache.airavata.core.gfac.utils.GfacUtils;
 import org.apache.airavata.core.gfac.utils.InputUtils;
 import org.apache.airavata.core.gfac.utils.OutputUtils;
+import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.concurrent.TimeUnit;
 
 /**
  * Execute application using remote SSH
@@ -179,7 +179,14 @@ public class SSHProvider extends Abstrac
             session.exec("cd " + app.getWorkingDir());
 
             // get the env of the host and the application
-            Map<String, String> nv = app.getEnv();
+            ShellApplicationDeploymentType.Env.Entry[] env = app.getEnv().getEntryArray();
+
+            Map<String, String> nv = null;
+            for (int i=0; i<env.length; i++) {
+                String key = app.getEnv().getEntryArray(i).getKey();
+                String value = app.getEnv().getEntryArray(i).getValue();
+                nv.put(key,value);
+            }
 
             // extra env's
             nv.put(GFacConstants.INPUT_DATA_DIR_VAR_NAME, app.getInputDir());

Modified: incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/utils/GramRSLGenerator.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/utils/GramRSLGenerator.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/utils/GramRSLGenerator.java (original)
+++ incubator/airavata/trunk/modules/gfac-core/src/main/java/org/apache/airavata/core/gfac/provider/utils/GramRSLGenerator.java Thu Oct 20 23:56:29 2011
@@ -21,18 +21,19 @@
 
 package org.apache.airavata.core.gfac.provider.utils;
 
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Map.Entry;
-
 import org.apache.airavata.commons.gfac.type.app.GramApplicationDeployment;
 import org.apache.airavata.core.gfac.context.invocation.InvocationContext;
 import org.apache.airavata.core.gfac.exception.ToolsException;
 import org.apache.airavata.core.gfac.utils.GFacConstants;
+import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
 import org.globus.gram.GramAttributes;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Map.Entry;
+
 /**
  * Utilities for generating GRAM RSL
  */
@@ -57,7 +58,15 @@ public class GramRSLGenerator {
          * the env specified in the host description and application description
          * documents
          */
-        Map<String, String> nv = app.getEnv();
+        ShellApplicationDeploymentType.Env.Entry[] env = app.getEnv().getEntryArray();
+
+        Map<String, String> nv = null;
+        for (int i=0; i<env.length; i++) {
+            String key = app.getEnv().getEntryArray(i).getKey();
+            String value = app.getEnv().getEntryArray(i).getValue();
+            nv.put(key,value);
+        }
+
         for (Entry<String, String> entry : nv.entrySet()) {
             jobAttr.addEnvVariable(entry.getKey(), entry.getValue());
         }

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionAdvancedOptionDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionAdvancedOptionDialog.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionAdvancedOptionDialog.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionAdvancedOptionDialog.java Thu Oct 20 23:56:29 2011
@@ -30,6 +30,7 @@ import javax.swing.event.TableModelListe
 import javax.swing.table.DefaultTableModel;
 
 import org.apache.airavata.commons.gfac.type.app.ShellApplicationDeployment;
+import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
 import org.apache.airavata.xbaya.XBayaEngine;
 
 public class ApplicationDescriptionAdvancedOptionDialog extends JDialog {
@@ -367,13 +368,13 @@ public class ApplicationDescriptionAdvan
 		getShellApplicationDescription().setStdOut(txtSTDOUT.getText());
 		getShellApplicationDescription().setStdErr(txtSTDERR.getText());
 		
-		getShellApplicationDescription().setEnv(new HashMap<String, String>());
+		getShellApplicationDescription().setEnv(ShellApplicationDeploymentType.Factory.newInstance().getEnv());
 		for(int i=0;i<defaultTableModel.getRowCount();i++){
 			String varName = (String)defaultTableModel.getValueAt(i, 0);
 			if (varName!=null && !varName.equals("")) {
 				String varValue = (String) defaultTableModel.getValueAt(i, 1);
-				getShellApplicationDescription().getEnv()
-						.put(varName, varValue);
+				getShellApplicationDescription().getEnv().addNewEntry().setKey(varName);
+                getShellApplicationDescription().getEnv().addNewEntry().setValue(varValue);
 			}
 		}
 	}
@@ -386,7 +387,16 @@ public class ApplicationDescriptionAdvan
 		txtSTDOUT.setText(getShellApplicationDescription().getStdOut());
 		txtSTDERR.setText(getShellApplicationDescription().getStdErr());
 		tableModelChanging=true;
-		Map<String, String> env = getShellApplicationDescription().getEnv();
+
+        ShellApplicationDeploymentType.Env.Entry[] entry = getShellApplicationDescription().getEnv().getEntryArray();
+
+        Map<String, String> env = null;
+        for (int i=0; i<entry.length; i++) {
+            String key = getShellApplicationDescription().getEnv().getEntryArray(i).getKey();
+            String value = getShellApplicationDescription().getEnv().getEntryArray(i).getValue();
+            env.put(key,value);
+        }
+
 		while(defaultTableModel.getRowCount()>0){
 			defaultTableModel.removeRow(0);
 		}

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionRegistrationWindow.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionRegistrationWindow.java?rev=1187137&r1=1187136&r2=1187137&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionRegistrationWindow.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ApplicationDescriptionRegistrationWindow.java Thu Oct 20 23:56:29 2011
@@ -34,6 +34,7 @@ import javax.swing.JPanel;
 import org.apache.airavata.common.utils.NameValidator;
 import org.apache.airavata.common.utils.StringUtil;
 import org.apache.airavata.commons.gfac.type.app.ShellApplicationDeployment;
+import org.apache.airavata.schemas.gfac.ShellApplicationDeploymentType;
 import org.apache.airavata.xbaya.XBayaEngine;
 import org.apache.airavata.xbaya.gui.GridPanel;
 import org.apache.airavata.xbaya.gui.XBayaComboBox;
@@ -327,16 +328,24 @@ public class ApplicationDescriptionRegis
             shellApplicationDeployment.setWorkingDir(StringUtil.trimSpaceInString(this.workDirectoryTextField.getText()));
             shellApplicationDeployment.setTmpDir(StringUtil.trimSpaceInString(this.tempDirTextField.getText()));
 
-            Map<String, String> env = shellApplicationDeployment.getEnv();
+            ShellApplicationDeploymentType.Env.Entry[] entries = shellApplicationDeployment.getEnv().getEntryArray();
+
+            Map<String, String> env = null;
+            for (int i=0; i<entries.length; i++) {
+                String key = shellApplicationDeployment.getEnv().getEntryArray(i).getKey();
+                String value = shellApplicationDeployment.getEnv().getEntryArray(i).getValue();
+                env.put(key, value);
+            }
+
             env.put("ProjectName",projectName);
     		env.put("JobType",jobType);
-			env.put("Queue",queue);
-			env.put("HostName",hostName);
+			env.put("Queue", queue);
+			env.put("HostName", hostName);
             if (maxWallTime!=null) {
-            	env.put("MaxWallTime",maxWallTime.toString());
+            	env.put("MaxWallTime", maxWallTime.toString());
             }
             if (pCount!=null) {
-            	env.put("Pcount",pCount.toString());
+            	env.put("Pcount", pCount.toString());
             }
             
             /*--- save to registry ---*/