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/04/12 19:57:46 UTC
svn commit: r1325410 - in /incubator/airavata/trunk/modules:
airavata-client/src/test/resources/ distribution/src/main/resources/conf/
xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/
xbaya-gui/src/main/java/org/apache/airavata/xbaya/invo...
Author: lahiru
Date: Thu Apr 12 17:57:45 2012
New Revision: 1325410
URL: http://svn.apache.org/viewvc?rev=1325410&view=rev
Log:
minor feature improvements with embedded interpreter feature.
Added:
incubator/airavata/trunk/modules/airavata-client/src/test/resources/
incubator/airavata/trunk/modules/airavata-client/src/test/resources/xbaya.properties
Modified:
incubator/airavata/trunk/modules/distribution/src/main/resources/conf/xbaya.properties
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpretorSkeleton.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
Added: incubator/airavata/trunk/modules/airavata-client/src/test/resources/xbaya.properties
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/airavata-client/src/test/resources/xbaya.properties?rev=1325410&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/airavata-client/src/test/resources/xbaya.properties (added)
+++ incubator/airavata/trunk/modules/airavata-client/src/test/resources/xbaya.properties Thu Apr 12 17:57:45 2012
@@ -0,0 +1,13 @@
+gfac.url=http://localhost:8080/axis2/services/GFacService
+messagebox.url=http://localhost:8080/axis2/services/MsgBoxService
+messagebroker.url=http://localhost:8080/axis2/services/EventingService
+xbaya.service.url=http://localhost:8080/axis2/services/WorkflowInterpretor?wsdl
+jcr.url=http://localhost:8081/rmi
+jcr.username=admin
+jcr.password=admin
+with.Listener=false
+#Following properties are optional, if user doesn't send them server will use the predefined values for these.
+myproxy.url=myproxy.teragrid.org
+myproxy.username=ogce
+myproxy.password=Jdas
+trusted.cert.location=/path/to/certs
Modified: incubator/airavata/trunk/modules/distribution/src/main/resources/conf/xbaya.properties
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/distribution/src/main/resources/conf/xbaya.properties?rev=1325410&r1=1325409&r2=1325410&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/distribution/src/main/resources/conf/xbaya.properties (original)
+++ incubator/airavata/trunk/modules/distribution/src/main/resources/conf/xbaya.properties Thu Apr 12 17:57:45 2012
@@ -1,5 +1,3 @@
-myproxy.user=ogce
-myproxy.password=Jdasjs
jcr.username=admin
jcr.password=admin
provenance=true
@@ -7,3 +5,10 @@ jcr.url=http://localhost:8081/rmi
runInThread=false
provenanceWriterThreadPoolSize=20
gfac.embedded=false
+#Following properties are important when running in embedded mode
+#If user send myproxy data with cert location following values will be overwritten for that request
+myproxy.username=ogce
+myproxy.password=Jdas7
+myproxy.url=myproxy.teragrid.org
+myproxy.lifetime=3600
+trusted.cert.location=/path/to/cert/location
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpretorSkeleton.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpretorSkeleton.java?rev=1325410&r1=1325409&r2=1325410&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpretorSkeleton.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/interpretor/WorkflowInterpretorSkeleton.java Thu Apr 12 17:57:45 2012
@@ -76,17 +76,19 @@ import javax.xml.stream.XMLStreamReader;
public class WorkflowInterpretorSkeleton implements ServiceLifeCycle {
private static final MLogger log = MLogger.getLogger();
- public static final String PROXYSERVER = "proxyserver";
+ public static final String PROXYSERVER = "myproxy.url";
public static final String MSGBOX = "msgbox";
public static final String GFAC = "gfac";
public static final String DSC = "dsc";
public static final String BROKER = "broker";
public static final String MYPROXY_USER = "myproxy.username";
public static final String MYPROXY_PASS = "myproxy.password";
+ public static final String MYPROXY_SERVER = "myproxy.url";
+ public static final String MYPROXY_LIFETIME = "myproxy.lifetime";
+ public static final String TRUSTED_CERT_LOCATION = "trusted.cert.location";
public static final String JCR_USER = "jcr.username";
public static final String JCR_PASS = "jcr.password";
public static final String JCR_URL = "jcr.url";
- public static final String TRUSTED_CERT_LOCATION="trusted.cert.location";
public static boolean provenance = false;
public static final String PROVENANCE = "provenance";
public static String jcrUserName = "";
@@ -101,6 +103,7 @@ public class WorkflowInterpretorSkeleton
public static final String PROVENANCE_WRITER_THREAD_POOL_SIZE = "provenanceWriterThreadPoolSize";
public static final int JCR_AVAIALABILITY_WAIT_INTERVAL = 1000 * 10;
public static final String GFAC_EMBEDDED = "gfac.embedded";
+ public static ConfigurationContext configurationContext;
public void startUp(final ConfigurationContext configctx, AxisService service) {
new Thread(){
@@ -115,9 +118,13 @@ public class WorkflowInterpretorSkeleton
Properties properties = new Properties();
try {
properties.load(url.openStream());
+ // Airavata deployer have to configure these properties,but if user send them alone the incoming message
+ // We are overwriting those values only for that particular request
configctx.setProperty(MYPROXY_PASS, properties.get(MYPROXY_PASS));
configctx.setProperty(MYPROXY_USER, properties.get(MYPROXY_USER));
-
+ configctx.setProperty(MYPROXY_LIFETIME,properties.getProperty(MYPROXY_LIFETIME));
+ configctx.setProperty(TRUSTED_CERT_LOCATION,properties.getProperty(TRUSTED_CERT_LOCATION));
+ configctx.setProperty(MYPROXY_SERVER,properties.getProperty(MYPROXY_SERVER));
jcrUserName = (String)properties.get(JCR_USER);
jcrPassword = (String) properties.get(JCR_PASS);
jcrURL = (String) properties.get(JCR_URL);
@@ -160,6 +167,7 @@ public class WorkflowInterpretorSkeleton
} catch (IOException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
+ WorkflowInterpretorSkeleton.configurationContext = configctx;
}
}.start();
@@ -284,16 +292,16 @@ public class WorkflowInterpretorSkeleton
configuration.setMessageBoxURL(new URI(findValue(vals, MSGBOX, XBayaConstants.DEFAULT_MESSAGE_BOX_URL.toString())));
configuration.setMyProxyLifetime(XBayaConstants.DEFAULT_MYPROXY_LIFTTIME);
configuration.setMyProxyPort(XBayaConstants.DEFAULT_MYPROXY_PORT);
- configuration.setMyProxyServer(findValue(vals, PROXYSERVER, XBayaConstants.DEFAULT_MYPROXY_SERVER));
- configuration.setMyProxyPassphrase(findValue(vals, MYPROXY_PASS, ""));
- configuration.setMyProxyUsername(findValue(vals,MYPROXY_USER,""));
- configuration.setTrustedCertLocation(findValue(vals, TRUSTED_CERT_LOCATION, ""));
+ configuration.setMyProxyServer(findValue(vals, PROXYSERVER, (String)WorkflowInterpretorSkeleton.configurationContext.getProperty(MYPROXY_SERVER)));
+ configuration.setMyProxyPassphrase(findValue(vals, MYPROXY_PASS, (String)WorkflowInterpretorSkeleton.configurationContext.getProperty(MYPROXY_PASS)));
+ configuration.setMyProxyUsername(findValue(vals,MYPROXY_USER,(String)WorkflowInterpretorSkeleton.configurationContext.getProperty(MYPROXY_USER)));
+ configuration.setTrustedCertLocation(findValue(vals, TRUSTED_CERT_LOCATION, (String)WorkflowInterpretorSkeleton.configurationContext.getProperty(TRUSTED_CERT_LOCATION)));
return configuration;
}
public String findValue(NameValue[] vals, String key, String defaultVal) {
for (int i = 0; i < vals.length; i++) {
- if (key.equals(vals[i].getName()) && !"".equals(vals[i].getValue())) {
+ if (key.equals(vals[i].getName()) && !"".equals(vals[i].getValue()) && (vals[i].getValue() != null)) {
return vals[i].getValue();
}
}
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java?rev=1325410&r1=1325409&r2=1325410&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java Thu Apr 12 17:57:45 2012
@@ -24,6 +24,7 @@ import org.apache.airavata.common.regist
import org.apache.airavata.common.utils.XMLUtil;
import org.apache.airavata.commons.gfac.type.ActualParameter;
import org.apache.airavata.commons.gfac.type.ServiceDescription;
+import org.apache.airavata.commons.gfac.wsdl.WSDLConstants;
import org.apache.airavata.core.gfac.GfacAPI;
import org.apache.airavata.core.gfac.context.GFacConfiguration;
import org.apache.airavata.core.gfac.context.JobContext;
@@ -235,7 +236,10 @@ public class EmbeddedGFacInvoker impleme
ServiceDescriptionType serviceDescriptionType = serviceDescription.getType();
for (Parameter parameter : serviceDescriptionType.getInputParametersArray()) {
//todo this implementation doesn't work when there are n number of nodes connecting .. need to fix
- actualParameters.put(parameter, GfacUtils.getInputActualParameter(parameter, XMLUtil.xmlElementToString((XmlElement)value)));
+ XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(XMLUtil.xmlElementToString((XmlElement) value)));
+ StAXOMBuilder builder = new StAXOMBuilder(reader);
+ OMElement input = builder.getDocumentElement();
+ actualParameters.put(parameter, GfacUtils.getInputActualParameter(parameter, input));
}
} catch (RuntimeException e) {
logger.error(e.getMessage(), e);