airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From samin...@apache.org
Subject svn commit: r1355038 - in /incubator/airavata/trunk/modules: commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/ xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/ xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/di...
Date Thu, 28 Jun 2012 15:05:36 GMT
Author: samindaw
Date: Thu Jun 28 15:05:31 2012
New Revision: 1355038

URL: http://svn.apache.org/viewvc?rev=1355038&view=rev
Log:
updating logo + https://issues.apache.org/jira/browse/AIRAVATA-488

Added:
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorListDialog.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/airavata-title-text.png   (with props)
    incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/menu/open_dir.png   (with props)
Modified:
    incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/AiravataJCRRegistry.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/AboutWindow.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ApplicationDescriptionDialog.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorEditorDialog.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ServiceDescriptionDialog.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/MenuIcons.java
    incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/XBayaMenuItem.java

Modified: incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/AiravataJCRRegistry.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/AiravataJCRRegistry.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/AiravataJCRRegistry.java (original)
+++ incubator/airavata/trunk/modules/commons/registry-api/src/main/java/org/apache/airavata/registry/api/impl/AiravataJCRRegistry.java Thu Jun 28 15:05:31 2012
@@ -468,10 +468,19 @@ public class AiravataJCRRegistry extends
             String applicationName) throws RegistryException {
         Session session = null;
         List<ApplicationDeploymentDescription> result = new ArrayList<ApplicationDeploymentDescription>();
+        if (serviceName==null || hostName==null){
+        	return result;
+        }
         try {
             session = getSession();
             Node deploymentNode = getDeploymentNode(session);
+            if (!deploymentNode.hasNode(serviceName)){
+            	return result;
+            }
             Node serviceNode = deploymentNode.getNode(serviceName);
+            if (!serviceNode.hasNode(hostName)){
+            	return result;
+            }
             Node hostNode = serviceNode.getNode(hostName);
             List<Node> childNodes = getChildNodes(hostNode);
             for (Node app:childNodes) {
@@ -523,10 +532,19 @@ public class AiravataJCRRegistry extends
             throws RegistryException {
         Session session = null;
         List<ApplicationDeploymentDescription> result = new ArrayList<ApplicationDeploymentDescription>();
+        if (serviceName==null || hostName==null){
+        	return result;
+        }
         try {
             session = getSession();
             Node deploymentNode = getDeploymentNode(session);
+            if (!deploymentNode.hasNode(serviceName)){
+            	return result;
+            }
             Node serviceNode = deploymentNode.getNode(serviceName);
+            if (!serviceNode.hasNode(hostName)){
+            	return result;
+            }
             Node hostNode = serviceNode.getNode(hostName);
             List<Node> childNodes = getChildNodes(hostNode);
             for (Node app:childNodes) {

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/AboutWindow.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/AboutWindow.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/AboutWindow.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/AboutWindow.java Thu Jun 28 15:05:31 2012
@@ -95,7 +95,7 @@ public class AboutWindow {
         				"</style>";
         buttonPanel.setBorder(BorderFactory.createEtchedBorder());
         String imgLogoTag="";//"<img src=\""+SwingUtil.getImageURL("airavata-2.png").toString()+"\" class=\".centeredImage\" /><br>";
-        String imgHeadingTag="<div style=\"width:100%;margin-right:10px;margin-left:10px;margin-top:5px;\" ><img src=\""+SwingUtil.getImageURL("airavata-name.png").toString()+"\" class=\".centeredImage\" /></div><br>";
+        String imgHeadingTag="<div style=\"width:100%;margin-right:10px;margin-left:10px;margin-top:5px;\" ><img src=\""+SwingUtil.getImageURL("airavata-title-text.png").toString()+"\" class=\".centeredImage\" /></div><br>";
         String projectNameText = "";//"<h1>" + XBayaConstants.PROJECT_NAME + "</h1>";
 		String message = "<html>"+ styles +"<body align=\"center\">" + "<div style=\"background-color:white;width:100%;margin-bottom:0px;\">"+projectNameText + imgHeadingTag+ imgLogoTag +"</div><br><h2>" +XBayaConstants.APPLICATION_NAME + "</h2>" + "Version: "
 				+ XBayaVersion.VERSION + "<br>" + "<a href='" + XBayaConstants.WEB_URL.toString() + "'>" + XBayaConstants.WEB_URL.toString() + "</a>"

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ApplicationDescriptionDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ApplicationDescriptionDialog.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ApplicationDescriptionDialog.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ApplicationDescriptionDialog.java Thu Jun 28 15:05:31 2012
@@ -23,6 +23,8 @@ package org.apache.airavata.xbaya.ui.dia
 
 import java.awt.Color;
 import java.awt.Font;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.FocusAdapter;
@@ -42,7 +44,10 @@ import javax.swing.JDialog;
 import javax.swing.JFileChooser;
 import javax.swing.JLabel;
 import javax.swing.JOptionPane;
+import javax.swing.JPanel;
 import javax.swing.JSeparator;
+import javax.swing.JTextField;
+import javax.swing.ProgressMonitor;
 import javax.swing.SwingConstants;
 
 import org.apache.airavata.common.registry.api.exception.RegistryException;
@@ -55,6 +60,7 @@ import org.apache.airavata.schemas.gfac.
 import org.apache.airavata.schemas.gfac.GlobusHostType;
 import org.apache.airavata.schemas.gfac.GramApplicationDeploymentType;
 import org.apache.airavata.xbaya.XBayaEngine;
+import org.apache.airavata.xbaya.ui.menues.MenuIcons;
 import org.apache.airavata.xbaya.ui.widgets.GridPanel;
 import org.apache.airavata.xbaya.ui.widgets.XBayaLabel;
 import org.apache.airavata.xbaya.ui.widgets.XBayaLinkButton;
@@ -78,7 +84,6 @@ public class ApplicationDescriptionDialo
 
     private String serviceName;
     private String hostName;
-    private JComboBox cmbServiceName;
     private JComboBox cmbHostName;
 
     private XBayaEngine engine;
@@ -87,6 +92,7 @@ public class ApplicationDescriptionDialo
 	private ApplicationDeploymentDescription originalDeploymentDescription;
 	private String originalHost; 
 	private String originalService;
+    private ServiceDescription serviceDescription=null;
 
     /**
      * Launch the application.
@@ -111,7 +117,8 @@ public class ApplicationDescriptionDialo
     	setNewDescritor(newDescritor);
     	setOriginalDeploymentDescription(originalDeploymentDescription);
     	setOriginalHost(originalHost);
-    	setOriginalService(originalService);
+    	setOriginalService(originalService);
+        setRegistry(engine.getConfiguration().getJcrComponentRegistry().getRegistry());
         addWindowListener(new WindowAdapter() {
             @Override
             public void windowOpened(WindowEvent arg0) {
@@ -139,6 +146,7 @@ public class ApplicationDescriptionDialo
 							defaultName = baseName + (++i);
 						}
 					} catch (Exception e) {
+						e.printStackTrace();
 					}
 					txtAppName.setText(defaultName);
 					setApplicationName(txtAppName.getText());
@@ -146,8 +154,14 @@ public class ApplicationDescriptionDialo
             }
         });
         this.engine=engine;
-        setRegistry(engine.getConfiguration().getJcrComponentRegistry().getRegistry());
-        iniGUI();
+        iniGUI();
+        if (originalService!=null){
+    		try {
+				setServiceDescription(getRegistry().getServiceDescription(originalService));
+			} catch (RegistryException e) {
+				e.printStackTrace();
+			}
+    	}
     }
 
     public void open() {
@@ -158,7 +172,7 @@ public class ApplicationDescriptionDialo
     protected ApplicationDescriptionDialog getDialog() {
         return this;
     }
-
+    
     private void iniGUI() {
         if (isNewDescritor()) {
 			setTitle("New Deployment Description");
@@ -218,7 +232,7 @@ public class ApplicationDescriptionDialo
         {
 //            JPanel panel = new JPanel();
 //            getContentPane().add(panel, BorderLayout.CENTER);
-        	GridPanel execPath=new GridPanel();
+        	JPanel execPath=new JPanel();
             txtExecPath = new XBayaTextField();
             txtExecPath.getTextField().addKeyListener(new KeyAdapter() {
                 @Override
@@ -234,7 +248,7 @@ public class ApplicationDescriptionDialo
             	}
 			});
             txtExecPath.setColumns(10);
-            JButton execBrowse=new JButton("Browse...");
+            JButton execBrowse=new JButton(MenuIcons.OPEN_ICON);
             execBrowse.addActionListener(new ActionListener(){
 				@Override
 				public void actionPerformed(ActionEvent arg0) {
@@ -246,9 +260,29 @@ public class ApplicationDescriptionDialo
 					}
 				}
             });
-            execPath.add(txtExecPath);
+            execPath.add(txtExecPath.getSwingComponent());
             execPath.add(execBrowse);
-            execPath.layout(1, 2, 0, 0);
+            JButton btnIOParameters = new JButton("Input/Output Parameters...");
+            btnIOParameters.addActionListener(new ActionListener(){
+				@Override
+				public void actionPerformed(ActionEvent event) {
+					try {
+                        ServiceDescriptionDialog serviceDescriptionDialog = new ServiceDescriptionDialog(getRegistry(),getServiceDescription()==null,getServiceDescription(),false,getApplicationName());
+                        serviceDescriptionDialog.open();
+                        if (serviceDescriptionDialog.isServiceCreated()) {
+                        	setServiceDescription(serviceDescriptionDialog.getServiceDescription());
+                        }
+                    } catch (Exception e1) {
+                        e1.printStackTrace();
+                        JOptionPane.showMessageDialog(null, e1.getLocalizedMessage());
+                    }
+				}
+            });
+            execPath.add(new JLabel("   "));
+            execPath.add(btnIOParameters);
+            
+            setupLayoutForBrowse(execPath,txtExecPath.getSwingComponent());
+
             txtAppName = new XBayaTextField();
             txtAppName.getTextField().addKeyListener(new KeyAdapter() {
                 @Override
@@ -259,7 +293,7 @@ public class ApplicationDescriptionDialo
             txtAppName.setColumns(10);
             XBayaLabel lblApplicationName = new XBayaLabel("Application name",txtAppName);
             XBayaLabel lblExecutablePath = new XBayaLabel("Executable path",txtExecPath);
-        	GridPanel tmpDirPath=new GridPanel();
+        	JPanel tmpDirPath=new JPanel();
 
             txtTempDir = new XBayaTextField();
             txtTempDir.getTextField().addKeyListener(new KeyAdapter() {
@@ -269,7 +303,7 @@ public class ApplicationDescriptionDialo
                 }
             });
             txtTempDir.setColumns(10);
-            JButton tmpDirBrowse=new JButton("Browse...");
+            JButton tmpDirBrowse=new JButton(MenuIcons.OPEN_DIR_ICON);
             tmpDirBrowse.addActionListener(new ActionListener(){
 				@Override
 				public void actionPerformed(ActionEvent arg0) {
@@ -282,9 +316,13 @@ public class ApplicationDescriptionDialo
 					}
 				}
             });
-            tmpDirPath.add(txtTempDir);
+            JTextField component = txtTempDir.getSwingComponent();
+			tmpDirPath.add(component);
             tmpDirPath.add(tmpDirBrowse);
-            tmpDirPath.layout(1, 2, 0, 0);
+//            tmpDirPath.layout(1, 2, 0, 0);
+            
+            setupLayoutForBrowse(tmpDirPath, component);
+
 
             XBayaLabel lblTemporaryDirectory = new XBayaLabel("Temporary directory",txtTempDir);
 
@@ -302,33 +340,12 @@ public class ApplicationDescriptionDialo
                 }
             });
 
-            XBayaLinkButton lnkNewService = new XBayaLinkButton("New button");
-            lnkNewService.addActionListener(new ActionListener() {
-                public void actionPerformed(ActionEvent arg0) {
-                    try {
-                        ServiceDescriptionDialog serviceDescriptionDialog = new ServiceDescriptionDialog(getRegistry());
-                        serviceDescriptionDialog.open();
-                        if (serviceDescriptionDialog.isServiceCreated()) {
-                            loadServiceDescriptions();
-                            cmbServiceName.setSelectedItem(serviceDescriptionDialog.getServiceName());
-                        }
-                    } catch (Exception e1) {
-                        e1.printStackTrace();
-                        JOptionPane.showMessageDialog(null, e1.getLocalizedMessage());
-                    }
-                }
-            });
-            lnkNewService.setText("Create new service...");
-            lnkNewService.setHorizontalAlignment(SwingConstants.TRAILING);
-
-            cmbServiceName = new JComboBox();
-            cmbServiceName.addActionListener(this);
 //            cmbServiceName.setRenderer(new DefaultListCellRenderer());
             cmbHostName = new JComboBox();
             cmbHostName.addActionListener(this);
 
-            XBayaLabel lblHostName = new XBayaLabel("Host",cmbHostName);
-
+            XBayaLabel lblHostName = new XBayaLabel("Bind the application to Host",cmbHostName);
+            lblHostName.getSwingComponent().setFont(new Font("Tahoma", Font.ITALIC, 11));
             XBayaLinkButton lnkNewHost = new XBayaLinkButton("New button");
             lnkNewHost.addActionListener(new ActionListener() {
                 public void actionPerformed(ActionEvent e) {
@@ -336,9 +353,17 @@ public class ApplicationDescriptionDialo
                         HostDescriptionDialog hostDescriptionDialog = new HostDescriptionDialog(engine);
                         hostDescriptionDialog.open();
 
-                        if (hostDescriptionDialog.isHostCreated()) {
-                            loadHostDescriptions();
-                            cmbHostName.setSelectedItem(hostDescriptionDialog.getHostLocation());
+                        if (hostDescriptionDialog.isHostCreated()) {
+                        	ProgressMonitor progressMonitor = new ProgressMonitor(getContentPane(), "Host Descriptions", "Refreshing host list..", 0, 200);
+                        	int progress=1;
+                        	progressMonitor.setProgress(progress++);
+                        	while(cmbHostName.getSelectedIndex()==-1 || !cmbHostName.getSelectedItem().toString().equals(hostDescriptionDialog.getHostLocation())){
+	                            loadHostDescriptions();
+	                            cmbHostName.setSelectedItem(hostDescriptionDialog.getHostLocation());
+	                            progressMonitor.setProgress(progress++);
+	                            Thread.sleep(50);
+                        	}
+                        	progressMonitor.setProgress(200);
                         }
                     } catch (Exception e1) {
                         e1.printStackTrace();
@@ -349,10 +374,8 @@ public class ApplicationDescriptionDialo
             lnkNewHost.setText("Create new host...");
             lnkNewHost.setHorizontalAlignment(SwingConstants.TRAILING);
 
-            XBayaLabel lblService = new XBayaLabel("Service",cmbServiceName);
-
-            JLabel lblBindThisDeployment = new JLabel("Bind this deployment description to:");
-            lblBindThisDeployment.setFont(new Font("Tahoma", Font.BOLD, 11));
+//            JLabel lblBindThisDeployment = new JLabel("Bind this deployment description to:");
+//            lblBindThisDeployment.setFont(new Font("Tahoma", Font.BOLD, 11));
 
             btnHostAdvanceOptions=new JButton("Gram Configuration...");
             btnHostAdvanceOptions.addActionListener(new ActionListener() {
@@ -367,7 +390,7 @@ public class ApplicationDescriptionDialo
                     }
 				}
 			});
-            
+            btnHostAdvanceOptions.setVisible(false);
             GridPanel hostPanel=new GridPanel();
             hostPanel.add(cmbHostName);
             hostPanel.add(btnHostAdvanceOptions);
@@ -383,21 +406,19 @@ public class ApplicationDescriptionDialo
             
             infoPanel1.add(lblExecutablePath);
             infoPanel1.add(execPath);
+//            infoPanel1.add(new JLabel());
+//            infoPanel1.add(btnIOParameters);
             infoPanel1.add(lblTemporaryDirectory);
             infoPanel1.add(tmpDirPath);
 //            infoPanel1.add(new JLabel());
 //            infoPanel1.add(btnAdvance);
             
-            GridPanel infoPanel2 = new GridPanel();
+//            GridPanel infoPanel2 = new GridPanel();
 //            infoPanel2.add(new JSeparator());
-            infoPanel2.add(lblBindThisDeployment);
+//            infoPanel2.add(lblBindThisDeployment);
             
             GridPanel infoPanel3 = new GridPanel();
 
-            infoPanel3.add(lblService);
-            infoPanel3.add(cmbServiceName);
-            infoPanel3.add(new JLabel());
-            infoPanel3.add(lnkNewService);
             infoPanel3.add(lblHostName);
             infoPanel3.add(hostPanel);
             infoPanel3.add(new JLabel());
@@ -411,20 +432,20 @@ public class ApplicationDescriptionDialo
             SwingUtil.layoutToGrid(infoPanel0.getSwingComponent(), 1, 2, SwingUtil.WEIGHT_NONE, 1);
 
             SwingUtil.layoutToGrid(infoPanel1.getSwingComponent(), 2, 2, SwingUtil.WEIGHT_NONE, 1);
-            SwingUtil.layoutToGrid(infoPanel2.getSwingComponent(), 1, 1, SwingUtil.WEIGHT_NONE, 0);
-            SwingUtil.layoutToGrid(infoPanel3.getSwingComponent(), 4, 2, SwingUtil.WEIGHT_NONE, 1);
+//            SwingUtil.layoutToGrid(infoPanel2.getSwingComponent(), 1, 1, SwingUtil.WEIGHT_NONE, 0);
+            SwingUtil.layoutToGrid(infoPanel3.getSwingComponent(), 2, 2, SwingUtil.WEIGHT_NONE, 1);
 
             GridPanel infoPanel = new GridPanel();
             infoPanel.add(infoPanel0);
             infoPanel.add(new JSeparator());
             infoPanel.add(infoPanel1);
             infoPanel.add(new JSeparator());
-            infoPanel.add(infoPanel2);
+//            infoPanel.add(infoPanel2);
             infoPanel.add(infoPanel3);
             infoPanel.add(new JSeparator());
             infoPanel.add(infoPanel4);
             
-            SwingUtil.layoutToGrid(infoPanel.getSwingComponent(), 8, 1, SwingUtil.WEIGHT_NONE, 0);
+            SwingUtil.layoutToGrid(infoPanel.getSwingComponent(), 7, 1, SwingUtil.WEIGHT_NONE, 0);
             SwingUtil.layoutToGrid(buttonPane.getSwingComponent(), 1, buttonPane.getContentPanel().getComponentCount(),SwingUtil.WEIGHT_NONE,0);
             getContentPane().add(infoPanel.getSwingComponent());
             getContentPane().add(buttonPane.getSwingComponent());
@@ -433,7 +454,7 @@ public class ApplicationDescriptionDialo
             infoPanel.getSwingComponent().setBorder(BorderFactory.createEtchedBorder());
 
             SwingUtil.layoutToGrid(getContentPane(), 2, 1, -1, 0);
-            loadServiceDescriptions();
+//            loadServiceDescriptions();
             loadHostDescriptions();
         }
         setResizable(true);
@@ -441,21 +462,33 @@ public class ApplicationDescriptionDialo
         if (!isNewDescritor()){
         	loadData();
         }
-    }
+        pack();
+    }
+
+	private void setupLayoutForBrowse(JPanel tmpDirPath, JTextField component) {
+		GridBagLayout layout;
+		GridBagConstraints constraints;
+		layout = new GridBagLayout();
+		constraints = new GridBagConstraints();
+		constraints.fill = GridBagConstraints.BOTH;
+		constraints.weightx = 1;
+		layout.setConstraints(component, constraints);
+		tmpDirPath.setLayout(layout);
+	}
 
-    private void loadServiceDescriptions() {
-        cmbServiceName.removeAllItems();
-        setServiceName(null);
-        try {
-            List<ServiceDescription> serviceDescriptions = getRegistry().searchServiceDescription("");
-            for (ServiceDescription serviceDescription : serviceDescriptions) {
-                cmbServiceName.addItem(serviceDescription.getType().getName());
-            }
-        } catch (Exception e) {
-            setError(e.getLocalizedMessage());
-        }
-        updateServiceName();
-    }
+//    private void loadServiceDescriptions() {
+//        cmbServiceName.removeAllItems();
+//        setServiceName(null);
+//        try {
+//            List<ServiceDescription> serviceDescriptions = getRegistry().searchServiceDescription("");
+//            for (ServiceDescription serviceDescription : serviceDescriptions) {
+//                cmbServiceName.addItem(serviceDescription.getType().getName());
+//            }
+//        } catch (Exception e) {
+//            setError(e.getLocalizedMessage());
+//        }
+//        updateServiceName();
+//    }
 
     private void loadData(){
     	txtAppName.setText(getOriginalDeploymentDescription().getType().getApplicationName().getStringValue());
@@ -467,8 +500,8 @@ public class ApplicationDescriptionDialo
 
     	cmbHostName.setSelectedItem(getOriginalHost());
     	setHostName(cmbHostName.getSelectedItem().toString());
-    	cmbServiceName.setSelectedItem(getOriginalService());
-    	setServiceName(cmbServiceName.getSelectedItem().toString());
+//    	cmbServiceName.setSelectedItem(getOriginalService());
+    	setServiceName(null);
     	txtAppName.setEditable(isNewDescritor());
     }
     
@@ -629,7 +662,7 @@ public class ApplicationDescriptionDialo
         }
 
         if (getServiceName() == null || getServiceName().trim().equals("")) {
-            throw new Exception("Please select/create service to bind to this deployment description");
+            throw new Exception("Click on Input/Output Parameters...  to define parameters for the application");
         }
 
         if (getHostName() == null || getHostName().trim().equals("")) {
@@ -674,8 +707,10 @@ public class ApplicationDescriptionDialo
     }
 
     private void updateServiceName() {
-        if (cmbServiceName.getSelectedItem() != null) {
-            setServiceName(cmbServiceName.getSelectedItem().toString());
+        if (getServiceDescription() == null) {
+        	setServiceName(null);
+        }else{
+            setServiceName(getServiceDescription().getType().getName());
         }
     }
 
@@ -687,9 +722,9 @@ public class ApplicationDescriptionDialo
 
     @Override
     public void actionPerformed(ActionEvent e) {
-        if (e.getSource() == cmbServiceName) {
-            updateServiceName();
-        }
+//        if (e.getSource() == cmbServiceName) {
+//            updateServiceName();
+//        }
         if (e.getSource() == cmbHostName) {
             updateHostName();
         }
@@ -743,6 +778,15 @@ public class ApplicationDescriptionDialo
 
 	public void setOriginalHost(String originalHost) {
 		this.originalHost = originalHost;
+	}
+
+	public ServiceDescription getServiceDescription() {
+		return serviceDescription;
+	}
+
+	private void setServiceDescription(ServiceDescription serviceDescription) {
+		this.serviceDescription = serviceDescription;
+		updateServiceName();
 	}
 
 }

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorEditorDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorEditorDialog.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorEditorDialog.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorEditorDialog.java Thu Jun 28 15:05:31 2012
@@ -298,6 +298,12 @@ public class DescriptorEditorDialog exte
     }
     
     private void loadDescriptors() {
+    	try {
+    		//allow the registry cache to update
+			Thread.sleep(500);
+		} catch (InterruptedException e1) {
+			e1.printStackTrace();
+		}
     	((DefaultListModel)descriptorList.getModel()).removeAllElements();
     	try {
     		List<?> descriptors=null;

Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorListDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorListDialog.java?rev=1355038&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorListDialog.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/DescriptorListDialog.java Thu Jun 28 15:05:31 2012
@@ -0,0 +1,258 @@
+/*
+ *
+ * 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.ui.dialogs.descriptors;
+
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Toolkit;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.BorderFactory;
+import javax.swing.DefaultListCellRenderer;
+import javax.swing.DefaultListModel;
+import javax.swing.JButton;
+import javax.swing.JDialog;
+import javax.swing.JLabel;
+import javax.swing.JList;
+import javax.swing.JOptionPane;
+import javax.swing.JScrollPane;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+
+import org.apache.airavata.common.registry.api.exception.RegistryException;
+import org.apache.airavata.common.utils.SwingUtil;
+import org.apache.airavata.commons.gfac.type.ApplicationDeploymentDescription;
+import org.apache.airavata.commons.gfac.type.HostDescription;
+import org.apache.airavata.commons.gfac.type.ServiceDescription;
+import org.apache.airavata.registry.api.AiravataRegistry;
+import org.apache.airavata.xbaya.registrybrowser.nodes.JCRBrowserIcons;
+import org.apache.airavata.xbaya.ui.XBayaGUI;
+import org.apache.airavata.xbaya.ui.dialogs.XBayaDialog;
+import org.apache.airavata.xbaya.ui.widgets.GridPanel;
+
+public class DescriptorListDialog extends JDialog {
+
+	private static final long serialVersionUID = 478151437279682576L;
+
+	private XBayaGUI xbayaGUI;
+
+    private XBayaDialog dialog;
+
+    private AiravataRegistry registry;
+
+	private JList descriptorList;
+
+	private Map<ApplicationDeploymentDescription,String> dlist;
+
+	private JButton okButton;
+	
+	private boolean serviceSelected=false;
+
+	public enum DescriptorType{
+		HOST,
+		SERVICE,
+		APPLICATION
+	};
+
+	public DescriptorType descriptorType;
+	
+    /**
+     * @param engine XBaya workflow engine
+     */
+    public DescriptorListDialog(AiravataRegistry registry, DescriptorType descriptorType) {
+        setRegistry(registry);
+        this.descriptorType=descriptorType;
+        initGUI();
+        
+    }
+
+    /**
+     * Displays the dialog.
+     */
+    public void open() {
+    	pack();
+    	setModal(true);
+        // Adjust the size if it's bigger than the screen.
+        Dimension size = getSize();
+        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
+        final int inset = 100;
+        int width = size.width;
+        if (width > screenSize.width) {
+            width = screenSize.width - inset;
+        }
+        int height = size.height;
+        if (height > screenSize.height) {
+            height = screenSize.height - inset;
+        }
+        setSize(width, height);
+
+        setLocationRelativeTo(null);
+        setVisible(true);
+    }
+
+    public void close() {
+        setVisible(false);
+    }
+
+    /**
+     * Initializes the GUI.
+     */
+    private void initGUI() {
+    	descriptorList= new JList(new DefaultListModel());
+    	descriptorList.setCellRenderer(new DescriptorListCellRenderer(descriptorType));
+    	JScrollPane pane = new JScrollPane(descriptorList);
+
+    	GridPanel infoPanel=new GridPanel();
+        infoPanel.add(pane);
+        infoPanel.getSwingComponent().setBorder(BorderFactory.createEtchedBorder());
+        SwingUtil.layoutToGrid(infoPanel.getSwingComponent(), 1, 1, 0, 0);
+
+        descriptorList.addListSelectionListener(new ListSelectionListener(){
+			@Override
+			public void valueChanged(ListSelectionEvent e) {
+				boolean isSelected=descriptorList.getSelectedIndex()!=-1;
+				okButton.setEnabled(isSelected);
+			}
+        	
+        });
+        okButton = new JButton("OK");
+        okButton.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+            	serviceSelected=true;
+            	close();
+            }
+
+        });
+        JButton closeButton = new JButton("Cancel");
+        closeButton.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                close();
+            }
+        });
+        
+
+        GridPanel buttonPanel = new GridPanel();
+        buttonPanel.add(okButton);
+        buttonPanel.add(closeButton);
+        buttonPanel.getSwingComponent().setBorder(BorderFactory.createEtchedBorder());
+        String title=null; 
+        switch (descriptorType){
+        	case HOST:
+        		title="Host Descriptions";
+        		break;
+        	case SERVICE:
+        		title="Service Descriptions";
+        		break;
+        	case APPLICATION:
+        		title="Application Descriptions";
+        		break;
+        }
+        getContentPane().add(infoPanel.getSwingComponent());
+        getContentPane().add(buttonPanel.getSwingComponent());
+        SwingUtil.layoutToGrid(getContentPane(), 2, 1, 0, 0);
+        getRootPane().setDefaultButton(okButton);
+        okButton.setEnabled(false);
+        loadDescriptors();
+    }
+    
+	public Object getSelected() {
+		return descriptorList.getModel().getElementAt(descriptorList.getSelectedIndex());
+	}
+
+	protected boolean askQuestion(String title, String question) {
+        return JOptionPane.showConfirmDialog(null, question, title, JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION;
+    }
+    
+    private void loadDescriptors() {
+    	((DefaultListModel)descriptorList.getModel()).removeAllElements();
+    	try {
+    		List<?> descriptors=null;
+			switch (descriptorType){
+	    	case HOST:
+	    		descriptors = getRegistry().searchHostDescription(".*");
+	    		break;
+	    	case SERVICE:
+	    		descriptors = getRegistry().searchServiceDescription(".*");
+	    		break;
+	    	case APPLICATION:
+	    		dlist=getRegistry().searchDeploymentDescription();
+	    		descriptors =Arrays.asList(dlist.keySet().toArray(new ApplicationDeploymentDescription[]{})); 
+	    		break;
+    		}
+    		for (Object d : descriptors) {
+				((DefaultListModel)descriptorList.getModel()).addElement(d);
+			}
+		} catch (RegistryException e) {
+			xbayaGUI.getErrorWindow().error(e);
+		}
+	}
+    
+    private static class DescriptorListCellRenderer extends DefaultListCellRenderer{
+		private static final long serialVersionUID = -1019715929291926180L;
+		private DescriptorType descriptorType;
+		public DescriptorListCellRenderer(DescriptorType descriptorType) {
+			this.descriptorType=descriptorType;
+		}
+		public Component getListCellRendererComponent(JList list, Object value,
+				int index, boolean isSelected, boolean cellHasFocus) {
+			Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
+			if (c instanceof JLabel){
+				switch (descriptorType){
+		    	case HOST:
+		    		((JLabel) c).setText(((HostDescription)value).getType().getHostName());
+					((JLabel) c).setIcon(JCRBrowserIcons.HOST_ICON);
+		    		break;
+		    	case SERVICE:
+		    		((JLabel) c).setText(((ServiceDescription)value).getType().getName());
+					((JLabel) c).setIcon(JCRBrowserIcons.SERVICE_ICON);
+		    		break;
+		    	case APPLICATION:
+		    		((JLabel) c).setText(((ApplicationDeploymentDescription)value).getType().getApplicationName().getStringValue());
+					((JLabel) c).setIcon(JCRBrowserIcons.APPLICATION_ICON);
+		    		break;
+				}
+				
+			}
+			return c;
+		}
+    	
+    }
+    public AiravataRegistry getRegistry() {
+        return registry;
+    }
+
+    public void setRegistry(AiravataRegistry registry) {
+        this.registry = registry;
+    }
+
+	public boolean isServiceSelected() {
+		return serviceSelected;
+	}
+
+	public void setServiceSelected(boolean serviceSelected) {
+		this.serviceSelected = serviceSelected;
+	}
+}
\ No newline at end of file

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ServiceDescriptionDialog.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ServiceDescriptionDialog.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ServiceDescriptionDialog.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/dialogs/descriptors/ServiceDescriptionDialog.java Thu Jun 28 15:05:31 2012
@@ -31,6 +31,8 @@ import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.KeyAdapter;
 import java.awt.event.KeyEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
 import java.util.ArrayList;
@@ -44,10 +46,13 @@ import javax.swing.JCheckBox;
 import javax.swing.JComboBox;
 import javax.swing.JDialog;
 import javax.swing.JLabel;
+import javax.swing.JMenuItem;
 import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
 import javax.swing.JScrollPane;
 import javax.swing.JTable;
 import javax.swing.ListSelectionModel;
+import javax.swing.SwingConstants;
 import javax.swing.WindowConstants;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
@@ -66,6 +71,7 @@ import org.apache.airavata.schemas.gfac.
 import org.apache.airavata.schemas.gfac.OutputParameterType;
 import org.apache.airavata.schemas.gfac.ParameterType;
 import org.apache.airavata.schemas.gfac.ServiceDescriptionType;
+import org.apache.airavata.xbaya.ui.dialogs.descriptors.DescriptorListDialog.DescriptorType;
 import org.apache.airavata.xbaya.ui.widgets.GridPanel;
 import org.apache.airavata.xbaya.ui.widgets.XBayaLabel;
 import org.apache.airavata.xbaya.ui.widgets.XBayaTextField;
@@ -89,7 +95,10 @@ public class ServiceDescriptionDialog ex
     private boolean newDescription;
     private boolean ignoreTableChanges=false;
 	private JCheckBox chkForceFileStagingToWorkDir;
-
+	private boolean serviceDescriptionMode;
+	private String suggestedNamePrefix;
+	private String titlePrefix;
+	
     /**
      * Launch the application.
      */
@@ -107,19 +116,37 @@ public class ServiceDescriptionDialog ex
     	this(registry,true,null);
     }
     
