Author: chathuri
Date: Wed Dec 12 16:07:50 2012
New Revision: 1420803

URL: http://svn.apache.org/viewvc?rev=1420803&view=rev
Log:
adding actions to copy workflow information and experiment information to 
registry browser view

Modified:
    
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowExperimentNode.java
    
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowNode.java

Modified: 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowExperimentNode.java
URL: 
http://svn.apache.org/viewvc/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowExperimentNode.java?rev=1420803&r1=1420802&r2=1420803&view=diff
==============================================================================
--- 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowExperimentNode.java
 (original)
+++ 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowExperimentNode.java
 Wed Dec 12 16:07:50 2012
@@ -21,6 +21,8 @@
 
 package org.apache.airavata.xbaya.registrybrowser.nodes;
 
+import java.awt.*;
+import java.awt.datatransfer.StringSelection;
 import java.util.Arrays;
 import java.util.List;
 
@@ -30,9 +32,12 @@ import javax.swing.tree.TreeNode;
 
 import org.apache.airavata.client.api.AiravataAPIInvocationException;
 import org.apache.airavata.registry.api.exception.RegistryException;
+import org.apache.airavata.registry.api.workflow.ExperimentName;
 import org.apache.airavata.registry.api.workflow.WorkflowInstanceStatus;
 import org.apache.airavata.xbaya.model.registrybrowser.XBayaWorkflowExperiment;
 import org.apache.airavata.xbaya.ui.actions.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.ui.actions.registry.browser.CopyAction;
+import org.apache.airavata.xbaya.ui.actions.registry.browser.DeleteAction;
 
 public class XBayaWorkflowExperimentNode extends AbstractAiravataTreeNode {
        private XBayaWorkflowExperiment experiment;
@@ -82,15 +87,37 @@ public class XBayaWorkflowExperimentNode
 
     @Override
     public List<String> getSupportedActions() {
-        return Arrays.asList();
+        return Arrays.asList(CopyAction.ID);
     }
 
     public boolean triggerAction(JTree tree, String action) throws Exception {
+        if (action.equals(CopyAction.ID)) {
+            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new 
StringSelection(getExperimentInfo()), null);
+        }
         return super.triggerAction(tree, action);
     }
 
+    private String getExperimentName (){
+        String experimentId = getExperiment().getExperimentId();
+        try {
+            ExperimentName experimentName = 
getExperiment().getAiravataAPI().getProvenanceManager().getExperimentName(experimentId);
+            return experimentName.getInstanceName();
+        } catch (AiravataAPIInvocationException e) {
+            return null;
+        }
+    }
+
+    private String getExperimentInfo (){
+        String experimetName = getExperimentName();
+        String experimetID = getExperiment().getExperimentId();
+        return "[Experiment Name = " + experimetName + ", Experiment ID = " + 
experimetID + "]";
+    }
+
     @Override
     public String getActionCaption(AbstractBrowserActionItem action) {
+        if (action.getID().equals(CopyAction.ID)) {
+            return "Copy Experiment Info to clipboard";
+        }
         return action.getDefaultCaption();
     }
 

Modified: 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowNode.java
URL: 
http://svn.apache.org/viewvc/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowNode.java?rev=1420803&r1=1420802&r2=1420803&view=diff
==============================================================================
--- 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowNode.java
 (original)
+++ 
airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/registrybrowser/nodes/XBayaWorkflowNode.java
 Wed Dec 12 16:07:50 2012
@@ -21,6 +21,8 @@
 
 package org.apache.airavata.xbaya.registrybrowser.nodes;
 
+import java.awt.*;
+import java.awt.datatransfer.StringSelection;
 import java.util.Arrays;
 import java.util.List;
 
@@ -30,6 +32,7 @@ import javax.swing.tree.TreeNode;
 
 import org.apache.airavata.xbaya.model.registrybrowser.XBayaWorkflow;
 import org.apache.airavata.xbaya.ui.actions.AbstractBrowserActionItem;
+import org.apache.airavata.xbaya.ui.actions.registry.browser.CopyAction;
 
 public class XBayaWorkflowNode extends AbstractAiravataTreeNode {
     private XBayaWorkflow xbayaWorkflow;
@@ -68,15 +71,27 @@ public class XBayaWorkflowNode extends A
 
     @Override
     public List<String> getSupportedActions() {
-        return Arrays.asList();
+        return Arrays.asList(CopyAction.ID);
     }
 
     public boolean triggerAction(JTree tree, String action) throws Exception {
+        if (action.equals(CopyAction.ID)) {
+            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(new 
StringSelection(getWorkflowInfo()), null);
+        }
         return super.triggerAction(tree, action);
     }
 
+    private String getWorkflowInfo (){
+        String workflowName = getXbayaWorkflow().getWorkflowName();
+        String workflowId = getXbayaWorkflow().getWorkflowId();
+        return "[Worklfow Name = " + workflowName + ", Workflow Instance ID = 
" + workflowId + "]";
+    }
+
     @Override
     public String getActionCaption(AbstractBrowserActionItem action) {
+        if (action.getID().equals(CopyAction.ID)) {
+            return "Copy Workflow Info to clipboard";
+        }
         return action.getDefaultCaption();
     }
 


Reply via email to