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/25 23:52:49 UTC
svn commit: r1188938 - in /incubator/airavata/trunk:
modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/
modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/
modules/commons/registry-api/src/ma...
Author: lahiru
Date: Tue Oct 25 21:52:47 2011
New Revision: 1188938
URL: http://svn.apache.org/viewvc?rev=1188938&view=rev
Log:
https://issues.apache.org/jira/browse/AIRAVATA-159
Added:
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/ (with props)
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/InputParameters.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/OutputParameters.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameter.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameters.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplate.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplates.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/InputParametersNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/OutputParametersNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterValueNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParametersNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplateNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplatesNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/input_para.png (with props)
incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/output_para.png (with props)
incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/parameter.png (with props)
Modified:
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Axis2Registry.java
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java
incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java
incubator/airavata/trunk/modules/gfac-axis2/src/main/java/org/apache/airavata/services/gfac/axis2/reciever/GFacMessageReciever.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ServiceDescriptionDialog.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/JCRComponentRegistry.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/provenance/ProvenanceWrite.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/AiravataTreeNodeFactory.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/RegistryNode.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ServiceDescriptionNode.java
incubator/airavata/trunk/samples/simple-math-service/ (props changed)
Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Axis2Registry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Axis2Registry.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Axis2Registry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Axis2Registry.java Tue Oct 25 21:52:47 2011
@@ -22,30 +22,24 @@
package org.apache.airavata.registry.api;
import org.apache.airavata.commons.gfac.type.ServiceDescription;
+import org.apache.airavata.registry.api.exception.RegistryException;
-public interface Axis2Registry extends Registry {
+public interface Axis2Registry extends Registry{
/**
- * Save WSDL for Axis2
- *
- * @param service
- * @param WSDL
- */
- public String saveWSDL(ServiceDescription service, String WSDL);
-
- /**
- * Save WSDL for Axis2
+ * Load WSDL for Axis2
*
- * @param serviceName
- * @param service
+ * @param serviceId
+ * @return WSDL
+ * @throws RegistryException
*/
- public String saveWSDL(ServiceDescription service);
-
+ public String getWSDL(String serviceId) throws RegistryException;
+
/**
* Load WSDL for Axis2
*
* @param serviceId
* @return WSDL
*/
- public String getWSDL(String serviceId);
+ public String getWSDL(ServiceDescription service);
}
Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/Registry.java Tue Oct 25 21:52:47 2011
@@ -36,6 +36,7 @@ import org.apache.airavata.registry.api.
import org.apache.airavata.registry.api.exception.HostDescriptionRetrieveException;
import org.apache.airavata.registry.api.exception.RegistryException;
import org.apache.airavata.registry.api.exception.ServiceDescriptionRetrieveException;
+import org.apache.airavata.registry.api.workflow.WorkflowIOData;
public interface Registry {
/**
@@ -221,7 +222,11 @@ public interface Registry {
*/
public String getName();
- public boolean saveWorkflowInput(String data, String experimentId, String nodeId,String workflowName);
+ public boolean saveWorkflowInput(WorkflowIOData workflowInputData);
- public boolean saveWorkflowOutput(String data,String experimentId,String nodeId,String workflowName);
+ public boolean saveWorkflowOutput(WorkflowIOData workflowOutputData);
+
+ public List<WorkflowIOData> searchWorkflowInput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx);
+
+ public List<WorkflowIOData> searchWorkflowOutput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx);
}
Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/exception/DeploymentDescriptionRetrieveException.java Tue Oct 25 21:52:47 2011
@@ -29,7 +29,7 @@ public class DeploymentDescriptionRetrie
private static final long serialVersionUID = -2849422320139467602L;
public DeploymentDescriptionRetrieveException(Exception e) {
- super(e);
+ super(ERROR_MESSAGE,e);
}
}
Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/JCRRegistry.java Tue Oct 25 21:52:47 2011
@@ -59,6 +59,7 @@ import org.apache.airavata.registry.api.
import org.apache.airavata.registry.api.exception.ServiceDescriptionRetrieveException;
import org.apache.airavata.registry.api.user.UserManager;
import org.apache.airavata.registry.api.util.WebServiceUtil;
+import org.apache.airavata.registry.api.workflow.WorkflowIOData;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -74,6 +75,10 @@ public class JCRRegistry extends Observa
private static final String WSDL_PROPERTY_NAME = "WSDL";
private static final String GFAC_URL_PROPERTY_NAME = "GFAC_URL_LIST";
private static final String LINK_NAME = "LINK";
+ private static final String PROPERTY_WORKFLOW_NAME = "workflowName";
+ private static final String PROPERTY_WORKFLOW_IO_CONTENT = "content";
+
+
public static final String WORKFLOWS = "WORKFLOWS";
public static final String PUBLIC = "PUBLIC";
public static final String REGISTRY_TYPE_WORKFLOW = "workflow";
@@ -555,51 +560,44 @@ public class JCRRegistry extends Observa
return result;
}
- public String saveWSDL(ServiceDescription service, String WSDL) {
- Session session = null;
- String result = null;
- try {
- session = getSession();
- Node serviceNode = getServiceNode(session);
- Node node = getOrAddNode(serviceNode, service.getId());
- node.setProperty(WSDL_PROPERTY_NAME, WSDL);
- session.save();
-
- result = node.getIdentifier();
- triggerObservers(this);
- } catch (Exception e) {
- System.out.println(e);
- e.printStackTrace();
- // TODO propagate
- } finally {
- closeSession(session);
+// public String saveWSDL(ServiceDescription service, String WSDL) {
+// Session session = null;
+// String result = null;
+// try {
+// session = getSession();
+// Node serviceNode = getServiceNode(session);
+// Node node = getOrAddNode(serviceNode, service.getId());
+// node.setProperty(WSDL_PROPERTY_NAME, WSDL);
+// session.save();
+//
+// result = node.getIdentifier();
+// triggerObservers(this);
+// } catch (Exception e) {
+// System.out.println(e);
+// e.printStackTrace();
+// // TODO propagate
+// } finally {
+// closeSession(session);
+// }
+// return result;
+// }
+//
+// public String saveWSDL(ServiceDescription service) {
+// return saveWSDL(service, WebServiceUtil.generateWSDL(service));
+// }
+
+ public String getWSDL(String serviceName) throws RegistryException {
+ List<ServiceDescription> searchServiceDescription = searchServiceDescription(serviceName);
+ if (searchServiceDescription.size()>0){
+ return getWSDL(searchServiceDescription.get(0));
}
- return result;
- }
-
- public String saveWSDL(ServiceDescription service) {
- return saveWSDL(service, WebServiceUtil.generateWSDL(service));
+ throw new ServiceDescriptionRetrieveException(new Exception("No service description from the name "+serviceName));
}
- public String getWSDL(String serviceName) {
- Session session = null;
- String result = null;
- try {
- session = getSession();
- Node serviceNode = getServiceNode(session);
- Node node = serviceNode.getNode(serviceName);
- Property prop = node.getProperty(WSDL_PROPERTY_NAME);
- result = prop.getString();
- } catch (Exception e) {
- System.out.println(e);
- e.printStackTrace();
- // TODO propagate
- } finally {
- closeSession(session);
- }
- return result;
+ public String getWSDL(ServiceDescription service) {
+ return WebServiceUtil.generateWSDL(service);
}
-
+
public boolean saveGFacDescriptor(String gfacURL) {
java.util.Date today = Calendar
.getInstance(TimeZone.getTimeZone("GMT")).getTime();
@@ -858,46 +856,89 @@ public class JCRRegistry extends Observa
return repository.getDescriptor(Repository.REP_NAME_DESC);
}
- public boolean saveWorkflowInput(String data, String experimentId,
- String nodeId,String workflowName) {
- Session session = null;
+ public boolean saveWorkflowInput(WorkflowIOData workflowInputData) {
+ return saveWorkflowIO(workflowInputData, OUTPUT);
+ }
+
+ public boolean saveWorkflowOutput(WorkflowIOData workflowOutputData) {
+ return saveWorkflowIO(workflowOutputData, INPUT);
+ }
+
+ private boolean saveWorkflowIO(WorkflowIOData workflowOutputData, String type) {
+ Session session = null;
+ boolean isSaved=true;
try {
session = getSession();
Node workflowDataNode =
getOrAddNode(getOrAddNode(
getOrAddNode(session.getRootNode(), WORKFLOW_DATA),
- experimentId),experimentId);
- workflowDataNode.setProperty("workflowName",workflowName);
- workflowDataNode = getOrAddNode(getOrAddNode(workflowDataNode,nodeId), OUTPUT);
- workflowDataNode.setProperty("content", data);
+ workflowOutputData.getExperimentId()),workflowOutputData.getExperimentId());
+ workflowDataNode.setProperty(PROPERTY_WORKFLOW_NAME,workflowOutputData.getWorkflowName());
+ workflowDataNode = getOrAddNode(getOrAddNode(workflowDataNode,workflowOutputData.getNodeId()), type);
+ workflowDataNode.setProperty(PROPERTY_WORKFLOW_IO_CONTENT, workflowOutputData.getData());
session.save();
} catch (Exception e) {
+ isSaved=false;
e.printStackTrace();
} finally {
closeSession(session);
- return true;
}
+ return isSaved;
}
+
+ public List<WorkflowIOData> searchWorkflowInput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx){
+ return searchWorkflowIO(experimentIdRegEx, workflowNameRegEx,
+ nodeNameRegEx, INPUT);
+ }
- public boolean saveWorkflowOutput(String data, String experimentId,
- String nodeId,String workflowName) {
- Session session = null;
+ public List<WorkflowIOData> searchWorkflowOutput(String experimentIdRegEx, String workflowNameRegEx, String nodeNameRegEx){
+ return searchWorkflowIO(experimentIdRegEx, workflowNameRegEx,
+ nodeNameRegEx, OUTPUT);
+ }
+
+ private List<WorkflowIOData> searchWorkflowIO(String experimentIdRegEx,
+ String workflowNameRegEx, String nodeNameRegEx, String type) {
+ List<WorkflowIOData> workflowIODataList=new ArrayList<WorkflowIOData>();
+ Session session = null;
try {
session = getSession();
- Node workflowDataNode =
- getOrAddNode(getOrAddNode(
- getOrAddNode(session.getRootNode(), WORKFLOW_DATA),
- experimentId),experimentId);
- workflowDataNode.setProperty("workflowName",workflowName);
- workflowDataNode = getOrAddNode(getOrAddNode(workflowDataNode,nodeId), INPUT);
- workflowDataNode.setProperty("content", data);
- session.save();
+ Node experimentsNode = getOrAddNode(session.getRootNode(), WORKFLOW_DATA);
+ NodeIterator experimentNodes = experimentsNode.getNodes();
+ for (; experimentNodes.hasNext();) {
+ Node experimentNode = experimentNodes.nextNode();
+ if (experimentIdRegEx!=null && !experimentNode.getName().matches(experimentIdRegEx)){
+ continue;
+ }
+ NodeIterator workflowNodes = experimentNode.getNodes();
+ for (; workflowNodes.hasNext();) {
+ Node workflowNode = workflowNodes.nextNode();
+ String workflowName = workflowNode.getProperty(PROPERTY_WORKFLOW_NAME).getString();
+ if (workflowNameRegEx!=null && !workflowName.matches(workflowNameRegEx)){
+ continue;
+ }
+ NodeIterator serviceNodes = workflowNode.getNodes();
+ for (; serviceNodes.hasNext();) {
+ Node serviceNode = serviceNodes.nextNode();
+ if (nodeNameRegEx!=null && !serviceNode.getName().matches(nodeNameRegEx)){
+ continue;
+ }
+ Node ioNode = getOrAddNode(serviceNode,type);
+ WorkflowIOData workflowIOData = new WorkflowIOData();
+ workflowIOData.setExperimentId(experimentNode.getName());
+ workflowIOData.setWorkflowId(workflowNode.getName());
+ workflowIOData.setWorkflowName(workflowName);
+ workflowIOData.setNodeId(ioNode.getName());
+ workflowIOData.setData(ioNode.getProperty(PROPERTY_WORKFLOW_IO_CONTENT).getString());
+ workflowIODataList.add(workflowIOData);
+ }
+ }
+ }
} catch (Exception e) {
e.printStackTrace();
} finally {
closeSession(session);
- return true;
}
-
+ return workflowIODataList;
}
+
}
Propchange: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/
------------------------------------------------------------------------------
bugtraq:number = true
Added: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java (added)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/workflow/WorkflowIOData.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,65 @@
+package org.apache.airavata.registry.api.workflow;
+
+public class WorkflowIOData {
+ private String data;
+ private String experimentId;
+ private String nodeId;
+ private String workflowName;
+ private String workflowId;
+
+ public WorkflowIOData() {
+ }
+
+ public WorkflowIOData(String data, String experimentId, String workflowId,
+ String nodeId,String workflowName) {
+ setData(data);
+ setExperimentId(experimentId);
+ setWorkflowId(workflowId);
+ setNodeId(nodeId);
+ setWorkflowName(workflowName);
+ }
+
+ public WorkflowIOData(String data, String experimentId,
+ String nodeId,String workflowName) {
+ this(data, experimentId, experimentId, nodeId, workflowName);
+ }
+ public String getData() {
+ return data;
+ }
+
+ public void setData(String data) {
+ this.data = data;
+ }
+
+ public String getExperimentId() {
+ return experimentId;
+ }
+
+ public void setExperimentId(String experimentId) {
+ this.experimentId = experimentId;
+ }
+
+ public String getNodeId() {
+ return nodeId;
+ }
+
+ public void setNodeId(String nodeId) {
+ this.nodeId = nodeId;
+ }
+
+ public String getWorkflowName() {
+ return workflowName;
+ }
+
+ public void setWorkflowName(String workflowName) {
+ this.workflowName = workflowName;
+ }
+
+ public String getWorkflowId() {
+ return workflowId;
+ }
+
+ public void setWorkflowId(String workflowId) {
+ this.workflowId = workflowId;
+ }
+}
Modified: incubator/airavata/trunk/modules/gfac-axis2/src/main/java/org/apache/airavata/services/gfac/axis2/reciever/GFacMessageReciever.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/gfac-axis2/src/main/java/org/apache/airavata/services/gfac/axis2/reciever/GFacMessageReciever.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/gfac-axis2/src/main/java/org/apache/airavata/services/gfac/axis2/reciever/GFacMessageReciever.java (original)
+++ incubator/airavata/trunk/modules/gfac-axis2/src/main/java/org/apache/airavata/services/gfac/axis2/reciever/GFacMessageReciever.java Tue Oct 25 21:52:47 2011
@@ -46,6 +46,7 @@ import org.apache.airavata.core.gfac.not
import org.apache.airavata.core.gfac.notification.impl.WorkflowTrackingNotification;
import org.apache.airavata.core.gfac.services.GenericService;
import org.apache.airavata.registry.api.Axis2Registry;
+import org.apache.airavata.registry.api.exception.RegistryException;
import org.apache.airavata.schemas.wec.ContextHeaderDocument;
import org.apache.airavata.services.gfac.axis2.GFacService;
import org.apache.airavata.services.gfac.axis2.util.GFacServiceOperations;
@@ -321,7 +322,13 @@ public class GFacMessageReciever impleme
* @throws XMLStreamException
*/
private OMElement getWSDL(ConfigurationContext context, String serviceName) throws XMLStreamException {
- String WSDL = getRegistry(context).getWSDL(serviceName);
+ String WSDL = null;
+ try {
+ WSDL = getRegistry(context).getWSDL(serviceName);
+ } catch (RegistryException e) {
+ //TODO this scenario occur if the service is not present in the registry.
+ //someone should handle this
+ }
XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(WSDL));
StAXOMBuilder builder = new StAXOMBuilder(reader);
OMElement wsdlElement = builder.getDocumentElement();
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ServiceDescriptionDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ServiceDescriptionDialog.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ServiceDescriptionDialog.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/appwrapper/ServiceDescriptionDialog.java Tue Oct 25 21:52:47 2011
@@ -12,13 +12,15 @@ import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
+import java.util.ArrayList;
+import java.util.List;
import java.util.regex.Pattern;
+import javax.jcr.PathNotFoundException;
import javax.swing.DefaultCellEditor;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JButton;
-import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JLabel;
@@ -29,8 +31,6 @@ import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.ListSelectionModel;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.event.TableModelEvent;
@@ -41,7 +41,6 @@ import javax.swing.table.TableColumn;
import org.apache.airavata.commons.gfac.type.DataType;
import org.apache.airavata.commons.gfac.type.ServiceDescription;
import org.apache.airavata.commons.gfac.type.parameter.ParameterFactory;
-import org.apache.airavata.registry.api.Axis2Registry;
import org.apache.airavata.registry.api.Registry;
import org.apache.airavata.registry.api.exception.RegistryException;
import org.apache.airavata.schemas.gfac.Parameter;
@@ -57,12 +56,9 @@ public class ServiceDescriptionDialog ex
private boolean serviceCreated = false;
private JLabel lblError;
private ServiceDescription serviceDescription;
- private ServiceDescriptionType serviceDescriptionType;
private JButton okButton;
private JButton btnDeleteParameter;
private DefaultTableModel defaultTableModel;
- private JCheckBox chckbxAutoGenerateWsdl;
- private JButton btnWSDL;
private Registry registry;
/**
@@ -150,117 +146,47 @@ public class ServiceDescriptionDialog ex
}
});
btnDeleteParameter.setEnabled(false);
-
- chckbxAutoGenerateWsdl = new JCheckBox("Auto generate WSDL");
- chckbxAutoGenerateWsdl.setEnabled(false);
- chckbxAutoGenerateWsdl.setSelected(true);
-
- btnWSDL = new JButton("Specify WSDL...");
- btnWSDL.setEnabled(false);
- chckbxAutoGenerateWsdl.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent arg0) {
- // btnWSDL.setEnabled(!chckbxAutoGenerateWsdl.isSelected());
- }
- });
GroupLayout gl_contentPanel = new GroupLayout(contentPanel);
- gl_contentPanel
- .setHorizontalGroup(gl_contentPanel
- .createParallelGroup(Alignment.TRAILING)
- .addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addGap(181)
- .addComponent(separator, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
- GroupLayout.PREFERRED_SIZE).addContainerGap())
- .addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addContainerGap(212, Short.MAX_VALUE)
- .addGroup(
- gl_contentPanel
- .createParallelGroup(Alignment.LEADING, false)
- .addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addGroup(
- gl_contentPanel
- .createParallelGroup(
- Alignment.TRAILING)
- .addComponent(
- scrollPane,
- GroupLayout.PREFERRED_SIZE,
- 380,
- GroupLayout.PREFERRED_SIZE)
- .addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addComponent(
- chckbxAutoGenerateWsdl)
- .addPreferredGap(
- ComponentPlacement.RELATED,
- 91,
- Short.MAX_VALUE)
- .addGroup(
- gl_contentPanel
- .createParallelGroup(
- Alignment.LEADING,
- false)
- .addComponent(
- btnWSDL,
- GroupLayout.DEFAULT_SIZE,
- GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE)
- .addComponent(
- btnDeleteParameter,
- GroupLayout.DEFAULT_SIZE,
- GroupLayout.DEFAULT_SIZE,
- Short.MAX_VALUE))))
- .addGap(27))
- .addGroup(
- Alignment.TRAILING,
- gl_contentPanel
- .createSequentialGroup()
- .addGroup(
- gl_contentPanel
- .createParallelGroup(
- Alignment.LEADING)
- .addComponent(
- lblInputParameters)
- .addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addComponent(
- lblServiceName)
- .addGap(18)
- .addComponent(
- txtServiceName,
- GroupLayout.PREFERRED_SIZE,
- 309,
- GroupLayout.PREFERRED_SIZE)))
- .addGap(30)))));
- gl_contentPanel.setVerticalGroup(gl_contentPanel.createParallelGroup(Alignment.LEADING).addGroup(
- gl_contentPanel
- .createSequentialGroup()
- .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(
- gl_contentPanel
- .createParallelGroup(Alignment.BASELINE)
- .addComponent(lblServiceName)
- .addComponent(txtServiceName, GroupLayout.PREFERRED_SIZE,
- GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(ComponentPlacement.UNRELATED)
- .addComponent(separator, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
- GroupLayout.PREFERRED_SIZE)
- .addGap(12)
- .addComponent(lblInputParameters)
- .addPreferredGap(ComponentPlacement.RELATED)
- .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 182, GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(ComponentPlacement.RELATED)
- .addComponent(btnDeleteParameter)
- .addPreferredGap(ComponentPlacement.UNRELATED)
- .addGroup(
- gl_contentPanel.createParallelGroup(Alignment.BASELINE).addComponent(btnWSDL)
- .addComponent(chckbxAutoGenerateWsdl)).addGap(44)));
+ gl_contentPanel.setHorizontalGroup(
+ gl_contentPanel.createParallelGroup(Alignment.TRAILING)
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addContainerGap(212, Short.MAX_VALUE)
+ .addGroup(gl_contentPanel.createParallelGroup(Alignment.LEADING)
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addComponent(separator, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+ .addContainerGap())
+ .addGroup(gl_contentPanel.createParallelGroup(Alignment.TRAILING, false)
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addGroup(gl_contentPanel.createParallelGroup(Alignment.TRAILING)
+ .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 380, GroupLayout.PREFERRED_SIZE)
+ .addComponent(btnDeleteParameter))
+ .addGap(27))
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addGroup(gl_contentPanel.createParallelGroup(Alignment.LEADING)
+ .addComponent(lblInputParameters)
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addComponent(lblServiceName)
+ .addGap(18)
+ .addComponent(txtServiceName, GroupLayout.PREFERRED_SIZE, 309, GroupLayout.PREFERRED_SIZE)))
+ .addGap(30)))))
+ );
+ gl_contentPanel.setVerticalGroup(
+ gl_contentPanel.createParallelGroup(Alignment.LEADING)
+ .addGroup(gl_contentPanel.createSequentialGroup()
+ .addContainerGap(42, Short.MAX_VALUE)
+ .addGroup(gl_contentPanel.createParallelGroup(Alignment.BASELINE)
+ .addComponent(lblServiceName)
+ .addComponent(txtServiceName, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
+ .addPreferredGap(ComponentPlacement.UNRELATED)
+ .addComponent(separator, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+ .addGap(12)
+ .addComponent(lblInputParameters)
+ .addPreferredGap(ComponentPlacement.RELATED)
+ .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 182, GroupLayout.PREFERRED_SIZE)
+ .addPreferredGap(ComponentPlacement.RELATED)
+ .addComponent(btnDeleteParameter)
+ .addGap(78))
+ );
tblParameters = new JTable();
tblParameters.setFillsViewportHeight(true);
@@ -387,10 +313,7 @@ public class ServiceDescriptionDialog ex
}
public ServiceDescriptionType getServiceDescriptionType() {
- if (serviceDescriptionType == null) {
- serviceDescriptionType = new ServiceDescription().getServiceDescriptionType();
- }
- return serviceDescriptionType;
+ return getServiceDescription().getServiceDescriptionType();
}
public String getServiceName() {
@@ -401,7 +324,16 @@ public class ServiceDescriptionDialog ex
getServiceDescription().setId(serviceName);
updateDialogStatus();
}
-
+ private void updateDialogStatus() {
+ String message = null;
+ try {
+ validateDialog();
+ } catch (Exception e) {
+ message = e.getLocalizedMessage();
+ }
+ okButton.setEnabled(message == null);
+ setError(message);
+ }
private void validateDialog() throws Exception {
if (getServiceName() == null || getServiceName().trim().equals("")) {
throw new Exception("Name of the service cannot be empty!!!");
@@ -411,60 +343,83 @@ public class ServiceDescriptionDialog ex
try {
serviceDescription2 = getRegistry().getServiceDescription(Pattern.quote(getServiceName()));
} catch (RegistryException e) {
- throw e;
+ if (e.getCause() instanceof PathNotFoundException){
+ //non-existant name. just want we want
+ }else{
+ throw e;
+ }
}
if (serviceDescription2 != null) {
throw new Exception("Service descriptor with the given name already exists!!!");
}
+ }
- }
-
- private void updateDialogStatus() {
- String message = null;
- try {
- validateDialog();
- } catch (Exception e) {
- message = e.getLocalizedMessage();
- }
- okButton.setEnabled(message == null);
- setError(message);
- }
+ public void saveServiceDescription() {
+ List<Parameter> inputParameters=new ArrayList<Parameter>();
+ List<Parameter> outputParameters=new ArrayList<Parameter>();
+
+ for(int i=0;i<defaultTableModel.getRowCount();i++){
+ Parameter parameter = Parameter.Factory.newInstance();
+ String parameterName = (String)defaultTableModel.getValueAt(i, 1);
+ if (parameterName!=null && !parameterName.trim().equals("")) {
+ DataType parameterDataType = (DataType) defaultTableModel
+ .getValueAt(i, 2);
+ String parameterDescription = (String) defaultTableModel
+ .getValueAt(i, 3);
+ parameter.setName(parameterName);
+ parameter.setDescription(parameterDescription);
+
+ parameter.addNewType().setType(org.apache.airavata.schemas.gfac.DataType.Enum.forString(parameterDataType.toString()));
+ if (getIOStringList()[0].equals(defaultTableModel.getValueAt(i,
+ 0))) {
+ inputParameters.add(parameter);
+ } else {
+ outputParameters.add(parameter);
+ }
+ }
+ }
+ getServiceDescriptionType().setInputParametersArray(inputParameters.toArray(new Parameter[]{}));
+ getServiceDescriptionType().setOutputParametersArray(outputParameters.toArray(new Parameter[]{}));
+
+ getRegistry().saveServiceDescription(getServiceDescription());
+ setServiceCreated(true);
+ }
public void close() {
getDialog().setVisible(false);
}
- public void saveServiceDescription() {
- for (int i = 0; i < defaultTableModel.getRowCount(); i++) {
- Parameter parameter = Parameter.Factory.newInstance();
- String parameterName = (String) defaultTableModel.getValueAt(i, 1);
- if (parameterName != null) {
- DataType parameterDataType = (DataType) defaultTableModel.getValueAt(i, 2);
- String parameterDescription = (String) defaultTableModel.getValueAt(i, 3);
- parameter.setName(parameterName);
- parameter.setDescription(parameterDescription);
-
- parameter.addNewType().setType(
- org.apache.airavata.schemas.gfac.DataType.Enum.forString(parameterDataType.toString()));
- if (getIOStringList()[0].equals(defaultTableModel.getValueAt(i, 0))) {
- getServiceDescriptionType().setInputParametersArray(0, parameter);
- // getServiceDescription().getInputParameters().add(parameter);
- } else {
- getServiceDescriptionType().setOutputParametersArray(0, parameter);
- // getServiceDescription().getOutputParameters().add(parameter);
- }
- }
- }
-
- getRegistry().saveServiceDescription(getServiceDescription());
- if (chckbxAutoGenerateWsdl.isSelected()) {
-
- if (getRegistry() instanceof Axis2Registry) {
- ((Axis2Registry) getRegistry()).saveWSDL(getServiceDescription());
- }
- }
- setServiceCreated(true);
- }
+// public void saveServiceDescription() {
+// for (int i = 0; i < defaultTableModel.getRowCount(); i++) {
+// Parameter parameter = Parameter.Factory.newInstance();
+// String parameterName = (String) defaultTableModel.getValueAt(i, 1);
+// if (parameterName!=null && !parameterName.trim().equals("")) {
+// DataType parameterDataType = (DataType) defaultTableModel.getValueAt(i, 2);
+// String parameterDescription = (String) defaultTableModel.getValueAt(i, 3);
+// parameter.setName(parameterName);
+// parameter.setDescription(parameterDescription);
+//
+// parameter.addNewType().setType(
+// org.apache.airavata.schemas.gfac.DataType.Enum.forString(parameterDataType.toString()));
+// if (getIOStringList()[0].equals(defaultTableModel.getValueAt(i, 0))) {
+// getServiceDescriptionType().setInputParametersArray(0, parameter);
+// // getServiceDescription().getInputParameters().add(parameter);
+// } else {
+// getServiceDescriptionType().setOutputParametersArray(0, parameter);
+// // getServiceDescription().getOutputParameters().add(parameter);
+// }
+// }
+// }
+//
+// getRegistry().saveServiceDescription(getServiceDescription());
+// if (chckbxAutoGenerateWsdl.isSelected()) {
+//
+// if (getRegistry() instanceof Axis2Registry) {
+// ((Axis2Registry) getRegistry()).saveWSDL(getServiceDescription());
+// }
+// }
+// setServiceCreated(true);
+// }
private void setError(String errorMessage) {
if (errorMessage == null || errorMessage.trim().equals("")) {
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/JCRComponentRegistry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/JCRComponentRegistry.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/JCRComponentRegistry.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/component/registry/JCRComponentRegistry.java Tue Oct 25 21:52:47 2011
@@ -76,7 +76,7 @@ public class JCRComponentRegistry extend
*/
@Override
public ComponentTreeNode getComponentTree() {
- ComponentTreeNode tree = new ComponentTreeNode(this);
+ ComponentTreeNode tree = new ComponentTreeNode(this);
try {
List<ServiceDescription> services = this.registry.searchServiceDescription("");
for (ServiceDescription serviceDescription : services) {
@@ -152,8 +152,4 @@ public class JCRComponentRegistry extend
public Registry getRegistry() {
return registry;
}
-
- public String saveWSDL(ServiceDescription service) {
- return registry.saveWSDL(service);
- }
}
\ No newline at end of file
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/provenance/ProvenanceWrite.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/provenance/ProvenanceWrite.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/provenance/ProvenanceWrite.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/provenance/ProvenanceWrite.java Tue Oct 25 21:52:47 2011
@@ -26,6 +26,7 @@ import java.util.Map;
import org.apache.airavata.common.utils.XMLUtil;
import org.apache.airavata.registry.api.Registry;
+import org.apache.airavata.registry.api.workflow.WorkflowIOData;
import org.apache.airavata.xbaya.XBayaException;
import org.apache.airavata.xbaya.concurrent.PredicatedExecutable;
import org.apache.airavata.xbaya.graph.DataPort;
@@ -169,7 +170,7 @@ public final class ProvenanceWrite imple
}
}
- this.registry.saveWorkflowInput(xsul5.XmlConstants.BUILDER.serializeToString(elem), experimentId, node.getID(),this.workflowName);
+ this.registry.saveWorkflowInput(new WorkflowIOData(xsul5.XmlConstants.BUILDER.serializeToString(elem), experimentId, node.getID(),this.workflowName));
// deal with the outputs
XmlElement outputs = elem.newElement("outputs");
@@ -195,7 +196,7 @@ public final class ProvenanceWrite imple
outputParamElement.addChild("null");
}
}
- this.registry.saveWorkflowOutput(xsul5.XmlConstants.BUILDER.serializeToString(outputs), experimentId, node.getID(),this.workflowName);
+ this.registry.saveWorkflowOutput(new WorkflowIOData(xsul5.XmlConstants.BUILDER.serializeToString(outputs), experimentId, node.getID(),this.workflowName));
}
}
}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/InputParameters.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/InputParameters.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/InputParameters.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/InputParameters.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,15 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import org.apache.airavata.commons.gfac.type.Parameter;
+
+public class InputParameters extends ServiceParameters {
+
+ public InputParameters(ServiceParameter[] parameters) {
+ super(parameters);
+ }
+
+ public InputParameters(Parameter[] parameters) {
+ super(parameters);
+ }
+
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/OutputParameters.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/OutputParameters.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/OutputParameters.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/OutputParameters.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,15 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import org.apache.airavata.commons.gfac.type.Parameter;
+
+public class OutputParameters extends ServiceParameters {
+
+ public OutputParameters(ServiceParameter[] parameters) {
+ super(parameters);
+ }
+
+ public OutputParameters(Parameter[] parameters) {
+ super(parameters);
+ }
+
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameter.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameter.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameter.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameter.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,44 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import org.apache.airavata.commons.gfac.type.Parameter;
+import org.apache.airavata.schemas.gfac.ParameterType;
+
+
+public class ServiceParameter {
+ private Parameter parameter;
+ private Object value;
+
+ public ServiceParameter(Parameter parameter) {
+ this(parameter,null);
+ }
+
+ public ServiceParameter(Parameter parameter, Object value) {
+ setParameter(parameter);
+ setValue(value);
+ }
+ public Parameter getParameter() {
+ return parameter;
+ }
+ public void setParameter(Parameter parameter) {
+ this.parameter = parameter;
+ }
+ public Object getValue() {
+ return value;
+ }
+ public void setValue(Object value) {
+ this.value = value;
+ }
+
+ public String getName(){
+ return getParameter().getName();
+ }
+
+ public String getDescription(){
+ return getParameter().getDescription();
+ }
+
+ public ParameterType getType(){
+ return getParameter().getParameterType().getType();
+ }
+}
+
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameters.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameters.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameters.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/ServiceParameters.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,28 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.airavata.commons.gfac.type.Parameter;
+
+public class ServiceParameters {
+ private ServiceParameter[] parameters;
+
+ public ServiceParameters(Parameter[] parameters) {
+ List<ServiceParameter> serviceParaList=new ArrayList<ServiceParameter>();
+ for (Parameter parameter : parameters) {
+ serviceParaList.add(new ServiceParameter(parameter));
+ }
+ setParameters(serviceParaList.toArray(new ServiceParameter[]{}));
+ }
+
+ public ServiceParameters(ServiceParameter[] parameters) {
+ setParameters(parameters);
+ }
+ public ServiceParameter[] getParameters() {
+ return parameters;
+ }
+ public void setParameters(ServiceParameter[] parameters) {
+ this.parameters = parameters;
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplate.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplate.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplate.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplate.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,29 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+
+public class XBayaWorkflowTemplate {
+ private Node workflowNode;
+
+ public XBayaWorkflowTemplate(Node workflowNode) {
+ setWorkflowNode(workflowNode);
+ }
+
+ public Node getWorkflowNode() {
+ return workflowNode;
+ }
+
+ public void setWorkflowNode(Node workflowNode) {
+ this.workflowNode = workflowNode;
+ }
+
+ public String getWorkflowName() {
+ try {
+ return getWorkflowNode().getName();
+ } catch (RepositoryException e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplates.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplates.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplates.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/model/XBayaWorkflowTemplates.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,35 @@
+package org.apache.airavata.xbaya.registrybrowser.model;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import javax.jcr.Node;
+import javax.xml.namespace.QName;
+
+import org.apache.airavata.registry.api.Registry;
+
+public class XBayaWorkflowTemplates {
+ private Registry registry;
+
+ public XBayaWorkflowTemplates(Registry registry) {
+ setRegistry(registry);
+ }
+
+ public Registry getRegistry() {
+ return registry;
+ }
+
+ public void setRegistry(Registry registry) {
+ this.registry = registry;
+ }
+
+ public List<XBayaWorkflowTemplate> getWorkflows() {
+ List<XBayaWorkflowTemplate> workflows = new ArrayList<XBayaWorkflowTemplate>();
+ Map<QName, Node> workflowMap = registry.getWorkflows(registry.getUsername());
+ for (Node xBayaWorkflowNode : workflowMap.values()) {
+ workflows.add(new XBayaWorkflowTemplate(xBayaWorkflowNode));
+ }
+ return workflows;
+ }
+}
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/AiravataTreeNodeFactory.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/AiravataTreeNodeFactory.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/AiravataTreeNodeFactory.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/AiravataTreeNodeFactory.java Tue Oct 25 21:52:47 2011
@@ -11,36 +11,48 @@ import org.apache.airavata.xbaya.registr
import org.apache.airavata.xbaya.registrybrowser.model.GFacURL;
import org.apache.airavata.xbaya.registrybrowser.model.GFacURLs;
import org.apache.airavata.xbaya.registrybrowser.model.HostDescriptions;
+import org.apache.airavata.xbaya.registrybrowser.model.InputParameters;
+import org.apache.airavata.xbaya.registrybrowser.model.OutputParameters;
import org.apache.airavata.xbaya.registrybrowser.model.ServiceDescriptions;
-import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflow;
-import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflows;
+import org.apache.airavata.xbaya.registrybrowser.model.ServiceParameter;
+import org.apache.airavata.xbaya.registrybrowser.model.ServiceParameters;
+import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflowTemplate;
+import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflowTemplates;
public class AiravataTreeNodeFactory {
- public static TreeNode getTreeNode(Object o, TreeNode parent) {
- if (o instanceof Registry) {
- return new RegistryNode((Registry) o, parent);
- } else if (o instanceof GFacURLs) {
- return new GFacURLsNode((GFacURLs) o, parent);
- } else if (o instanceof GFacURL) {
- return new GFacURLNode((GFacURL) o, parent);
- } else if (o instanceof HostDescriptions) {
- return new HostDescriptionsNode((HostDescriptions) o, parent);
- } else if (o instanceof HostDescription) {
- return new HostDescriptionNode((HostDescription) o, parent);
- } else if (o instanceof ServiceDescriptions) {
- return new ServiceDescriptionsNode((ServiceDescriptions) o, parent);
- } else if (o instanceof ServiceDescription) {
- return new ServiceDescriptionNode((ServiceDescription) o, parent);
- } else if (o instanceof ApplicationDeploymentDescriptions) {
- return new ApplicationDeploymentDescriptionsNode((ApplicationDeploymentDescriptions) o, parent);
- } else if (o instanceof ApplicationDeploymentDescriptionWrap) {
- return new ApplicationDeploymentDescriptionNode((ApplicationDeploymentDescriptionWrap) o, parent);
- } else if (o instanceof XBayaWorkflows) {
- return new XBayaWorkflowsNode((XBayaWorkflows) o, parent);
- } else if (o instanceof XBayaWorkflow) {
- return new XBayaWorkflowNode((XBayaWorkflow) o, parent);
- } else {
- return new DefaultMutableTreeNode(o);
- }
- }
+ public static TreeNode getTreeNode(Object o,TreeNode parent){
+ if (o instanceof Registry){
+ return new RegistryNode((Registry)o,parent);
+ }else if (o instanceof GFacURLs){
+ return new GFacURLsNode((GFacURLs)o,parent);
+ }else if (o instanceof GFacURL){
+ return new GFacURLNode((GFacURL)o,parent);
+ }else if (o instanceof HostDescriptions){
+ return new HostDescriptionsNode((HostDescriptions)o,parent);
+ }else if (o instanceof HostDescription){
+ return new HostDescriptionNode((HostDescription)o,parent);
+ }else if (o instanceof ServiceDescriptions){
+ return new ServiceDescriptionsNode((ServiceDescriptions)o,parent);
+ }else if (o instanceof ServiceDescription){
+ return new ServiceDescriptionNode((ServiceDescription)o,parent);
+ }else if (o instanceof ApplicationDeploymentDescriptions){
+ return new ApplicationDeploymentDescriptionsNode((ApplicationDeploymentDescriptions)o,parent);
+ }else if (o instanceof ApplicationDeploymentDescriptionWrap){
+ return new ApplicationDeploymentDescriptionNode((ApplicationDeploymentDescriptionWrap)o,parent);
+ }else if (o instanceof XBayaWorkflowTemplates){
+ return new XBayaWorkflowTemplatesNode((XBayaWorkflowTemplates)o,parent);
+ }else if (o instanceof XBayaWorkflowTemplate){
+ return new XBayaWorkflowTemplateNode((XBayaWorkflowTemplate)o,parent);
+ }else if (o instanceof ServiceParameter){
+ return new ParameterNode((ServiceParameter)o,parent);
+ }else if (o instanceof InputParameters){
+ return new InputParametersNode((InputParameters)o,parent);
+ }else if (o instanceof OutputParameters){
+ return new OutputParametersNode((OutputParameters)o,parent);
+ }else if (o instanceof ServiceParameters){
+ return new ParametersNode((ServiceParameters)o,parent);
+ }else{
+ return new DefaultMutableTreeNode(o);
+ }
+ }
}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/InputParametersNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/InputParametersNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/InputParametersNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/InputParametersNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,26 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import javax.swing.Icon;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.xbaya.registrybrowser.model.InputParameters;
+
+public class InputParametersNode extends ParametersNode {
+
+ public InputParametersNode(InputParameters parameters, TreeNode parent) {
+ super(parameters, parent);
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return "Input";
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return SwingUtil.createImageIcon("input_para.png");
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/OutputParametersNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/OutputParametersNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/OutputParametersNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/OutputParametersNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,26 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import javax.swing.Icon;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.xbaya.registrybrowser.model.OutputParameters;
+
+public class OutputParametersNode extends ParametersNode {
+
+ public OutputParametersNode(OutputParameters parameters, TreeNode parent) {
+ super(parameters, parent);
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return "Output";
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return SwingUtil.createImageIcon("output_para.png");
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,75 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.Icon;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.schemas.gfac.Parameter;
+import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.registrybrowser.model.ServiceParameter;
+
+public class ParameterNode extends AbstractAiravataTreeNode {
+ private ServiceParameter parameter;
+
+ public ParameterNode(ServiceParameter parameter, TreeNode parent) {
+ super(parent);
+ setParameter(parameter);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ return emptyList();
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ if (getParameter().getValue()==null){
+ return getParameter().getName()+":"+getParameter().getValue().toString();
+ }else{
+ return getParameter().getName()+":<"+getParameter().getType().toString()+">";
+ }
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return SwingUtil.createImageIcon("parameter.png");
+ }
+
+ @Override
+ public List<String> getSupportedActions() {
+ return Arrays.asList();
+ }
+
+ public boolean triggerAction(JTree tree,String action) throws Exception{
+ return super.triggerAction(tree, action);
+ }
+
+ @Override
+ public String getActionCaption(AbstractBrowserActionItem action) {
+ return action.getDefaultCaption();
+ }
+
+ @Override
+ public Icon getActionIcon(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ @Override
+ public String getActionDescription(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ public ServiceParameter getParameter() {
+ return parameter;
+ }
+
+ public void setParameter(ServiceParameter parameter) {
+ this.parameter = parameter;
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterValueNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterValueNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterValueNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParameterValueNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,70 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.Icon;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.schemas.gfac.Parameter;
+import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
+
+public class ParameterValueNode extends AbstractAiravataTreeNode {
+ private Parameter parameter;
+
+ public ParameterValueNode(Parameter parameter, TreeNode parent) {
+ super(parent);
+ setParameter(parameter);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ return emptyList();
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return getParameter().getName()+":"+getParameter().getType().toString();
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return SwingUtil.createImageIcon("parameter.png");
+ }
+
+ @Override
+ public List<String> getSupportedActions() {
+ return Arrays.asList();
+ }
+
+ public boolean triggerAction(JTree tree,String action) throws Exception{
+ return super.triggerAction(tree, action);
+ }
+
+ @Override
+ public String getActionCaption(AbstractBrowserActionItem action) {
+ return action.getDefaultCaption();
+ }
+
+ @Override
+ public Icon getActionIcon(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ @Override
+ public String getActionDescription(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ public Parameter getParameter() {
+ return parameter;
+ }
+
+ public void setParameter(Parameter parameter) {
+ this.parameter = parameter;
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParametersNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParametersNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParametersNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ParametersNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,70 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.Icon;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.registrybrowser.model.ServiceParameters;
+
+public class ParametersNode extends AbstractAiravataTreeNode {
+ private ServiceParameters parametersList;
+ public ParametersNode(ServiceParameters parameters,TreeNode parent) {
+ super(parent);
+ setParametersList(parameters);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ return getTreeNodeList(getParametersList().getParameters(), this);
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return "Parameters";
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf,
+ boolean hasFocus) {
+ return SwingUtil.createImageIcon("parameter.png");
+ }
+
+ @Override
+ public List<String> getSupportedActions() {
+ return Arrays.asList();
+ }
+
+ public boolean triggerAction(JTree tree,String action) throws Exception{
+ return super.triggerAction(tree, action);
+ }
+
+ @Override
+ public String getActionCaption(AbstractBrowserActionItem action) {
+ return action.getDefaultCaption();
+ }
+
+ @Override
+ public Icon getActionIcon(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ @Override
+ public String getActionDescription(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ public ServiceParameters getParametersList() {
+ return parametersList;
+ }
+
+ public void setParametersList(ServiceParameters parametersList) {
+ this.parametersList = parametersList;
+ }
+
+}
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/RegistryNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/RegistryNode.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/RegistryNode.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/RegistryNode.java Tue Oct 25 21:52:47 2011
@@ -15,7 +15,7 @@ import org.apache.airavata.xbaya.registr
import org.apache.airavata.xbaya.registrybrowser.model.GFacURLs;
import org.apache.airavata.xbaya.registrybrowser.model.HostDescriptions;
import org.apache.airavata.xbaya.registrybrowser.model.ServiceDescriptions;
-import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflows;
+import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflowTemplates;
public class RegistryNode extends AbstractAiravataTreeNode {
private Registry registry;
@@ -36,7 +36,7 @@ public class RegistryNode extends Abstra
ApplicationDeploymentDescriptions applicationDeploymentDescriptions = new ApplicationDeploymentDescriptions(
getRegistry());
children.add(applicationDeploymentDescriptions);
- XBayaWorkflows xBayaWorkflows = new XBayaWorkflows(getRegistry());
+ XBayaWorkflowTemplates xBayaWorkflows = new XBayaWorkflowTemplates(getRegistry());
children.add(xBayaWorkflows);
return getTreeNodeList(children.toArray(), this);
}
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ServiceDescriptionNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ServiceDescriptionNode.java?rev=1188938&r1=1188937&r2=1188938&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ServiceDescriptionNode.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/ServiceDescriptionNode.java Tue Oct 25 21:52:47 2011
@@ -1,9 +1,9 @@
package org.apache.airavata.xbaya.registrybrowser.nodes;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import javax.jcr.PathNotFoundException;
import javax.swing.Icon;
import javax.swing.JOptionPane;
import javax.swing.JTree;
@@ -12,24 +12,32 @@ import javax.swing.tree.TreeNode;
import org.apache.airavata.common.utils.SwingUtil;
import org.apache.airavata.commons.gfac.type.ServiceDescription;
import org.apache.airavata.registry.api.exception.RegistryException;
-import org.apache.airavata.registry.api.exception.ServiceDescriptionRetrieveException;
import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
import org.apache.airavata.xbaya.registrybrowser.menu.DeleteAction;
import org.apache.airavata.xbaya.registrybrowser.menu.EditAction;
+import org.apache.airavata.xbaya.registrybrowser.model.InputParameters;
+import org.apache.airavata.xbaya.registrybrowser.model.OutputParameters;
+import org.apache.airavata.xbaya.registrybrowser.model.ServiceParameters;
public class ServiceDescriptionNode extends AbstractAiravataTreeNode {
- private ServiceDescription serviceDescription;
+ private ServiceDescription serviceDescription;
- public ServiceDescriptionNode(ServiceDescription serviceDescription, TreeNode parent) {
- super(parent);
- setServiceDescription(serviceDescription);
- }
-
- @Override
- protected List<TreeNode> getChildren() {
- // TODO perhaps we should show the parameters as children
- return emptyList();
- }
+ public ServiceDescriptionNode(ServiceDescription serviceDescription, TreeNode parent) {
+ super(parent);
+ setServiceDescription(serviceDescription);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ List<ServiceParameters> parameterTypeList=new ArrayList<ServiceParameters>();
+ if (getServiceDescription().getInputParameters().length>0){
+ parameterTypeList.add(new InputParameters(getServiceDescription().getInputParameters()));
+ }
+ if (getServiceDescription().getOutputParameters().length>0){
+ parameterTypeList.add(new OutputParameters(getServiceDescription().getOutputParameters()));
+ }
+ return getTreeNodeList(parameterTypeList.toArray(), this);
+ }
@Override
public String getCaption(boolean selected, boolean expanded, boolean leaf, boolean hasFocus) {
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplateNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplateNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplateNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplateNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,96 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.jcr.PathNotFoundException;
+import javax.swing.Icon;
+import javax.swing.JOptionPane;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+import javax.xml.namespace.QName;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.registry.api.exception.ServiceDescriptionRetrieveException;
+import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.registrybrowser.menu.DeleteAction;
+import org.apache.airavata.xbaya.registrybrowser.menu.EditAction;
+import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflowTemplate;
+
+public class XBayaWorkflowTemplateNode extends AbstractAiravataTreeNode {
+ private XBayaWorkflowTemplate xbayaWorkflow;
+
+ public XBayaWorkflowTemplateNode(XBayaWorkflowTemplate xbayaWorkflow, TreeNode parent) {
+ super(parent);
+ setXbayaWorkflow(xbayaWorkflow);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ return emptyList();
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf, boolean hasFocus) {
+ return getXbayaWorkflow().getWorkflowName();
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf, boolean hasFocus) {
+ return SwingUtil.createImageIcon("workflow.png");
+ }
+
+ public XBayaWorkflowTemplate getXbayaWorkflow() {
+ return xbayaWorkflow;
+ }
+
+ public void setXbayaWorkflow(XBayaWorkflowTemplate xbayaWorkflow) {
+ this.xbayaWorkflow = xbayaWorkflow;
+ }
+
+ @Override
+ public List<String> getSupportedActions() {
+ return Arrays.asList(DeleteAction.ID);
+ }
+
+ public boolean triggerAction(JTree tree, String action) throws Exception {
+ if (action.equals(DeleteAction.ID)) {
+ deleteHostDescription(tree);
+ return true;
+ } else if (action.equals(EditAction.ID)) {
+ JOptionPane.showMessageDialog(null, "TODO");
+ // TODO
+ return true;
+ }
+ return super.triggerAction(tree, action);
+ }
+
+ private void deleteHostDescription(JTree tree) throws PathNotFoundException, ServiceDescriptionRetrieveException {
+ if (askQuestion("XBaya Workflow", "Are you sure that you want to remove the workflow \""
+ + getXbayaWorkflow().getWorkflowName() + "\"?")) {
+ getRegistry().deleteWorkflow(new QName(getXbayaWorkflow().getWorkflowName()), getRegistry().getUsername());
+ ((AbstractAiravataTreeNode) getParent()).refresh();
+ reloadTreeNode(tree, getParent());
+ }
+ }
+
+ @Override
+ public String getActionCaption(AbstractBrowserActionItem action) {
+ if (action.getID().equals(DeleteAction.ID)) {
+ return "Remove";
+ } else if (action.getID().equals(EditAction.ID)) {
+ return "Edit";
+ }
+ return action.getDefaultCaption();
+ }
+
+ @Override
+ public Icon getActionIcon(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ @Override
+ public String getActionDescription(AbstractBrowserActionItem action) {
+ return null;
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplatesNode.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplatesNode.java?rev=1188938&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplatesNode.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowTemplatesNode.java Tue Oct 25 21:52:47 2011
@@ -0,0 +1,79 @@
+package org.apache.airavata.xbaya.registrybrowser.nodes;
+
+import java.util.Arrays;
+import java.util.List;
+
+import javax.swing.Icon;
+import javax.swing.JOptionPane;
+import javax.swing.JTree;
+import javax.swing.tree.TreeNode;
+
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.xbaya.registrybrowser.menu.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.registrybrowser.menu.AddAction;
+import org.apache.airavata.xbaya.registrybrowser.menu.RefreshAction;
+import org.apache.airavata.xbaya.registrybrowser.model.XBayaWorkflowTemplates;
+
+public class XBayaWorkflowTemplatesNode extends AbstractAiravataTreeNode {
+ private XBayaWorkflowTemplates xbayaWorkflows;
+
+ public XBayaWorkflowTemplatesNode(XBayaWorkflowTemplates xbayaWorkflows, TreeNode parent) {
+ super(parent);
+ setXbayaWorkflows(xbayaWorkflows);
+ }
+
+ @Override
+ protected List<TreeNode> getChildren() {
+ return getTreeNodeList(getXbayaWorkflows().getWorkflows().toArray(), this);
+ }
+
+ @Override
+ public String getCaption(boolean selected, boolean expanded, boolean leaf, boolean hasFocus) {
+ return "Workflow templates";
+ }
+
+ @Override
+ public Icon getIcon(boolean selected, boolean expanded, boolean leaf, boolean hasFocus) {
+ return SwingUtil.createImageIcon("workflows.png");
+ }
+
+ public XBayaWorkflowTemplates getXbayaWorkflows() {
+ return xbayaWorkflows;
+ }
+
+ public void setXbayaWorkflows(XBayaWorkflowTemplates xbayaWorkflows) {
+ this.xbayaWorkflows = xbayaWorkflows;
+ }
+
+ @Override
+ public List<String> getSupportedActions() {
+ return Arrays.asList(AddAction.ID, RefreshAction.ID);
+ }
+
+ public boolean triggerAction(JTree tree, String action) throws Exception {
+ if (action.equals(AddAction.ID)) {
+ JOptionPane.showMessageDialog(null, "TODO");
+ // TODO
+ return true;
+ }
+ return super.triggerAction(tree, action);
+ }
+
+ @Override
+ public String getActionCaption(AbstractBrowserActionItem action) {
+ if (action.getID().equals(AddAction.ID)) {
+ return "New workflow...";
+ }
+ return action.getDefaultCaption();
+ }
+
+ @Override
+ public Icon getActionIcon(AbstractBrowserActionItem action) {
+ return null;
+ }
+
+ @Override
+ public String getActionDescription(AbstractBrowserActionItem action) {
+ return null;
+ }
+}
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/input_para.png
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/input_para.png?rev=1188938&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/input_para.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/output_para.png
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/output_para.png?rev=1188938&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/output_para.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/parameter.png
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/parameter.png?rev=1188938&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/parameter.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Propchange: incubator/airavata/trunk/samples/simple-math-service/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Oct 25 21:52:47 2011
@@ -1 +1,4 @@
target
+.classpath
+.project
+.settings