+    public ServiceDescriptionDialog(AiravataRegistry registry, boolean newDescription, ServiceDescription serviceDescription) {
+    	this(registry, newDescription, serviceDescription, true, null);
+    }
+    
     /**
      * Create the dialog.
      */
-    public ServiceDescriptionDialog(AiravataRegistry registry, boolean newDescription, ServiceDescription serviceDescription) {
+    public ServiceDescriptionDialog(AiravataRegistry registry, boolean newDescription, ServiceDescription serviceDescription, boolean serviceDescriptionMode, String suggestedNamePrefix) {
     	setNewDescription(newDescription);
     	this.setOrginalServiceDescription(serviceDescription);
+    	setServiceDescriptionMode(serviceDescriptionMode);
+    	setSuggestedNamePrefix(suggestedNamePrefix);
+    	if (isNewDescription()) {
+			setTitlePrefix(isServiceDescriptionMode()? "New Service Description":"Input/Output parameters for "+getSuggestedNamePrefix());
+		}else{
+			setTitlePrefix(isServiceDescriptionMode()? "Update Service Description: "+getOrginalServiceDescription().getType().getName():"Update Input/Output parameters for "+getSuggestedNamePrefix());
+		}
         addWindowListener(new WindowAdapter() {
             @Override
             public void windowOpened(WindowEvent arg0) {
                 if (isNewDescription()) {
-					String baseName = "Service";
-					int i = 1;
-					String defaultName = baseName + i;
+					String baseName = isServiceDescriptionMode()? "Service":getSuggestedNamePrefix()+"_Service";
+					int i;
+					String defaultName;
+					if (isServiceDescriptionMode()) {
+						i = 1;
+						defaultName = baseName+i;
+					}else{
+						i = 0;
+						defaultName = baseName;
+					}
 					try {
 						while (getRegistry().getServiceDescription(defaultName) != null) {
 							defaultName = baseName + (++i);
@@ -146,11 +173,12 @@ public class ServiceDescriptionDialog ex
     }
 
     private void initGUI() {
-        if (isNewDescription()) {
-			setTitle("New Service Description");
-		}else{
-			setTitle("Update Service Description: "+getOrginalServiceDescription().getType().getName());
-		}
+    	setTitle(getTitlePrefix());
+//        if (isNewDescription()) {
+//			setTitle("New Service Description");
+//		}else{
+//			setTitle("Update Service Description: "+getOrginalServiceDescription().getType().getName());
+//		}
 		setBounds(100, 100, 463, 459);
         setModal(true);
         setLocationRelativeTo(null);
@@ -167,9 +195,11 @@ public class ServiceDescriptionDialog ex
             }
         });
         txtServiceName.setColumns(10);
-        lblServiceName = new XBayaLabel("Service name",txtServiceName);
-
-        JLabel lblInputParameters = new JLabel("Service Parameters");
+        lblServiceName = new XBayaLabel(isServiceDescriptionMode()? "Service name":"Bind parameters to service",txtServiceName);
+        if (!isServiceDescriptionMode()){
+        	lblServiceName.getSwingComponent().setFont(new Font("Tahoma", Font.ITALIC, 11));
+        }
+        JLabel lblInputParameters = new JLabel(isServiceDescriptionMode()? "Service Parameters":"Input/Output Parameters");
         lblInputParameters.setFont(new Font("Tahoma", Font.BOLD, 11));
 
         JScrollPane scrollPane = new JScrollPane();
@@ -238,7 +268,43 @@ public class ServiceDescriptionDialog ex
             }
 
         });
-        chkForceFileStagingToWorkDir=new JCheckBox("Save URI content in work directory");
+        JLabel lblTableParameterNote=null;
+        if (!isServiceDescriptionMode()) {
+			final JPopupMenu popup = new JPopupMenu();
+			JMenuItem menuItem = new JMenuItem(
+					"Bind to parameters in existing service...");
+			menuItem.addActionListener(new ActionListener() {
+				@Override
+				public void actionPerformed(ActionEvent arg0) {
+					bindExistingServiceDescriptionAsParameters();
+				}
+
+			});
+			popup.add(menuItem);
+			tblParameters.addMouseListener(new MouseAdapter() {
+				@Override
+				public void mouseClicked(MouseEvent e) {
+					showPopup(e);
+				}
+
+				public void mousePressed(MouseEvent e) {
+					showPopup(e);
+				}
+
+				public void mouseReleased(MouseEvent e) {
+					showPopup(e);
+				}
+
+				private void showPopup(MouseEvent e) {
+					if (e.isPopupTrigger()) {
+						popup.show(tblParameters, e.getX(), e.getY());
+					}
+				}
+			});
+			lblTableParameterNote = new JLabel("*Note: Right click on the table to bind an existing service");
+			lblTableParameterNote.setFont(new Font("Tahoma", Font.ITALIC, 11));
+		}
+		chkForceFileStagingToWorkDir=new JCheckBox("Save URI content in work directory");
         chkForceFileStagingToWorkDir.addActionListener(new ActionListener(){
 
 			@Override
@@ -313,19 +379,51 @@ public class ServiceDescriptionDialog ex
         contentPanel.add(lblServiceName);
         contentPanel.add(txtServiceName);
         GridPanel parameterPanel=new GridPanel();
-        parameterPanel.add(lblInputParameters);
+        if (isServiceDescriptionMode()) {
+			parameterPanel.add(lblInputParameters);
+		}
+		if (lblTableParameterNote!=null) {
+			parameterPanel.add(lblTableParameterNote);
+		}
         parameterPanel.add(scrollPane);
-        parameterPanel.add(btnDeleteParameter);
+			//        if (isServiceDescriptionMode()){
+    	parameterPanel.add(btnDeleteParameter);
+//        }else{
+//            GridPanel parameterOptionPanel=new GridPanel();
+//        	JButton btnLoadExistingServiceData = new JButton("Bind to parameters in existing service description...");
+//        	btnLoadExistingServiceData.addActionListener(new ActionListener(){
+//				@Override
+//				public void actionPerformed(ActionEvent arg0) {
+//					bindExistingServiceDescriptionAsParameters();
+//				}
+//        	});
+//        	parameterOptionPanel.add(btnLoadExistingServiceData);
+//        	parameterOptionPanel.add(btnDeleteParameter);
+//        	parameterPanel.add(parameterOptionPanel);
+//        }
         
         SwingUtil.layoutToGrid(contentPanel.getSwingComponent(), 1, 2, SwingUtil.WEIGHT_NONE, 1);
-        SwingUtil.layoutToGrid(parameterPanel.getSwingComponent(), 3, 1, 1, 0);
+//        if (lblTableParameterNote==null){
+        	SwingUtil.layoutToGrid(parameterPanel.getSwingComponent(), 3, 1, 1, 0);
+//        }else{
+//        	SwingUtil.layoutToGrid(parameterPanel.getSwingComponent(), 4, 1, 2, 0);
+//        }
         GridPanel infoPanel = new GridPanel();
-        infoPanel.add(contentPanel);
-        infoPanel.add(parameterPanel);
+        if (isServiceDescriptionMode()) {
+			infoPanel.add(contentPanel);
+		}
+		infoPanel.add(parameterPanel);
         infoPanel.add(chkForceFileStagingToWorkDir);
+        if (!isServiceDescriptionMode()) {
+			infoPanel.add(contentPanel);
+		}
         infoPanel.getSwingComponent().setBorder(BorderFactory.createEtchedBorder());
-        infoPanel.layout(3, 1, 1, 0);
-        getContentPane().add(infoPanel.getSwingComponent());
+        if (isServiceDescriptionMode()) {
+			infoPanel.layout(3, 1, 1, 0);
+		}else{
+			infoPanel.layout(3, 1, 0, 0);
+		}
+		getContentPane().add(infoPanel.getSwingComponent());
         getContentPane().add(buttonPane.getSwingComponent());
         buttonPane.getSwingComponent().setBorder(BorderFactory.createEtchedBorder());
         SwingUtil.layoutToGrid(getContentPane(), 2, 1, 0, 0);
@@ -341,7 +439,7 @@ public class ServiceDescriptionDialog ex
 		txtServiceName.setText(descType.getName());
 		setServiceName(txtServiceName.getText());
 
-		txtServiceName.setEditable(isNewDescription());
+		txtServiceName.setEditable(!isServiceDescriptionMode() || isNewDescription());
     	ignoreTableChanges=true;
     	while(defaultTableModel.getRowCount()>0){
     		defaultTableModel.removeRow(0);
@@ -580,6 +678,40 @@ public class ServiceDescriptionDialog ex
 		this.orginalServiceDescription = orginalServiceDescription;
 	}
 
+	public boolean isServiceDescriptionMode() {
+		return serviceDescriptionMode;
+	}
+
+	public void setServiceDescriptionMode(boolean serviceDescriptionMode) {
+		this.serviceDescriptionMode = serviceDescriptionMode;
+	}
+
+	public String getSuggestedNamePrefix() {
+		return suggestedNamePrefix;
+	}
+
+	public void setSuggestedNamePrefix(String suggestedNamePrefix) {
+		this.suggestedNamePrefix = suggestedNamePrefix;
+	}
+
+	public String getTitlePrefix() {
+		return titlePrefix;
+	}
+
+	public void setTitlePrefix(String titlePrefix) {
+		this.titlePrefix = titlePrefix;
+	}
+
+	private void bindExistingServiceDescriptionAsParameters() {
+		DescriptorListDialog descriptorListDialog = new DescriptorListDialog(getRegistry(),DescriptorType.SERVICE);
+		descriptorListDialog.open();
+		if (descriptorListDialog.isServiceSelected()){
+			setOrginalServiceDescription((ServiceDescription) descriptorListDialog.getSelected());
+			setNewDescription(false);
+			loadData();
+		}
+	}
+
 	private class StringArrayComboBoxEditor extends DefaultCellEditor {
         private static final long serialVersionUID = -304464739219209395L;
 

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/MenuIcons.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/MenuIcons.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/MenuIcons.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/MenuIcons.java Thu Jun 28 15:05:31 2012
@@ -27,6 +27,7 @@ import org.apache.airavata.common.utils.
 
 public class MenuIcons {
 	public static final ImageIcon OPEN_ICON = SwingUtil.createImageIcon("menu/open1.png");
+	public static final ImageIcon OPEN_DIR_ICON = SwingUtil.createImageIcon("menu/open_dir.png");
     public static final ImageIcon SAVE_ICON = SwingUtil.createImageIcon("menu/save1.png");
     public static final ImageIcon NEW_ICON = SwingUtil.createImageIcon("menu/new2.png");
     

Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/XBayaMenuItem.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/XBayaMenuItem.java?rev=1355038&r1=1355037&r2=1355038&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/XBayaMenuItem.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/ui/menues/XBayaMenuItem.java Thu Jun 28 15:05:31 2012
@@ -188,12 +188,14 @@ public class XBayaMenuItem implements XB
         xbayaMenuItem.setMnemonic(KeyEvent.VK_X);
         JMenu newMenu = new JMenu("New");
 	        newMenu.add(newWorkflowTabItem);
-	        
 	        newMenu.addSeparator();
 	        
-	        newMenu.add(this.registerHostDesc);
-	        newMenu.add(this.registerServiceDesc);
 	        newMenu.add(this.registerApplicationDesc);
+	        newMenu.addSeparator();
+	        JMenu regAddSubMenuItem = new JMenu("Registry additions");
+	        newMenu.add(regAddSubMenuItem);
+	        regAddSubMenuItem.add(this.registerHostDesc);
+	        regAddSubMenuItem.add(this.registerServiceDesc);
 	        
         xbayaMenuItem.add(newMenu);
         xbayaMenuItem.add(this.openWorkflowItem);

Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/airavata-title-text.png
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/airavata-title-text.png?rev=1355038&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/airavata-title-text.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/menu/open_dir.png
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/menu/open_dir.png?rev=1355038&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/airavata/trunk/modules/xbaya-gui/src/main/resources/images/menu/open_dir.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream



Mime
View raw message