You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2014/07/12 00:21:28 UTC
[15/20] updating xbaya gui to the new airavata
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
index 267b838..204427b 100644
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
+++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/invoker/EmbeddedGFacInvoker.java
@@ -1,686 +1,686 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) und= nuer one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.xbaya.invoker;
-
-import java.io.File;
-import java.io.StringReader;
-import java.net.URL;
-import java.util.*;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.airavata.client.api.AiravataAPI;
-import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.common.utils.XMLUtil;
-import org.apache.airavata.common.workflow.execution.context.WorkflowContextHeaderBuilder;
-import org.apache.airavata.commons.gfac.type.ActualParameter;
-import org.apache.airavata.commons.gfac.type.ApplicationDescription;
-import org.apache.airavata.commons.gfac.type.HostDescription;
-import org.apache.airavata.commons.gfac.type.ServiceDescription;
-import org.apache.airavata.credential.store.store.CredentialReaderFactory;
-import org.apache.airavata.gfac.Constants;
-import org.apache.airavata.gfac.GFacConfiguration;
-import org.apache.airavata.gfac.RequestData;
-import org.apache.airavata.gfac.context.ApplicationContext;
-import org.apache.airavata.gfac.context.JobExecutionContext;
-import org.apache.airavata.gfac.context.MessageContext;
-import org.apache.airavata.gfac.context.security.GSISecurityContext;
-import org.apache.airavata.gfac.context.security.SSHSecurityContext;
-import org.apache.airavata.gfac.cpi.GFacImpl;
-import org.apache.airavata.gfac.ec2.AmazonSecurityContext;
-import org.apache.airavata.gfac.scheduler.HostScheduler;
-import org.apache.airavata.gfac.utils.GFacUtils;
-import org.apache.airavata.gsi.ssh.api.Cluster;
-import org.apache.airavata.gsi.ssh.api.SSHApiException;
-import org.apache.airavata.gsi.ssh.api.ServerInfo;
-import org.apache.airavata.gsi.ssh.api.authentication.AuthenticationInfo;
-import org.apache.airavata.gsi.ssh.api.authentication.GSIAuthenticationInfo;
-import org.apache.airavata.gsi.ssh.impl.PBSCluster;
-import org.apache.airavata.gsi.ssh.impl.authentication.DefaultPasswordAuthenticationInfo;
-import org.apache.airavata.gsi.ssh.impl.authentication.DefaultPublicKeyFileAuthentication;
-import org.apache.airavata.gsi.ssh.impl.authentication.MyProxyAuthenticationInfo;
-import org.apache.airavata.gsi.ssh.util.CommonUtils;
-import org.apache.airavata.registry.api.exception.RegistryException;
-import org.apache.airavata.schemas.gfac.*;
-import org.apache.airavata.schemas.wec.ContextHeaderDocument;
-import org.apache.airavata.schemas.wec.SecurityContextDocument;
-import org.apache.airavata.workflow.model.exceptions.WorkflowException;
-import org.apache.airavata.xbaya.XBayaConfiguration;
-import org.apache.airavata.xbaya.jython.lib.ServiceNotifiable;
-import org.apache.airavata.xbaya.jython.lib.WorkflowNotifiable;
-import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.axiom.om.impl.llom.util.AXIOMUtil;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xmlpull.v1.builder.XmlElement;
-
-import xsul.wsdl.WsdlDefinitions;
-import xsul.wsif.WSIFMessage;
-import xsul.wsif.impl.WSIFMessageElement;
-import xsul.xwsif_runtime.WSIFClient;
-
-public class EmbeddedGFacInvoker implements Invoker {
-
- private static final Logger logger = LoggerFactory.getLogger(EmbeddedGFacInvoker.class);
-
- private String nodeID;
-
- private QName portTypeQName;
-
- private String wsdlLocation;
-
- private String serviceInformation;
-
- private String messageBoxURL;
-
- private String gfacURL;
-
- private Invoker invoker;
-
- private XBayaConfiguration configuration;
-
-
- private Boolean result;
-
- private ServiceNotifiable notifier;
-
-// private AiravataRegistry2 registry;
-
- private String topic;
-
- private String serviceName;
-
- private AiravataAPI airavataAPI;
- /**
- * used for notification
- */
- private List<Object> inputValues = new ArrayList<Object>();
-
- /**
- * used for notification
- */
- private List<String> inputNames = new ArrayList<String>();
-
- boolean failerSent;
-
- private WsdlDefinitions wsdlDefinitionObject;
-
- private Object outPut;
-
- Map<String, Object> actualParameters = new LinkedHashMap<String, Object>();
-
- /**
- * Creates an InvokerWithNotification.
- *
- * @param portTypeQName
- * @param wsdlLocation The URL of WSDL of the service to invoke
- * @param nodeID The ID of the service
- * @param notifier The notification sender
- */
- public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, WorkflowNotifiable notifier) {
- this(portTypeQName, wsdlLocation, nodeID, null, notifier);
- }
-
- /**
- * Creates an InvokerWithNotification.
- *
- * @param portTypeQName
- * @param wsdlLocation The URL of WSDL of the service to invoke
- * @param nodeID The ID of the service
- * @param gfacURL The URL of GFac service.
- * @param notifier The notification sender
- */
- public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, String gfacURL,
- WorkflowNotifiable notifier) {
- this(portTypeQName, wsdlLocation, nodeID, null, gfacURL, notifier);
- }
-
- /**
- * Creates an InvokerWithNotification.
- *
- * @param portTypeQName
- * @param wsdlLocation The URL of WSDL of the service to invoke
- * @param nodeID The ID of the service
- * @param messageBoxURL
- * @param gfacURL The URL of GFac service.
- * @param notifier The notification sender
- */
- public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, String messageBoxURL,
- String gfacURL, WorkflowNotifiable notifier) {
- this.nodeID = nodeID;
- this.portTypeQName = portTypeQName;
- this.wsdlLocation = wsdlLocation;
- this.serviceInformation = wsdlLocation;
- this.messageBoxURL = messageBoxURL;
- this.gfacURL = gfacURL;
- this.notifier = notifier.createServiceNotificationSender(nodeID);
-
- this.failerSent = false;
- }
-
- /**
- * @param portTypeQName
- * @param wsdl
- * @param nodeID
- * @param messageBoxURL
- * @param gfacURL
- * @param notifier
- */
- public EmbeddedGFacInvoker(QName portTypeQName,
- WsdlDefinitions wsdl,
- String nodeID,
- String messageBoxURL,
- String gfacURL,
- WorkflowNotifiable notifier,
- String topic,
- AiravataAPI airavataAPI,
- String serviceName,
- XBayaConfiguration config) {
- final String wsdlStr = xsul.XmlConstants.BUILDER.serializeToString(wsdl);
- this.nodeID = nodeID;
- this.portTypeQName = portTypeQName;
- this.wsdlDefinitionObject = wsdl;
- this.messageBoxURL = messageBoxURL;
- this.serviceInformation = wsdlStr;
- this.gfacURL = gfacURL;
- this.notifier = notifier.createServiceNotificationSender(nodeID);
- this.airavataAPI = airavataAPI;
- this.topic = topic;
- this.serviceName = serviceName;
- this.failerSent = false;
- this.configuration = config;
- }
-
- /**
- * @throws WorkflowException
- */
- public void setup() throws WorkflowException {
- this.notifier.setServiceID(this.nodeID);
- }
-
- private void setup(WsdlDefinitions definitions) throws WorkflowException {
- }
-
- /**
- * @param operationName The name of the operation
- * @throws WorkflowException
- */
- public void setOperation(String operationName) throws WorkflowException {
- }
-
- /**
- * @param name The name of the input parameter
- * @param value The value of the input parameter
- * @throws WorkflowException
- */
- public void setInput(String name, Object value) throws WorkflowException {
- try {
- if (value instanceof XmlElement) {
- logger.debug("value: " + XMLUtil.xmlElementToString((XmlElement) value));
- }
- this.inputNames.add(name);
- this.inputValues.add(value);
- } catch (RuntimeException e) {
- logger.error(e.getMessage(), e);
- String message = "Error in setting an input. name: " + name + " value: " + value;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Error e) {
- logger.error(e.getMessage(), e);
- String message = "Unexpected error: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Exception e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
- }
-
- /**
- * @return
- * @throws WorkflowException
- */
- public synchronized boolean invoke() throws WorkflowException {
- try {
- ContextHeaderDocument.ContextHeader contextHeader =
- WorkflowContextHeaderBuilder.removeOtherSchedulingConfig(nodeID, this.configuration.getContextHeader());
- String hostName = null;
- HostDescription registeredHost;
- if (contextHeader != null) {
- if (contextHeader.getWorkflowSchedulingContext() != null &&
- contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray().length > 0 &&
- contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray(0).getHostName() != null) {
- hostName = contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray(0).getHostName();
- }
- }
- //todo This is the basic scheduling, have to do proper scheduling implementation by implementing HostScheduler interface
- ServiceDescription serviceDescription = airavataAPI.getApplicationManager().getServiceDescription(serviceName);
- if (hostName == null) {
- List<HostDescription> registeredHosts = new ArrayList<HostDescription>();
- Map<String, ApplicationDescription> applicationDescriptors = airavataAPI.getApplicationManager().getApplicationDescriptors(serviceName);
- for (String hostDescName : applicationDescriptors.keySet()) {
- registeredHosts.add(airavataAPI.getApplicationManager().getHostDescription(hostDescName));
- }
- Class<? extends HostScheduler> aClass = Class.forName(ServerSettings.getHostScheduler()).asSubclass(HostScheduler.class);
- HostScheduler hostScheduler = aClass.newInstance();
- registeredHost = hostScheduler.schedule(registeredHosts);
- } else {
- // if user specify a host, no matter what we pick that host for all the nodes, todo: allow users to specify node specific host
- registeredHost = airavataAPI.getApplicationManager().getHostDescription(hostName);
- }
- ApplicationDescription applicationDescription =
- airavataAPI.getApplicationManager().getApplicationDescription(serviceName, registeredHost.getType().getHostName());
-
- // When we run getInParameters we set the actualParameter object, this has to be fixed
- URL resource = EmbeddedGFacInvoker.class.getClassLoader().getResource(org.apache.airavata.common.utils.Constants.GFAC_CONFIG_XML);
- OMElement inputMessage = getInParameters();
- Object wsifMessageElement = new WSIFMessageElement(XMLUtil.stringToXmlElement3(inputMessage.toStringWithConsume()));
- this.notifier.invokingService(new WSIFMessageElement((XmlElement) wsifMessageElement));
- Properties configurationProperties = ServerSettings.getProperties();
- GFacConfiguration gFacConfiguration = GFacConfiguration.create(new File(resource.getPath()), airavataAPI, configurationProperties);
-
- JobExecutionContext jobExecutionContext = new JobExecutionContext(gFacConfiguration, serviceName);
- //Here we get only the contextheader information sent specific for this node
- //Add security context
-
- //FIXME - We no longer using job execution context
-// jobExecutionContext.setContextHeader(WorkflowContextHeaderBuilder.removeOtherSchedulingConfig(nodeID, configuration.getContextHeader()));
-
-
- jobExecutionContext.setProperty(Constants.PROP_WORKFLOW_NODE_ID, this.nodeID);
- jobExecutionContext.setProperty(Constants.PROP_TOPIC, this.configuration.getTopic());
- jobExecutionContext.setProperty(Constants.PROP_BROKER_URL, this.configuration.getBrokerURL().toASCIIString());
- jobExecutionContext.setProperty(Constants.PROP_WORKFLOW_INSTANCE_ID, this.configuration.getTopic());
-
-
- ApplicationContext applicationContext = new ApplicationContext();
- applicationContext.setApplicationDeploymentDescription(applicationDescription);
- applicationContext.setHostDescription(registeredHost);
- applicationContext.setServiceDescription(serviceDescription);
-
- jobExecutionContext.setApplicationContext(applicationContext);
-
- jobExecutionContext.setOutMessageContext(getOutParameters(serviceDescription));
- jobExecutionContext.setInMessageContext(new MessageContext(actualParameters));
-
- addSecurityContext(registeredHost, configurationProperties, jobExecutionContext,
- configuration.getContextHeader());
- GFacImpl gfacAPI1 = new GFacImpl();
- gfacAPI1.submitJob(jobExecutionContext);
-
- OMFactory fac = OMAbstractFactory.getOMFactory();
- OMNamespace omNs = fac.createOMNamespace("http://ws.apache.org/axis2/xsd", "ns1");
- OMElement outputElement = fac.createOMElement("invokeResponse", omNs);
- MessageContext outMessageContext = jobExecutionContext.getOutMessageContext();
- Set<String> paramNames = outMessageContext.getParameters().keySet();
- for (String paramName : paramNames) {
- /*
- * Process Output
- */
- String outputString = ((ActualParameter) outMessageContext.getParameter(paramName)).toXML().replaceAll("GFacParameter", paramName);
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(outputString));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- outputElement.addChild(builder.getDocumentElement());
- }
- // Send notification
- logger.debug("outputMessage: " + outputElement.toString());
- outPut = new WSIFMessageElement(XMLUtil.stringToXmlElement3(outputElement.toStringWithConsume()));
- this.result = true;
- EmbeddedGFacInvoker.this.notifier.serviceFinished(new WSIFMessageElement((XmlElement) outPut));
- //todo check whether ActualParameter values are set or not, if they are null have to through an error or handle this in gfac level.
-// {
+///*
+// *
+// * Licensed to the Apache Software Foundation (ASF) und= nuer one
+// * or more contributor license agreements. See the NOTICE file
+// * distributed with this work for additional information
+// * regarding copyright ownership. The ASF licenses this file
+// * to you under the Apache License, Version 2.0 (the
+// * "License"); you may not use this file except in compliance
+// * with the License. You may obtain a copy of the License at
+// *
+// * http://www.apache.org/licenses/LICENSE-2.0
+// *
+// * Unless required by applicable law or agreed to in writing,
+// * software distributed under the License is distributed on an
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// * KIND, either express or implied. See the License for the
+// * specific language governing permissions and limitations
+// * under the License.
+// *
+//*/
+//package org.apache.airavata.xbaya.invoker;
+//
+//import java.io.File;
+//import java.io.StringReader;
+//import java.net.URL;
+//import java.util.*;
+//
+//import javax.xml.namespace.QName;
+//import javax.xml.stream.XMLInputFactory;
+//import javax.xml.stream.XMLStreamException;
+//import javax.xml.stream.XMLStreamReader;
+//
+//import org.apache.airavata.client.api.AiravataAPI;
+//import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
+//import org.apache.airavata.common.utils.ServerSettings;
+//import org.apache.airavata.common.utils.XMLUtil;
+//import org.apache.airavata.common.workflow.execution.context.WorkflowContextHeaderBuilder;
+//import org.apache.airavata.commons.gfac.type.ActualParameter;
+//import org.apache.airavata.commons.gfac.type.ApplicationDescription;
+//import org.apache.airavata.commons.gfac.type.HostDescription;
+//import org.apache.airavata.commons.gfac.type.ServiceDescription;
+//import org.apache.airavata.credential.store.store.CredentialReaderFactory;
+//import org.apache.airavata.gfac.Constants;
+//import org.apache.airavata.gfac.GFacConfiguration;
+//import org.apache.airavata.gfac.RequestData;
+//import org.apache.airavata.gfac.context.ApplicationContext;
+//import org.apache.airavata.gfac.context.JobExecutionContext;
+//import org.apache.airavata.gfac.context.MessageContext;
+//import org.apache.airavata.gfac.context.security.GSISecurityContext;
+//import org.apache.airavata.gfac.context.security.SSHSecurityContext;
+//import org.apache.airavata.gfac.cpi.GFacImpl;
+//import org.apache.airavata.gfac.ec2.AmazonSecurityContext;
+//import org.apache.airavata.gfac.scheduler.HostScheduler;
+//import org.apache.airavata.gfac.utils.GFacUtils;
+//import org.apache.airavata.gsi.ssh.api.Cluster;
+//import org.apache.airavata.gsi.ssh.api.SSHApiException;
+//import org.apache.airavata.gsi.ssh.api.ServerInfo;
+//import org.apache.airavata.gsi.ssh.api.authentication.AuthenticationInfo;
+//import org.apache.airavata.gsi.ssh.api.authentication.GSIAuthenticationInfo;
+//import org.apache.airavata.gsi.ssh.impl.PBSCluster;
+//import org.apache.airavata.gsi.ssh.impl.authentication.DefaultPasswordAuthenticationInfo;
+//import org.apache.airavata.gsi.ssh.impl.authentication.DefaultPublicKeyFileAuthentication;
+//import org.apache.airavata.gsi.ssh.impl.authentication.MyProxyAuthenticationInfo;
+//import org.apache.airavata.gsi.ssh.util.CommonUtils;
+//import org.apache.airavata.registry.api.exception.RegistryException;
+//import org.apache.airavata.schemas.gfac.*;
+//import org.apache.airavata.schemas.wec.ContextHeaderDocument;
+//import org.apache.airavata.schemas.wec.SecurityContextDocument;
+//import org.apache.airavata.workflow.model.exceptions.WorkflowException;
+//import org.apache.airavata.xbaya.XBayaConfiguration;
+//import org.apache.airavata.xbaya.jython.lib.ServiceNotifiable;
+//import org.apache.airavata.xbaya.jython.lib.WorkflowNotifiable;
+//import org.apache.axiom.om.OMAbstractFactory;
+//import org.apache.axiom.om.OMElement;
+//import org.apache.axiom.om.OMFactory;
+//import org.apache.axiom.om.OMNamespace;
+//import org.apache.axiom.om.impl.builder.StAXOMBuilder;
+//import org.apache.axiom.om.impl.llom.util.AXIOMUtil;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//import org.xmlpull.v1.builder.XmlElement;
+//
+//import xsul.wsdl.WsdlDefinitions;
+//import xsul.wsif.WSIFMessage;
+//import xsul.wsif.impl.WSIFMessageElement;
+//import xsul.xwsif_runtime.WSIFClient;
+//
+//public class EmbeddedGFacInvoker implements Invoker {
+//
+// private static final Logger logger = LoggerFactory.getLogger(EmbeddedGFacInvoker.class);
+//
+// private String nodeID;
+//
+// private QName portTypeQName;
+//
+// private String wsdlLocation;
+//
+// private String serviceInformation;
+//
+// private String messageBoxURL;
+//
+// private String gfacURL;
+//
+// private Invoker invoker;
+//
+// private XBayaConfiguration configuration;
+//
+//
+// private Boolean result;
+//
+// private ServiceNotifiable notifier;
+//
+//// private AiravataRegistry2 registry;
+//
+// private String topic;
+//
+// private String serviceName;
+//
+// private AiravataAPI airavataAPI;
+// /**
+// * used for notification
+// */
+// private List<Object> inputValues = new ArrayList<Object>();
+//
+// /**
+// * used for notification
+// */
+// private List<String> inputNames = new ArrayList<String>();
+//
+// boolean failerSent;
+//
+// private WsdlDefinitions wsdlDefinitionObject;
+//
+// private Object outPut;
+//
+// Map<String, Object> actualParameters = new LinkedHashMap<String, Object>();
+//
+// /**
+// * Creates an InvokerWithNotification.
+// *
+// * @param portTypeQName
+// * @param wsdlLocation The URL of WSDL of the service to invoke
+// * @param nodeID The ID of the service
+// * @param notifier The notification sender
+// */
+// public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, WorkflowNotifiable notifier) {
+// this(portTypeQName, wsdlLocation, nodeID, null, notifier);
+// }
+//
+// /**
+// * Creates an InvokerWithNotification.
+// *
+// * @param portTypeQName
+// * @param wsdlLocation The URL of WSDL of the service to invoke
+// * @param nodeID The ID of the service
+// * @param gfacURL The URL of GFac service.
+// * @param notifier The notification sender
+// */
+// public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, String gfacURL,
+// WorkflowNotifiable notifier) {
+// this(portTypeQName, wsdlLocation, nodeID, null, gfacURL, notifier);
+// }
+//
+// /**
+// * Creates an InvokerWithNotification.
+// *
+// * @param portTypeQName
+// * @param wsdlLocation The URL of WSDL of the service to invoke
+// * @param nodeID The ID of the service
+// * @param messageBoxURL
+// * @param gfacURL The URL of GFac service.
+// * @param notifier The notification sender
+// */
+// public EmbeddedGFacInvoker(QName portTypeQName, String wsdlLocation, String nodeID, String messageBoxURL,
+// String gfacURL, WorkflowNotifiable notifier) {
+// this.nodeID = nodeID;
+// this.portTypeQName = portTypeQName;
+// this.wsdlLocation = wsdlLocation;
+// this.serviceInformation = wsdlLocation;
+// this.messageBoxURL = messageBoxURL;
+// this.gfacURL = gfacURL;
+// this.notifier = notifier.createServiceNotificationSender(nodeID);
+//
+// this.failerSent = false;
+// }
+//
+// /**
+// * @param portTypeQName
+// * @param wsdl
+// * @param nodeID
+// * @param messageBoxURL
+// * @param gfacURL
+// * @param notifier
+// */
+// public EmbeddedGFacInvoker(QName portTypeQName,
+// WsdlDefinitions wsdl,
+// String nodeID,
+// String messageBoxURL,
+// String gfacURL,
+// WorkflowNotifiable notifier,
+// String topic,
+// AiravataAPI airavataAPI,
+// String serviceName,
+// XBayaConfiguration config) {
+// final String wsdlStr = xsul.XmlConstants.BUILDER.serializeToString(wsdl);
+// this.nodeID = nodeID;
+// this.portTypeQName = portTypeQName;
+// this.wsdlDefinitionObject = wsdl;
+// this.messageBoxURL = messageBoxURL;
+// this.serviceInformation = wsdlStr;
+// this.gfacURL = gfacURL;
+// this.notifier = notifier.createServiceNotificationSender(nodeID);
+// this.airavataAPI = airavataAPI;
+// this.topic = topic;
+// this.serviceName = serviceName;
+// this.failerSent = false;
+// this.configuration = config;
+// }
+//
+// /**
+// * @throws WorkflowException
+// */
+// public void setup() throws WorkflowException {
+// this.notifier.setServiceID(this.nodeID);
+// }
+//
+// private void setup(WsdlDefinitions definitions) throws WorkflowException {
+// }
+//
+// /**
+// * @param operationName The name of the operation
+// * @throws WorkflowException
+// */
+// public void setOperation(String operationName) throws WorkflowException {
+// }
+//
+// /**
+// * @param name The name of the input parameter
+// * @param value The value of the input parameter
+// * @throws WorkflowException
+// */
+// public void setInput(String name, Object value) throws WorkflowException {
+// try {
+// if (value instanceof XmlElement) {
+// logger.debug("value: " + XMLUtil.xmlElementToString((XmlElement) value));
+// }
+// this.inputNames.add(name);
+// this.inputValues.add(value);
+// } catch (RuntimeException e) {
+// logger.error(e.getMessage(), e);
+// String message = "Error in setting an input. name: " + name + " value: " + value;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Error e) {
+// logger.error(e.getMessage(), e);
+// String message = "Unexpected error: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Exception e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+// }
+//
+// /**
+// * @return
+// * @throws WorkflowException
+// */
+// public synchronized boolean invoke() throws WorkflowException {
+// try {
+// ContextHeaderDocument.ContextHeader contextHeader =
+// WorkflowContextHeaderBuilder.removeOtherSchedulingConfig(nodeID, this.configuration.getContextHeader());
+// String hostName = null;
+// HostDescription registeredHost;
+// if (contextHeader != null) {
+// if (contextHeader.getWorkflowSchedulingContext() != null &&
+// contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray().length > 0 &&
+// contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray(0).getHostName() != null) {
+// hostName = contextHeader.getWorkflowSchedulingContext().getApplicationSchedulingContextArray(0).getHostName();
+// }
+// }
+// //todo This is the basic scheduling, have to do proper scheduling implementation by implementing HostScheduler interface
+// ServiceDescription serviceDescription = airavataAPI.getApplicationManager().getServiceDescription(serviceName);
+// if (hostName == null) {
+// List<HostDescription> registeredHosts = new ArrayList<HostDescription>();
+// Map<String, ApplicationDescription> applicationDescriptors = airavataAPI.getApplicationManager().getApplicationDescriptors(serviceName);
+// for (String hostDescName : applicationDescriptors.keySet()) {
+// registeredHosts.add(airavataAPI.getApplicationManager().getHostDescription(hostDescName));
+// }
+// Class<? extends HostScheduler> aClass = Class.forName(ServerSettings.getHostScheduler()).asSubclass(HostScheduler.class);
+// HostScheduler hostScheduler = aClass.newInstance();
+// registeredHost = hostScheduler.schedule(registeredHosts);
+// } else {
+// // if user specify a host, no matter what we pick that host for all the nodes, todo: allow users to specify node specific host
+// registeredHost = airavataAPI.getApplicationManager().getHostDescription(hostName);
+// }
+// ApplicationDescription applicationDescription =
+// airavataAPI.getApplicationManager().getApplicationDescription(serviceName, registeredHost.getType().getHostName());
+//
+// // When we run getInParameters we set the actualParameter object, this has to be fixed
+// URL resource = EmbeddedGFacInvoker.class.getClassLoader().getResource(org.apache.airavata.common.utils.Constants.GFAC_CONFIG_XML);
+// OMElement inputMessage = getInParameters();
+// Object wsifMessageElement = new WSIFMessageElement(XMLUtil.stringToXmlElement3(inputMessage.toStringWithConsume()));
+// this.notifier.invokingService(new WSIFMessageElement((XmlElement) wsifMessageElement));
+// Properties configurationProperties = ServerSettings.getProperties();
+// GFacConfiguration gFacConfiguration = GFacConfiguration.create(new File(resource.getPath()), airavataAPI, configurationProperties);
+//
+// JobExecutionContext jobExecutionContext = new JobExecutionContext(gFacConfiguration, serviceName);
+// //Here we get only the contextheader information sent specific for this node
+// //Add security context
+//
+// //FIXME - We no longer using job execution context
+//// jobExecutionContext.setContextHeader(WorkflowContextHeaderBuilder.removeOtherSchedulingConfig(nodeID, configuration.getContextHeader()));
+//
+//
+// jobExecutionContext.setProperty(Constants.PROP_WORKFLOW_NODE_ID, this.nodeID);
+// jobExecutionContext.setProperty(Constants.PROP_TOPIC, this.configuration.getTopic());
+// jobExecutionContext.setProperty(Constants.PROP_BROKER_URL, this.configuration.getBrokerURL().toASCIIString());
+// jobExecutionContext.setProperty(Constants.PROP_WORKFLOW_INSTANCE_ID, this.configuration.getTopic());
+//
+//
+// ApplicationContext applicationContext = new ApplicationContext();
+// applicationContext.setApplicationDeploymentDescription(applicationDescription);
+// applicationContext.setHostDescription(registeredHost);
+// applicationContext.setServiceDescription(serviceDescription);
+//
+// jobExecutionContext.setApplicationContext(applicationContext);
+//
+// jobExecutionContext.setOutMessageContext(getOutParameters(serviceDescription));
+// jobExecutionContext.setInMessageContext(new MessageContext(actualParameters));
+//
+// addSecurityContext(registeredHost, configurationProperties, jobExecutionContext,
+// configuration.getContextHeader());
+// GFacImpl gfacAPI1 = new GFacImpl();
+// gfacAPI1.submitJob(jobExecutionContext);
+//
+// OMFactory fac = OMAbstractFactory.getOMFactory();
+// OMNamespace omNs = fac.createOMNamespace("http://ws.apache.org/axis2/xsd", "ns1");
+// OMElement outputElement = fac.createOMElement("invokeResponse", omNs);
+// MessageContext outMessageContext = jobExecutionContext.getOutMessageContext();
+// Set<String> paramNames = outMessageContext.getParameters().keySet();
+// for (String paramName : paramNames) {
+// /*
+// * Process Output
+// */
+// String outputString = ((ActualParameter) outMessageContext.getParameter(paramName)).toXML().replaceAll("GFacParameter", paramName);
+// XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(outputString));
+// StAXOMBuilder builder = new StAXOMBuilder(reader);
+// outputElement.addChild(builder.getDocumentElement());
+// }
+// // Send notification
+// logger.debug("outputMessage: " + outputElement.toString());
+// outPut = new WSIFMessageElement(XMLUtil.stringToXmlElement3(outputElement.toStringWithConsume()));
+// this.result = true;
+// EmbeddedGFacInvoker.this.notifier.serviceFinished(new WSIFMessageElement((XmlElement) outPut));
+// //todo check whether ActualParameter values are set or not, if they are null have to through an error or handle this in gfac level.
+//// {
+//// // An implementation of WSIFMessage,
+//// // WSIFMessageElement, implements toString(), which
+//// // serialize the message XML.
+//// EmbeddedGFacInvoker.this.notifier.receivedFault(new WSIFMessageElement(XMLUtil.stringToXmlElement3("<Message>Invocation Failed</Message>")));
+//// EmbeddedGFacInvoker.this.failerSent = true;
+//// }
+//
+// } catch (RuntimeException e) {
+// logger.error(e.getMessage(), e);
+// String message = "Error in invoking a service: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Error e) {
+// logger.error(e.getMessage(), e);
+// String message = "Unexpected error: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Exception e) {
+// this.notifier.invocationFailed(e.getMessage(), e);
+// throw new WorkflowException(e.getMessage(), e);
+// }
+// return true;
+// }
+//
+// private SecurityContextDocument.SecurityContext.CredentialManagementService getCredentialManagementService(
+// ContextHeaderDocument.ContextHeader contextHeader) {
+//
+// if (contextHeader != null) {
+//
+// SecurityContextDocument.SecurityContext.CredentialManagementService credentialManagementService
+// = contextHeader.getSecurityContext().getCredentialManagementService();
+//
+// if (credentialManagementService != null) {
+// // Make sure token id and portal user id is properly populated
+// if (credentialManagementService.getTokenId() != null &&
+// credentialManagementService.getPortalUser() != null) {
+//
+// return credentialManagementService;
+// } else {
+// return null;
+// }
+// } else {
+// return null;
+// }
+// }
+//
+// return null;
+// }
+//
+// private void addSecurityContext(HostDescription registeredHost, Properties configurationProperties,
+// JobExecutionContext jobExecutionContext, ContextHeaderDocument.ContextHeader contextHeader) throws WorkflowException {
+// RequestData requestData;
+// /* todo fix the credential store and uncomment following code block
+// SecurityContextDocument.SecurityContext.CredentialManagementService credentialManagementService
+// = getCredentialManagementService(contextHeader);
+//
+// GSISecurityContext context;
+//
+//
+// if (credentialManagementService != null) {
+// String gatewayId = credentialManagementService.getGatewayId();
+// String tokenId
+// = credentialManagementService.getTokenId();
+// String portalUser = credentialManagementService.getPortalUser();
+//
+// requestData = new RequestData(tokenId, portalUser, gatewayId);
+// } else {
+// requestData = new RequestData("default");
+// }
+//
+// try {
+// context = new GSISecurityContext(CredentialReaderFactory.createCredentialStoreReader(), requestData);
+// } catch (Exception e) {
+// throw new WorkflowException("An error occurred while creating GSI security context", e);
+// }
+// if (registeredHost.getType() instanceof GsisshHostType) {
+// GSIAuthenticationInfo authenticationInfo
+// = new MyProxyAuthenticationInfo(requestData.getMyProxyUserName(), requestData.getMyProxyPassword(), requestData.getMyProxyServerUrl(),
+// requestData.getMyProxyPort(), requestData.getMyProxyLifeTime(), System.getProperty(Constants.TRUSTED_CERTIFICATE_SYSTEM_PROPERTY));
+// ServerInfo serverInfo = new ServerInfo(requestData.getMyProxyUserName(), registeredHost.getType().getHostAddress());
+//
+// Cluster pbsCluster = null;
+// try {
+// pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
+// (((HpcApplicationDeploymentType) jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath()));
+// } catch (SSHApiException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+//
+// context.setPbsCluster(pbsCluster);
+// }
+// */
+// requestData = new RequestData("default");
+// GSISecurityContext context;
+// try {
+// context = new GSISecurityContext(CredentialReaderFactory.createCredentialStoreReader(), requestData);
+// } catch (Exception e) {
+// throw new WorkflowException("An error occurred while creating GSI security context", e);
+// }
+//
+// if (registeredHost.getType() instanceof GsisshHostType) {
+// GSIAuthenticationInfo authenticationInfo
+// = new MyProxyAuthenticationInfo(requestData.getMyProxyUserName(), requestData.getMyProxyPassword(), requestData.getMyProxyServerUrl(),
+// requestData.getMyProxyPort(), requestData.getMyProxyLifeTime(), System.getProperty(Constants.TRUSTED_CERTIFICATE_SYSTEM_PROPERTY));
+// ServerInfo serverInfo = new ServerInfo(requestData.getMyProxyUserName(), registeredHost.getType().getHostAddress());
+//
+// Cluster pbsCluster = null;
+// try {
+// String installedParentPath = ((HpcApplicationDeploymentType)
+// jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath();
+// pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
+// (CommonUtils.getPBSJobManager(installedParentPath)));
+// } catch (SSHApiException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+//
+// context.setPbsCluster(pbsCluster);
+// }
+//
+// jobExecutionContext.addSecurityContext(GSISecurityContext.GSI_SECURITY_CONTEXT, context);
+// //Adding Amanzon Keys
+// if (this.configuration.getAmazonSecurityContext() != null) {
+// jobExecutionContext.addSecurityContext(AmazonSecurityContext.AMAZON_SECURITY_CONTEXT,
+// this.configuration.getAmazonSecurityContext());
+// }
+// //Adding SSH security
+// String sshUserName = configurationProperties.getProperty(Constants.SSH_USER_NAME);
+// String sshPrivateKey = configurationProperties.getProperty(Constants.SSH_PRIVATE_KEY);
+// String sshPrivateKeyPass = configurationProperties.getProperty(Constants.SSH_PRIVATE_KEY_PASS);
+// String sshPassword = configurationProperties.getProperty(Constants.SSH_PASSWORD);
+// String sshPublicKey = configurationProperties.getProperty(Constants.SSH_PUBLIC_KEY);
+// SSHSecurityContext sshSecurityContext = new SSHSecurityContext();
+// if (((SSHHostType) registeredHost.getType()).getHpcResource()) {
+// AuthenticationInfo authenticationInfo = null;
+// // we give higher preference to the password over keypair ssh authentication
+// if (sshPassword != null) {
+// authenticationInfo = new DefaultPasswordAuthenticationInfo(sshPassword);
+// } else {
+// authenticationInfo = new DefaultPublicKeyFileAuthentication(sshPublicKey, sshPrivateKey, sshPrivateKeyPass);
+// }
+// ServerInfo serverInfo = new ServerInfo(sshUserName, registeredHost.getType().getHostAddress());
+//
+// Cluster pbsCluster = null;
+// try {
+// String installedParentPath = ((HpcApplicationDeploymentType)
+// jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath();
+// pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
+// (CommonUtils.getPBSJobManager(installedParentPath)));
+// } catch (SSHApiException e) {
+// e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
+// }
+// sshSecurityContext.setPbsCluster(pbsCluster);
+// sshSecurityContext.setUsername(sshUserName);
+// } else {
+// sshSecurityContext = new SSHSecurityContext();
+// sshSecurityContext.setUsername(sshUserName);
+// sshSecurityContext.setPrivateKeyLoc(sshPrivateKey);
+// sshSecurityContext.setKeyPass(sshPrivateKeyPass);
+// }
+// jobExecutionContext.addSecurityContext(SSHSecurityContext.SSH_SECURITY_CONTEXT, sshSecurityContext);
+// }
+//
+// /**
+// * @throws WorkflowException
+// */
+// @SuppressWarnings("boxing")
+// public synchronized void waitToFinish() throws WorkflowException {
+// try {
+// while (this.result == null) {
+// // The job is not submitted yet.
+// try {
+// wait();
+// } catch (InterruptedException e) {
+// logger.error(e.getMessage(), e);
+// }
+// }
+// // Wait for the job to finish.
+// Boolean success = this.result;
+// if (success == false) {
+// WSIFMessage faultMessage = this.invoker.getFault();
+// String message = "Error in a service: ";
// // An implementation of WSIFMessage,
// // WSIFMessageElement, implements toString(), which
// // serialize the message XML.
-// EmbeddedGFacInvoker.this.notifier.receivedFault(new WSIFMessageElement(XMLUtil.stringToXmlElement3("<Message>Invocation Failed</Message>")));
-// EmbeddedGFacInvoker.this.failerSent = true;
+// message += faultMessage.toString();
+// throw new WorkflowException(message);
+// }
+// } catch (RuntimeException e) {
+// logger.error(e.getMessage(), e);
+// String message = "Error while waiting for a service to finish: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Error e) {
+// logger.error(e.getMessage(), e);
+// String message = "Unexpected error: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// }
+// }
+//
+// /**
+// * @param name The name of the output parameter
+// * @return
+// * @throws WorkflowException
+// */
+// public Object getOutput(String name) throws WorkflowException {
+// try {
+// waitToFinish();
+// if (outPut instanceof XmlElement) {
+// Iterator children = ((XmlElement) outPut).children();
+// while (children.hasNext()) {
+// Object next = children.next();
+// if (((XmlElement) next).getName().equals(name)) {
+// return ((XmlElement) ((XmlElement) next).children().next()).children().next();
+// }
+// }
+// } else {
+// return outPut;
+// }
+// } catch (WorkflowException e) {
+// logger.error(e.getMessage(), e);
+// // An appropriate message has been set in the exception.
+// if (!this.failerSent) {
+// this.notifier.invocationFailed(e.getMessage(), e);
+// }
+// throw e;
+// } catch (RuntimeException e) {
+// logger.error(e.getMessage(), e);
+// String message = "Error while waiting for a output: " + name;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// } catch (Error e) {
+// logger.error(e.getMessage(), e);
+// String message = "Unexpected error: " + this.serviceInformation;
+// this.notifier.invocationFailed(message, e);
+// throw new WorkflowException(message, e);
+// }
+// throw new WorkflowException("Output could not be found");
+// }
+//
+// /**
+// * @return
+// * @throws WorkflowException
+// */
+// public WSIFMessage getOutputs() throws WorkflowException {
+// return this.invoker.getOutputs();
+// }
+//
+// public WSIFClient getClient() {
+// return null;
+// }
+//
+// public WSIFMessage getInputs() throws WorkflowException {
+// return null;
+// }
+//
+// public WSIFMessage getFault() throws WorkflowException {
+// return null;
+// }
+//
+// private OMElement getInParameters() throws AiravataAPIInvocationException, RegistryException, XMLStreamException {
+// OMFactory omFactory = OMAbstractFactory.getOMFactory();
+// OMElement invoke_inputParams = omFactory.createOMElement(new QName("invoke_InputParams"));
+// ServiceDescription serviceDescription = airavataAPI.getApplicationManager().getServiceDescription(this.serviceName);
+// if (serviceDescription == null) {
+// throw new RegistryException(new Exception("Service Description not found in registry."));
+// }
+// ServiceDescriptionType serviceDescriptionType = serviceDescription.getType();
+// for (String inputName : this.inputNames) {
+// OMElement omElement = omFactory.createOMElement(new QName(inputName));
+// int index = this.inputNames.indexOf(inputName);
+// Object value = this.inputValues.get(index);
+// InputParameterType parameter = serviceDescriptionType.getInputParametersArray(index);
+// if (value instanceof XmlElement) {
+// omElement.setText((String) ((XmlElement) ((XmlElement) ((XmlElement) value).children().next()).children().next()).children().next());
+// XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(XMLUtil.xmlElementToString((XmlElement) value)));
+// StAXOMBuilder builder = new StAXOMBuilder(reader);
+// OMElement input = builder.getDocumentElement();
+//// actualParameters.put(parameter.getParameterName(), GFacUtils.getInputActualParameter(parameter, input));
+// } else if (value instanceof String) {
+// omElement.setText((String) value);
+//// actualParameters.put(parameter.getParameterName(), GFacUtils.getInputActualParameter(parameter, AXIOMUtil.stringToOM("<value>" + value + "</value>")));
+// }
+// invoke_inputParams.addChild(omElement);
+// }
+// return invoke_inputParams;
+// }
+//
+// private MessageContext getOutParameters(ServiceDescription serviceDescription) {
+// MessageContext outContext = new MessageContext();
+// for (OutputParameterType parameter : serviceDescription.getType().getOutputParametersArray()) {
+// ActualParameter actualParameter = new ActualParameter();
+// if ("String".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(StringParameterType.type);
+// } else if ("Double".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(DoubleParameterType.type);
+// } else if ("Integer".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(IntegerParameterType.type);
+// } else if ("Float".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(FloatParameterType.type);
+// } else if ("Boolean".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(BooleanParameterType.type);
+// } else if ("File".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(FileParameterType.type);
+// } else if ("URI".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(URIParameterType.type);
+// } else if ("StringArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(StringArrayType.type);
+// } else if ("DoubleArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(DoubleArrayType.type);
+// } else if ("IntegerArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(IntegerArrayType.type);
+// } else if ("FloatArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(FloatArrayType.type);
+// } else if ("BooleanArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(BooleanArrayType.type);
+// } else if ("FileArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(FileArrayType.type);
+// } else if ("URIArray".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(URIArrayType.type);
+// } else if ("StdOut".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(StdOutParameterType.type);
+// } else if ("StdErr".equals(parameter.getParameterType().getName())) {
+// actualParameter.getType().changeType(StdErrParameterType.type);
// }
-
- } catch (RuntimeException e) {
- logger.error(e.getMessage(), e);
- String message = "Error in invoking a service: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Error e) {
- logger.error(e.getMessage(), e);
- String message = "Unexpected error: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Exception e) {
- this.notifier.invocationFailed(e.getMessage(), e);
- throw new WorkflowException(e.getMessage(), e);
- }
- return true;
- }
-
- private SecurityContextDocument.SecurityContext.CredentialManagementService getCredentialManagementService(
- ContextHeaderDocument.ContextHeader contextHeader) {
-
- if (contextHeader != null) {
-
- SecurityContextDocument.SecurityContext.CredentialManagementService credentialManagementService
- = contextHeader.getSecurityContext().getCredentialManagementService();
-
- if (credentialManagementService != null) {
- // Make sure token id and portal user id is properly populated
- if (credentialManagementService.getTokenId() != null &&
- credentialManagementService.getPortalUser() != null) {
-
- return credentialManagementService;
- } else {
- return null;
- }
- } else {
- return null;
- }
- }
-
- return null;
- }
-
- private void addSecurityContext(HostDescription registeredHost, Properties configurationProperties,
- JobExecutionContext jobExecutionContext, ContextHeaderDocument.ContextHeader contextHeader) throws WorkflowException {
- RequestData requestData;
- /* todo fix the credential store and uncomment following code block
- SecurityContextDocument.SecurityContext.CredentialManagementService credentialManagementService
- = getCredentialManagementService(contextHeader);
-
- GSISecurityContext context;
-
-
- if (credentialManagementService != null) {
- String gatewayId = credentialManagementService.getGatewayId();
- String tokenId
- = credentialManagementService.getTokenId();
- String portalUser = credentialManagementService.getPortalUser();
-
- requestData = new RequestData(tokenId, portalUser, gatewayId);
- } else {
- requestData = new RequestData("default");
- }
-
- try {
- context = new GSISecurityContext(CredentialReaderFactory.createCredentialStoreReader(), requestData);
- } catch (Exception e) {
- throw new WorkflowException("An error occurred while creating GSI security context", e);
- }
- if (registeredHost.getType() instanceof GsisshHostType) {
- GSIAuthenticationInfo authenticationInfo
- = new MyProxyAuthenticationInfo(requestData.getMyProxyUserName(), requestData.getMyProxyPassword(), requestData.getMyProxyServerUrl(),
- requestData.getMyProxyPort(), requestData.getMyProxyLifeTime(), System.getProperty(Constants.TRUSTED_CERTIFICATE_SYSTEM_PROPERTY));
- ServerInfo serverInfo = new ServerInfo(requestData.getMyProxyUserName(), registeredHost.getType().getHostAddress());
-
- Cluster pbsCluster = null;
- try {
- pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
- (((HpcApplicationDeploymentType) jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath()));
- } catch (SSHApiException e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
-
- context.setPbsCluster(pbsCluster);
- }
- */
- requestData = new RequestData("default");
- GSISecurityContext context;
- try {
- context = new GSISecurityContext(CredentialReaderFactory.createCredentialStoreReader(), requestData);
- } catch (Exception e) {
- throw new WorkflowException("An error occurred while creating GSI security context", e);
- }
-
- if (registeredHost.getType() instanceof GsisshHostType) {
- GSIAuthenticationInfo authenticationInfo
- = new MyProxyAuthenticationInfo(requestData.getMyProxyUserName(), requestData.getMyProxyPassword(), requestData.getMyProxyServerUrl(),
- requestData.getMyProxyPort(), requestData.getMyProxyLifeTime(), System.getProperty(Constants.TRUSTED_CERTIFICATE_SYSTEM_PROPERTY));
- ServerInfo serverInfo = new ServerInfo(requestData.getMyProxyUserName(), registeredHost.getType().getHostAddress());
-
- Cluster pbsCluster = null;
- try {
- String installedParentPath = ((HpcApplicationDeploymentType)
- jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath();
- pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
- (CommonUtils.getPBSJobManager(installedParentPath)));
- } catch (SSHApiException e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
-
- context.setPbsCluster(pbsCluster);
- }
-
- jobExecutionContext.addSecurityContext(GSISecurityContext.GSI_SECURITY_CONTEXT, context);
- //Adding Amanzon Keys
- if (this.configuration.getAmazonSecurityContext() != null) {
- jobExecutionContext.addSecurityContext(AmazonSecurityContext.AMAZON_SECURITY_CONTEXT,
- this.configuration.getAmazonSecurityContext());
- }
- //Adding SSH security
- String sshUserName = configurationProperties.getProperty(Constants.SSH_USER_NAME);
- String sshPrivateKey = configurationProperties.getProperty(Constants.SSH_PRIVATE_KEY);
- String sshPrivateKeyPass = configurationProperties.getProperty(Constants.SSH_PRIVATE_KEY_PASS);
- String sshPassword = configurationProperties.getProperty(Constants.SSH_PASSWORD);
- String sshPublicKey = configurationProperties.getProperty(Constants.SSH_PUBLIC_KEY);
- SSHSecurityContext sshSecurityContext = new SSHSecurityContext();
- if (((SSHHostType) registeredHost.getType()).getHpcResource()) {
- AuthenticationInfo authenticationInfo = null;
- // we give higher preference to the password over keypair ssh authentication
- if (sshPassword != null) {
- authenticationInfo = new DefaultPasswordAuthenticationInfo(sshPassword);
- } else {
- authenticationInfo = new DefaultPublicKeyFileAuthentication(sshPublicKey, sshPrivateKey, sshPrivateKeyPass);
- }
- ServerInfo serverInfo = new ServerInfo(sshUserName, registeredHost.getType().getHostAddress());
-
- Cluster pbsCluster = null;
- try {
- String installedParentPath = ((HpcApplicationDeploymentType)
- jobExecutionContext.getApplicationContext().getApplicationDeploymentDescription().getType()).getInstalledParentPath();
- pbsCluster = new PBSCluster(serverInfo, authenticationInfo,
- (CommonUtils.getPBSJobManager(installedParentPath)));
- } catch (SSHApiException e) {
- e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
- }
- sshSecurityContext.setPbsCluster(pbsCluster);
- sshSecurityContext.setUsername(sshUserName);
- } else {
- sshSecurityContext = new SSHSecurityContext();
- sshSecurityContext.setUsername(sshUserName);
- sshSecurityContext.setPrivateKeyLoc(sshPrivateKey);
- sshSecurityContext.setKeyPass(sshPrivateKeyPass);
- }
- jobExecutionContext.addSecurityContext(SSHSecurityContext.SSH_SECURITY_CONTEXT, sshSecurityContext);
- }
-
- /**
- * @throws WorkflowException
- */
- @SuppressWarnings("boxing")
- public synchronized void waitToFinish() throws WorkflowException {
- try {
- while (this.result == null) {
- // The job is not submitted yet.
- try {
- wait();
- } catch (InterruptedException e) {
- logger.error(e.getMessage(), e);
- }
- }
- // Wait for the job to finish.
- Boolean success = this.result;
- if (success == false) {
- WSIFMessage faultMessage = this.invoker.getFault();
- String message = "Error in a service: ";
- // An implementation of WSIFMessage,
- // WSIFMessageElement, implements toString(), which
- // serialize the message XML.
- message += faultMessage.toString();
- throw new WorkflowException(message);
- }
- } catch (RuntimeException e) {
- logger.error(e.getMessage(), e);
- String message = "Error while waiting for a service to finish: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Error e) {
- logger.error(e.getMessage(), e);
- String message = "Unexpected error: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- }
- }
-
- /**
- * @param name The name of the output parameter
- * @return
- * @throws WorkflowException
- */
- public Object getOutput(String name) throws WorkflowException {
- try {
- waitToFinish();
- if (outPut instanceof XmlElement) {
- Iterator children = ((XmlElement) outPut).children();
- while (children.hasNext()) {
- Object next = children.next();
- if (((XmlElement) next).getName().equals(name)) {
- return ((XmlElement) ((XmlElement) next).children().next()).children().next();
- }
- }
- } else {
- return outPut;
- }
- } catch (WorkflowException e) {
- logger.error(e.getMessage(), e);
- // An appropriate message has been set in the exception.
- if (!this.failerSent) {
- this.notifier.invocationFailed(e.getMessage(), e);
- }
- throw e;
- } catch (RuntimeException e) {
- logger.error(e.getMessage(), e);
- String message = "Error while waiting for a output: " + name;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- } catch (Error e) {
- logger.error(e.getMessage(), e);
- String message = "Unexpected error: " + this.serviceInformation;
- this.notifier.invocationFailed(message, e);
- throw new WorkflowException(message, e);
- }
- throw new WorkflowException("Output could not be found");
- }
-
- /**
- * @return
- * @throws WorkflowException
- */
- public WSIFMessage getOutputs() throws WorkflowException {
- return this.invoker.getOutputs();
- }
-
- public WSIFClient getClient() {
- return null;
- }
-
- public WSIFMessage getInputs() throws WorkflowException {
- return null;
- }
-
- public WSIFMessage getFault() throws WorkflowException {
- return null;
- }
-
- private OMElement getInParameters() throws AiravataAPIInvocationException, RegistryException, XMLStreamException {
- OMFactory omFactory = OMAbstractFactory.getOMFactory();
- OMElement invoke_inputParams = omFactory.createOMElement(new QName("invoke_InputParams"));
- ServiceDescription serviceDescription = airavataAPI.getApplicationManager().getServiceDescription(this.serviceName);
- if (serviceDescription == null) {
- throw new RegistryException(new Exception("Service Description not found in registry."));
- }
- ServiceDescriptionType serviceDescriptionType = serviceDescription.getType();
- for (String inputName : this.inputNames) {
- OMElement omElement = omFactory.createOMElement(new QName(inputName));
- int index = this.inputNames.indexOf(inputName);
- Object value = this.inputValues.get(index);
- InputParameterType parameter = serviceDescriptionType.getInputParametersArray(index);
- if (value instanceof XmlElement) {
- omElement.setText((String) ((XmlElement) ((XmlElement) ((XmlElement) value).children().next()).children().next()).children().next());
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(XMLUtil.xmlElementToString((XmlElement) value)));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- OMElement input = builder.getDocumentElement();
-// actualParameters.put(parameter.getParameterName(), GFacUtils.getInputActualParameter(parameter, input));
- } else if (value instanceof String) {
- omElement.setText((String) value);
-// actualParameters.put(parameter.getParameterName(), GFacUtils.getInputActualParameter(parameter, AXIOMUtil.stringToOM("<value>" + value + "</value>")));
- }
- invoke_inputParams.addChild(omElement);
- }
- return invoke_inputParams;
- }
-
- private MessageContext getOutParameters(ServiceDescription serviceDescription) {
- MessageContext outContext = new MessageContext();
- for (OutputParameterType parameter : serviceDescription.getType().getOutputParametersArray()) {
- ActualParameter actualParameter = new ActualParameter();
- if ("String".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(StringParameterType.type);
- } else if ("Double".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(DoubleParameterType.type);
- } else if ("Integer".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(IntegerParameterType.type);
- } else if ("Float".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(FloatParameterType.type);
- } else if ("Boolean".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(BooleanParameterType.type);
- } else if ("File".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(FileParameterType.type);
- } else if ("URI".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(URIParameterType.type);
- } else if ("StringArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(StringArrayType.type);
- } else if ("DoubleArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(DoubleArrayType.type);
- } else if ("IntegerArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(IntegerArrayType.type);
- } else if ("FloatArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(FloatArrayType.type);
- } else if ("BooleanArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(BooleanArrayType.type);
- } else if ("FileArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(FileArrayType.type);
- } else if ("URIArray".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(URIArrayType.type);
- } else if ("StdOut".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(StdOutParameterType.type);
- } else if ("StdErr".equals(parameter.getParameterType().getName())) {
- actualParameter.getType().changeType(StdErrParameterType.type);
- }
- outContext.addParameter(parameter.getParameterName(), actualParameter);
- }
- return outContext;
- }
-}
+// outContext.addParameter(parameter.getParameterName(), actualParameter);
+// }
+// return outContext;
+// }
+//}
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/script/JythonScript.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/script/JythonScript.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/script/JythonScript.java
index 17e6620..cf2e619 100644
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/script/JythonScript.java
+++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/jython/script/JythonScript.java
@@ -356,7 +356,6 @@ public class JythonScript {
writeSetProperty(BROKER_URL_VARIABLE, XBayaConstants.DEFAULT_BROKER_URL, pw);
writeSetProperty(MESSAGE_BOX_URL_VARIABLE, this.configuration.getMessageBoxURL(), pw);
writeSetProperty(TOPIC_VARIABLE, XBayaConstants.DEFAULT_TOPIC, pw);
- writeSetProperty(GFAC_VARIABLE, this.configuration.getGFacURL(), pw);
for (InputNode paramNode : this.inputNodes) {
writeParameter(paramNode, pw);
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/LeadContextHeaderHelper.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/LeadContextHeaderHelper.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/LeadContextHeaderHelper.java
index c8db9fd..d982c0f 100644
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/LeadContextHeaderHelper.java
+++ b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/lead/LeadContextHeaderHelper.java
@@ -144,7 +144,6 @@ public class LeadContextHeaderHelper {
* @param xbayaConfiguration
*/
public void setXBayaConfiguration(XBayaConfiguration xbayaConfiguration) {
- setGFacURL(xbayaConfiguration.getGFacURL());
// The followings might overwrite some variables.
setWorkflowTemplateID(xbayaConfiguration.getGPELTemplateID());
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/AiravataConfigurations.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/AiravataConfigurations.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/AiravataConfigurations.java
deleted file mode 100644
index 6702f1c..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/AiravataConfigurations.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.xbaya.model.registrybrowser;
-
-import org.apache.airavata.client.api.AiravataAPI;
-import org.apache.airavata.registry.api.AiravataRegistry2;
-
-public class AiravataConfigurations {
-// private AiravataRegistry2 registry;
- private AiravataAPI airavataAPI;
-
-// public AiravataConfigurations(AiravataRegistry2 registry) {
-// setRegistry(registry);
-// }
- public AiravataConfigurations(AiravataAPI airavataAPI) {
- setAiravataAPI(airavataAPI);
- }
-
-// public AiravataRegistry2 getRegistry() {
-// return registry;
-// }
-//
-// public void setRegistry(AiravataRegistry2 registry) {
-// this.registry = registry;
-// }
-
-
- public AiravataAPI getAiravataAPI() {
- return airavataAPI;
- }
-
- public void setAiravataAPI(AiravataAPI airavataAPI) {
- this.airavataAPI = airavataAPI;
- }
-}
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptionWrap.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptionWrap.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptionWrap.java
deleted file mode 100644
index 3c66c43..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptionWrap.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.xbaya.model.registrybrowser;
-
-import org.apache.airavata.client.api.AiravataAPI;
-import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
-import org.apache.airavata.commons.gfac.type.ApplicationDescription;
-import org.apache.airavata.commons.gfac.type.HostDescription;
-import org.apache.airavata.commons.gfac.type.ServiceDescription;
-//import org.apache.airavata.registry.api.AiravataRegistry2;
-
-public class ApplicationDeploymentDescriptionWrap {
- private ApplicationDescription applicationDescription;
- private String service;
- private String host;
-// private AiravataRegistry2 registry;
- private AiravataAPI airavataAPI;
-
- public ApplicationDeploymentDescriptionWrap(AiravataAPI airavataAPI,
- ApplicationDescription applicationDescription, String service, String host) {
- setApplicationDescription(applicationDescription);
- setService(service);
- setHost(host);
- setAiravataAPI(airavataAPI);
- }
-
- public ApplicationDescription getDescription() {
- return applicationDescription;
- }
-
- public void setApplicationDescription(ApplicationDescription applicationDescription) {
- this.applicationDescription = applicationDescription;
- }
-
- public String getService() {
- return service;
- }
-
- public ServiceDescription getServiceDescription() throws AiravataAPIInvocationException {
- ServiceDescription desc = getAiravataAPI().getApplicationManager().getServiceDescription(getService());
- if(desc!=null){
- return desc;
- }
- throw new AiravataAPIInvocationException(new Exception("Service Description not found in registry."));
- }
-
- public void setService(String service) {
- this.service = service;
- }
-
- public String getHost() {
- return host;
- }
-
- public HostDescription getHostDescription() throws AiravataAPIInvocationException {
- return getAiravataAPI().getApplicationManager().getHostDescription(getHost());
- }
-
- public void setHost(String host) {
- this.host = host;
- }
-
-// public AiravataRegistry2 getRegistry() {
-// return registry;
-// }
-//
-// public void setRegistry(AiravataRegistry2 registry) {
-// this.registry = registry;
-// }
-
-
- public AiravataAPI getAiravataAPI() {
- return airavataAPI;
- }
-
- public void setAiravataAPI(AiravataAPI airavataAPI) {
- this.airavataAPI = airavataAPI;
- }
-}
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptions.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptions.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptions.java
deleted file mode 100644
index 247a7e8..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/ApplicationDeploymentDescriptions.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.xbaya.model.registrybrowser;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.airavata.client.api.AiravataAPI;
-import org.apache.airavata.client.api.ApplicationManager;
-import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
-import org.apache.airavata.commons.gfac.type.ApplicationDescription;
-import org.apache.airavata.registry.api.exception.RegistryException;
-import org.apache.airavata.commons.gfac.type.ServiceDescription;
-//import org.apache.airavata.registry.api.AiravataRegistry2;
-
-public class ApplicationDeploymentDescriptions {
-// private AiravataRegistry2 registry;
- private AiravataAPI airavataAPI;
- private String serviceName;
-
-// public ApplicationDeploymentDescriptions(AiravataRegistry2 registry, String serviceName) {
-// setRegistry(registry);
-// setServiceName(serviceName);
-// }
-
-
- public AiravataAPI getAiravataAPI() {
- return airavataAPI;
- }
-
- public void setAiravataAPI(AiravataAPI airavataAPI) {
- this.airavataAPI = airavataAPI;
- }
-
- public ApplicationDeploymentDescriptions(AiravataAPI airavataAPI, String serviceName) {
- setAiravataAPI(airavataAPI);
- setServiceName(serviceName);
- }
-
-// public ApplicationDeploymentDescriptions(AiravataRegistry2 registry) {
-// this(registry,null);
-// }
-
- public ApplicationDeploymentDescriptions(AiravataAPI airavataAPI) {
- this(airavataAPI,null);
- }
-
-// public AiravataRegistry2 getRegistry() {
-// return registry;
-// }
-//
-// public void setRegistry(AiravataRegistry2 registry) {
-// this.registry = registry;
-// }
-
- public List<ApplicationDeploymentDescriptionWrap> getDescriptions() throws RegistryException, AiravataAPIInvocationException {
- List<ApplicationDeploymentDescriptionWrap> list = new ArrayList<ApplicationDeploymentDescriptionWrap>();
- if (getServiceName()==null) {
- ApplicationManager applicationManager = getAiravataAPI().getApplicationManager();
- List<ServiceDescription> serviceDescriptors = applicationManager.getAllServiceDescriptions();
- for (ServiceDescription serviceDescription : serviceDescriptors) {
- String serviceName = serviceDescription.getType().getName();
- Map<String,ApplicationDescription> deploymentDescriptions = applicationManager.getApplicationDescriptors(serviceName);
- for (String hostName : deploymentDescriptions.keySet()) {
- ApplicationDescription descriptionWrap=deploymentDescriptions.get(hostName);
- list.add(new ApplicationDeploymentDescriptionWrap(getAiravataAPI(), descriptionWrap, serviceName,hostName));
- }
- }
-
- }else{
- Map<String,ApplicationDescription> deploymentDescriptions = getAiravataAPI().getApplicationManager().getApplicationDescriptors(serviceName);
- for (String hostName : deploymentDescriptions.keySet()) {
- ApplicationDescription descriptionWrap=deploymentDescriptions.get(hostName);
- list.add(new ApplicationDeploymentDescriptionWrap(getAiravataAPI(), descriptionWrap, getServiceName(),hostName));
- }
- }
- return list;
- }
-
- public String getServiceName() {
- return serviceName;
- }
-
- public void setServiceName(String serviceName) {
- this.serviceName = serviceName;
- }
-}
http://git-wip-us.apache.org/repos/asf/airavata/blob/3e6c815a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/EventingServiceURL.java
----------------------------------------------------------------------
diff --git a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/EventingServiceURL.java b/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/EventingServiceURL.java
deleted file mode 100644
index 480848b..0000000
--- a/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/model/registrybrowser/EventingServiceURL.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.xbaya.model.registrybrowser;
-
-import org.apache.airavata.client.api.AiravataAPI;
-
-import java.net.URI;
-
-//import org.apache.airavata.registry.api.AiravataRegistry2;
-
-public class EventingServiceURL {
- private AiravataAPI airavataAPI;
- private URI eventingServiceURL;
-
- public EventingServiceURL(AiravataAPI airavataAPI, URI eventingServiceURL) {
- setAiravataAPI(airavataAPI);
- setEventingServiceURL(eventingServiceURL);
- }
-
- public URI getEventingServiceURL() {
- return eventingServiceURL;
- }
-
- public void setEventingServiceURL(URI eventingServiceURL) {
- this.eventingServiceURL = eventingServiceURL;
- }
-
- public AiravataAPI getAiravataAPI() {
- return airavataAPI;
- }
-
- public void setAiravataAPI(AiravataAPI airavataAPI) {
- this.airavataAPI = airavataAPI;
- }
-}