You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2012/04/30 18:58:02 UTC
svn commit: r1332291 - in
/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya:
./ gui/ menues/registry/ menues/run/ menues/xbaya/
Author: samindaw
Date: Mon Apr 30 16:58:02 2012
New Revision: 1332291
URL: http://svn.apache.org/viewvc?rev=1332291&view=rev
Log:
introducing xbaya execution mode
Added:
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaExecutionModeListener.java
Modified:
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaGUI.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaMenu.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/registry/RegistryMenuItem.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/run/RunMenuItem.java
incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/xbaya/XBayaMenuItem.java
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBaya.java Mon Apr 30 16:58:02 2012
@@ -24,6 +24,7 @@ package org.apache.airavata.xbaya;
import java.net.URI;
import java.net.URISyntaxException;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.component.registry.JCRComponentRegistry;
import org.apache.airavata.xbaya.gui.ErrorMessages;
import org.slf4j.Logger;
@@ -87,7 +88,7 @@ public class XBaya {
+ " [-karmaWorkflowInstanceID]" + " [-myProxyPort port]" + " [-myProxyUsername username]"
+ " [-myProxyLifetime sec]" + " [-loadMyProxy {true,false}]" + " [-messageBoxURL url]"
+ " [-width width]" + " [-height height]" + " [-exitOnClose false/true]" + "[-enableProvenance false/true]"
- + "[-enableProvenanceSmartRun false/true]" + "[-runWithCrossProduct true/false]");
+ + "[-enableProvenanceSmartRun false/true]" + "[-runWithCrossProduct true/false]"+"[-mode ide/monitor]");
}
private void parseArguments(String[] args) {
@@ -257,8 +258,11 @@ public class XBaya {
if ("false".equalsIgnoreCase(exit)) {
this.config.setRunWithCrossProduct(false);
}
- }
- else {
+ } else if ("-mode".equalsIgnoreCase(arg)) {
+ index++;
+ String modeValue = args[index].toUpperCase();
+ this.config.setXbayaExecutionMode(XBayaExecutionMode.valueOf(modeValue));
+ } else {
String message = "Unknown option: " + arg;
logger.error(message);
this.config.addError(new XBayaException(message));
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/XBayaConfiguration.java Mon Apr 30 16:58:02 2012
@@ -30,6 +30,7 @@ import java.util.Observer;
import org.apache.airavata.xbaya.component.registry.JCRComponentRegistry;
import org.apache.airavata.xbaya.file.XBayaPathConstants;
+import org.apache.airavata.xbaya.gui.XBayaExecutionModeListener;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -132,6 +133,14 @@ public class XBayaConfiguration extends
private String trustedCertLocation = "";
+ private XBayaExecutionMode xbayaExecutionMode=XBayaExecutionMode.IDE;
+
+ private List<XBayaExecutionModeListener> xbayaExecutionModeChangeListners=new ArrayList<XBayaExecutionModeListener>();
+
+ public enum XBayaExecutionMode{
+ IDE,
+ MONITOR
+ }
/**
* Constructs an XwfConfiguration.
*/
@@ -844,4 +853,32 @@ public class XBayaConfiguration extends
public void setTrustedCertLocation(String trustedCertLocation) {
this.trustedCertLocation = trustedCertLocation;
}
+
+ public XBayaExecutionMode getXbayaExecutionMode() {
+ return xbayaExecutionMode;
+ }
+
+ public void setXbayaExecutionMode(XBayaExecutionMode xbayaExecutionMode) {
+ boolean modeChanged=(this.xbayaExecutionMode != xbayaExecutionMode);
+ this.xbayaExecutionMode = xbayaExecutionMode;
+ if (modeChanged) {
+ for (XBayaExecutionModeListener listner : xbayaExecutionModeChangeListners) {
+ try {
+ listner.executionModeChanged(this);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ public void registerExecutionModeChangeListener(XBayaExecutionModeListener listner){
+ xbayaExecutionModeChangeListners.add(listner);
+ }
+
+ public void unregisterExecutionModeChangeListener(XBayaExecutionModeListener listner){
+ if (xbayaExecutionModeChangeListners.contains(listner)) {
+ xbayaExecutionModeChangeListners.remove(listner);
+ }
+ }
}
\ No newline at end of file
Added: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaExecutionModeListener.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaExecutionModeListener.java?rev=1332291&view=auto
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaExecutionModeListener.java (added)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaExecutionModeListener.java Mon Apr 30 16:58:02 2012
@@ -0,0 +1,34 @@
+/*
+ *
+ * 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.gui;
+
+import org.apache.airavata.xbaya.XBayaConfiguration;
+
+public interface XBayaExecutionModeListener {
+ /**
+ * Triggers when the execution mode in xbaya is changed
+ * For possition executions modes see,
+ * XBayaConfiguration.XBayaExecutionMode
+ * @param config - XBaya configuration object
+ */
+ public void executionModeChanged(XBayaConfiguration config);
+}
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaGUI.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaGUI.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaGUI.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaGUI.java Mon Apr 30 16:58:02 2012
@@ -50,6 +50,7 @@ import javax.swing.event.ChangeListener;
import org.apache.airavata.common.utils.SwingUtil;
import org.apache.airavata.xbaya.XBayaConfiguration;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.XBayaConstants;
import org.apache.airavata.xbaya.XBayaEngine;
import org.apache.airavata.xbaya.XBayaException;
@@ -74,7 +75,7 @@ import org.apache.airavata.xbaya.wf.Work
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public class XBayaGUI implements EventListener {
+public class XBayaGUI implements EventListener, XBayaExecutionModeListener {
private static final Logger logger = LoggerFactory.getLogger(XBayaGUI.class);
@@ -131,6 +132,7 @@ public class XBayaGUI implements EventLi
this.engine = engine;
this.engine.getMonitor().addEventListener(this);
graphFiler = new WorkflowFiler(engine);
+ engine.getConfiguration().registerExecutionModeChangeListener(this);
try {
SwingUtilities.invokeAndWait(new Runnable() {
@@ -510,6 +512,7 @@ public class XBayaGUI implements EventLi
// newGraphCanvas(true);
this.frame.setVisible(true);
+ executionModeChanged(this.engine.getConfiguration());
}
/**
@@ -740,6 +743,11 @@ public class XBayaGUI implements EventLi
this.frame.setTitle(workflowName + " - " + title);
}
+ @Override
+ public void executionModeChanged(XBayaConfiguration config) {
+ this.leftSplitPane.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ }
+
}
\ No newline at end of file
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaMenu.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaMenu.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaMenu.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/gui/XBayaMenu.java Mon Apr 30 16:58:02 2012
@@ -30,6 +30,8 @@ import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
+import org.apache.airavata.xbaya.XBayaConfiguration;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.XBayaConstants;
import org.apache.airavata.xbaya.XBayaEngine;
import org.apache.airavata.xbaya.amazonEC2.gui.AmazonEC2Menu;
@@ -47,7 +49,7 @@ import org.apache.airavata.xbaya.monitor
import org.apache.airavata.xbaya.pegasus.gui.PegasusMenu;
import org.apache.airavata.xbaya.wf.gui.WorkflowMenu;
-public class XBayaMenu implements XBayaComponent {
+public class XBayaMenu implements XBayaComponent,XBayaExecutionModeListener{
private XBayaEngine engine;
@@ -96,6 +98,7 @@ public class XBayaMenu implements XBayaC
this.setEngine(engine);
setToolBar(toolBar);
initMenu();
+ engine.getConfiguration().registerExecutionModeChangeListener(this);
// SwingUtilities.invokeLater(new Runnable() {
// public void run() {
// try {
@@ -126,6 +129,7 @@ public class XBayaMenu implements XBayaC
registerApplications = new RegisterApplicationsMenu(getEngine());
createMenuBar();
+ executionModeChanged(getEngine().getConfiguration());
}
/**
@@ -149,21 +153,10 @@ public class XBayaMenu implements XBayaC
menuBar.add(runMenuItem.getMenu());
menuBar.add(toolsMenuItem.getMenu());
menuBar.add(registryMenuItem.getMenu());
-
-// this.menuBar.add(this.fileMenu.getMenu());
-// this.menuBar.add(this.workflowMenu.getMenu());
-// this.menuBar.add(this.componentMenu.getMenu());
-// this.menuBar.add(this.experimentMenu.getMenu());
-// menuBar.add(this.amazonEC2Menu.getMenu());
-// // this.menuBar.add(this.myProxyMenu.getMenu());
-// this.menuBar.add(this.monitorMenu.getMenu());
-// this.menuBar.add(this.registerApplications.getMenu());
-
// Space before Help
this.menuBar.add(Box.createHorizontalGlue());
this.menuBar.add(createHelpMenu());
-
}
private JMenu createHelpMenu() {
@@ -204,4 +197,9 @@ public class XBayaMenu implements XBayaC
this.toolBar = toolBar;
}
+ @Override
+ public void executionModeChanged(XBayaConfiguration config) {
+ this.menuBar.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ }
+
}
\ No newline at end of file
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/registry/RegistryMenuItem.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/registry/RegistryMenuItem.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/registry/RegistryMenuItem.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/registry/RegistryMenuItem.java Mon Apr 30 16:58:02 2012
@@ -28,15 +28,18 @@ import javax.swing.AbstractAction;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
+import org.apache.airavata.xbaya.XBayaConfiguration;
import org.apache.airavata.xbaya.XBayaEngine;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.component.gui.JCRRegistryWindow;
import org.apache.airavata.xbaya.gui.ToolbarButton;
+import org.apache.airavata.xbaya.gui.XBayaExecutionModeListener;
import org.apache.airavata.xbaya.gui.XBayaToolBar;
import org.apache.airavata.xbaya.menues.MenuIcons;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public class RegistryMenuItem {
+public class RegistryMenuItem implements XBayaExecutionModeListener {
private static final String REGISTRY_ACTIONS = "registry_actions";
@@ -50,7 +53,7 @@ public class RegistryMenuItem {
private XBayaToolBar toolBar;
- private ToolbarButton jcrButton;
+ private ToolbarButton toolbarButtonJCR;
/**
* Constructs a WorkflowMenu.
@@ -61,6 +64,7 @@ public class RegistryMenuItem {
this.engine = engine;
setToolBar(toolBar);
createWorkflowMenu();
+ engine.getConfiguration().registerExecutionModeChangeListener(this);
}
/**
@@ -80,6 +84,7 @@ public class RegistryMenuItem {
registryMenu.setMnemonic(KeyEvent.VK_G);
registryMenu.add(this.jcrRegistryItem);
+ executionModeChanged(engine.getConfiguration());
}
@@ -98,7 +103,7 @@ public class RegistryMenuItem {
}
};
item.addActionListener(action);
- jcrButton = getToolBar().addToolbarButton(REGISTRY_ACTIONS, item.getText(), MenuIcons.JCR_ICON, item.getText(), action, 1);
+ toolbarButtonJCR = getToolBar().addToolbarButton(REGISTRY_ACTIONS, item.getText(), MenuIcons.JCR_ICON, item.getText(), action, 1);
return item;
}
@@ -109,4 +114,9 @@ public class RegistryMenuItem {
public void setToolBar(XBayaToolBar toolBar) {
this.toolBar = toolBar;
}
+
+ @Override
+ public void executionModeChanged(XBayaConfiguration config) {
+ toolbarButtonJCR.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ }
}
\ No newline at end of file
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/run/RunMenuItem.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/run/RunMenuItem.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/run/RunMenuItem.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/run/RunMenuItem.java Mon Apr 30 16:58:02 2012
@@ -34,8 +34,9 @@ import javax.swing.event.ChangeListener;
import javax.swing.event.MenuEvent;
import javax.swing.event.MenuListener;
+import org.apache.airavata.xbaya.XBayaConfiguration;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.XBayaEngine;
-import org.apache.airavata.xbaya.XBayaException;
import org.apache.airavata.xbaya.XBayaRuntimeException;
import org.apache.airavata.xbaya.event.Event;
import org.apache.airavata.xbaya.event.Event.Type;
@@ -45,6 +46,7 @@ import org.apache.airavata.xbaya.graph.d
import org.apache.airavata.xbaya.gridchem.gui.GridChemRunnerWindow;
import org.apache.airavata.xbaya.gui.ErrorMessages;
import org.apache.airavata.xbaya.gui.ToolbarButton;
+import org.apache.airavata.xbaya.gui.XBayaExecutionModeListener;
import org.apache.airavata.xbaya.gui.XBayaToolBar;
import org.apache.airavata.xbaya.interpretor.XBayaExecutionState;
import org.apache.airavata.xbaya.jython.gui.JythonRunnerWindow;
@@ -54,11 +56,10 @@ import org.apache.airavata.xbaya.monitor
import org.apache.airavata.xbaya.monitor.MonitorException;
import org.apache.airavata.xbaya.monitor.gui.MonitorConfigurationWindow;
import org.apache.airavata.xbaya.monitor.gui.MonitorStarter;
-import org.apache.airavata.xbaya.wf.Workflow;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public class RunMenuItem implements EventListener{
+public class RunMenuItem implements EventListener, XBayaExecutionModeListener{
private XBayaEngine engine;
@@ -87,15 +88,15 @@ public class RunMenuItem implements Eve
private XBayaToolBar toolBar;
- private ToolbarButton runWorkflowButton;
+ private ToolbarButton toolbarButtonRunWorkflow;
- private ToolbarButton pauseMonitorButton;
+ private ToolbarButton toolbarButtonPauseMonitor;
- private ToolbarButton resumeMonitorButton;
+ private ToolbarButton toolbarButtonResumeMonitor;
private JMenuItem stopWorkflowItem;
- private ToolbarButton stopWorkflowButton;
+ private ToolbarButton toolbarButtonStopWorkflow;
/**
* Constructs a WorkflowMenu.
@@ -109,6 +110,7 @@ public class RunMenuItem implements Eve
Monitor monitor = this.engine.getMonitor();
monitor.addEventListener(this);
monitor.getConfiguration().addEventListener(this);
+ engine.getConfiguration().registerExecutionModeChangeListener(this);
XBayaToolBar.setGroupOrder(EXECUTE_ACTIONS, 5);
XBayaToolBar.setGroupOrder(EXECUTE_MONITOR_ACTIONS, 6);
}
@@ -167,6 +169,7 @@ public class RunMenuItem implements Eve
setupMonitors();
startStopButtonStateUpdater();
+ executionModeChanged(engine.getConfiguration());
}
private void setupMonitors() {
@@ -179,7 +182,7 @@ public class RunMenuItem implements Eve
@Override
public void stateChanged(ChangeEvent event) {
boolean runShouldBeActive = isRunShouldBeActive();
- runWorkflowButton.setEnabled(runShouldBeActive);
+ toolbarButtonRunWorkflow.setEnabled(runShouldBeActive);
launchDynamicWorkflowItem.setEnabled(runShouldBeActive);
launchXBayaInterpreterItem.setEnabled(runShouldBeActive);
launchGridChemWorkflowItem.setEnabled(false);
@@ -222,8 +225,8 @@ public class RunMenuItem implements Eve
item.addActionListener(action);
boolean valid = this.engine.getMonitor().getConfiguration().isValid();
item.setVisible(valid);
- resumeMonitorButton = getToolBar().addToolbarButton(EXECUTE_MONITOR_ACTIONS,item.getText(), MenuIcons.MONITOR_RESUME_ICON, "Resume monitoring", action,4);
- resumeMonitorButton.setEnabled(false);
+ toolbarButtonResumeMonitor = getToolBar().addToolbarButton(EXECUTE_MONITOR_ACTIONS,item.getText(), MenuIcons.MONITOR_RESUME_ICON, "Resume monitoring", action,4);
+ toolbarButtonResumeMonitor.setEnabled(false);
return item;
}
@@ -243,8 +246,8 @@ public class RunMenuItem implements Eve
};
item.addActionListener(action);
item.setVisible(false);
- pauseMonitorButton = getToolBar().addToolbarButton(EXECUTE_MONITOR_ACTIONS,item.getText(), MenuIcons.MONITOR_PAUSE_ICON, "Pause monitoring", action,3);
- pauseMonitorButton.setEnabled(false);
+ toolbarButtonPauseMonitor = getToolBar().addToolbarButton(EXECUTE_MONITOR_ACTIONS,item.getText(), MenuIcons.MONITOR_PAUSE_ICON, "Pause monitoring", action,3);
+ toolbarButtonPauseMonitor.setEnabled(false);
return item;
}
@@ -270,8 +273,8 @@ public class RunMenuItem implements Eve
};
item.addActionListener(action);
item.setEnabled(false);
- stopWorkflowButton = getToolBar().addToolbarButton(EXECUTE_ACTIONS,item.getText(), MenuIcons.STOP_ICON, "Stop workflow", action,2);
- stopWorkflowButton.setEnabled(item.isEnabled());
+ toolbarButtonStopWorkflow = getToolBar().addToolbarButton(EXECUTE_ACTIONS,item.getText(), MenuIcons.STOP_ICON, "Stop workflow", action,2);
+ toolbarButtonStopWorkflow.setEnabled(item.isEnabled());
return item;
}
@@ -329,8 +332,8 @@ public class RunMenuItem implements Eve
};
menuItem.addActionListener(action);
menuItem.setEnabled(false);
- runWorkflowButton = getToolBar().addToolbarButton(EXECUTE_ACTIONS,menuItem.getText(), MenuIcons.RUN_ICON, "Run workflow", action,1);
- runWorkflowButton.setEnabled(menuItem.isEnabled());
+ toolbarButtonRunWorkflow = getToolBar().addToolbarButton(EXECUTE_ACTIONS,menuItem.getText(), MenuIcons.RUN_ICON, "Run workflow", action,1);
+ toolbarButtonRunWorkflow.setEnabled(menuItem.isEnabled());
return menuItem;
}
@@ -406,8 +409,8 @@ public class RunMenuItem implements Eve
pauseMonitoringItem.setVisible(false);
resetMonitoringItem.setVisible(false);
}
- pauseMonitorButton.setEnabled(pauseMonitoringItem.isVisible());
- resumeMonitorButton.setEnabled(resumeMonitoringItem.isVisible());
+ toolbarButtonPauseMonitor.setEnabled(pauseMonitoringItem.isVisible());
+ toolbarButtonResumeMonitor.setEnabled(resumeMonitoringItem.isVisible());
}
public XBayaToolBar getToolBar() {
@@ -435,12 +438,18 @@ public class RunMenuItem implements Eve
return engine.getWorkflowInterpreter()!=null;
}
+ @Override
+ public void executionModeChanged(XBayaConfiguration config) {
+ toolbarButtonRunWorkflow.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ toolbarButtonStopWorkflow.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ }
+
private void startStopButtonStateUpdater() {
Thread t=new Thread(){
@Override
public void run() {
while(true){
- stopWorkflowButton.setEnabled(isWorkflowRunning());
+ toolbarButtonStopWorkflow.setEnabled(isWorkflowRunning());
// if (!isWorkflowRunning()){
// pauseMonitorButton.setEnabled(false);
// resumeMonitorButton.setEnabled(false);
Modified: incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/xbaya/XBayaMenuItem.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/xbaya/XBayaMenuItem.java?rev=1332291&r1=1332290&r2=1332291&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/xbaya/XBayaMenuItem.java (original)
+++ incubator/airavata/trunk/modules/xbaya-gui/src/main/java/org/apache/airavata/xbaya/menues/xbaya/XBayaMenuItem.java Mon Apr 30 16:58:02 2012
@@ -34,6 +34,8 @@ import javax.swing.event.ChangeListener;
import javax.swing.event.MenuEvent;
import javax.swing.event.MenuListener;
+import org.apache.airavata.xbaya.XBayaConfiguration;
+import org.apache.airavata.xbaya.XBayaConfiguration.XBayaExecutionMode;
import org.apache.airavata.xbaya.XBayaEngine;
import org.apache.airavata.xbaya.XBayaException;
import org.apache.airavata.xbaya.appwrapper.ApplicationDescriptionDialog;
@@ -43,6 +45,7 @@ import org.apache.airavata.xbaya.compone
import org.apache.airavata.xbaya.experiment.gui.RegistryLoaderWindow;
import org.apache.airavata.xbaya.graph.gui.GraphCanvas;
import org.apache.airavata.xbaya.gui.ToolbarButton;
+import org.apache.airavata.xbaya.gui.XBayaExecutionModeListener;
import org.apache.airavata.xbaya.gui.XBayaToolBar;
import org.apache.airavata.xbaya.menues.MenuIcons;
import org.apache.airavata.xbaya.registry.RegistryAccesser;
@@ -50,7 +53,9 @@ import org.apache.airavata.xbaya.util.XB
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-public class XBayaMenuItem {
+import com.sun.corba.se.spi.legacy.connection.GetEndPointInfoAgainException;
+
+public class XBayaMenuItem implements XBayaExecutionModeListener {
private static final Logger logger = LoggerFactory.getLogger(XBayaMenuItem.class);
@@ -116,7 +121,11 @@ public class XBayaMenuItem {
private XBayaToolBar toolBar;
- private ToolbarButton saveToolBarButton;
+ private ToolbarButton toolbarButtonSave;
+
+ private ToolbarButton toolbarButtonOpen;
+
+ private ToolbarButton toolbarButtonNew;
private static final String FILE_ACTIONS="file";
@@ -141,7 +150,7 @@ public class XBayaMenuItem {
this.exitItem = createExitItem();
createFileMenu();
-
+ engine.getConfiguration().registerExecutionModeChangeListener(this);
XBayaToolBar.setGroupOrder(FILE_ACTIONS, 1);
}
@@ -243,6 +252,7 @@ public class XBayaMenuItem {
@Override
public void menuCanceled(MenuEvent e) {}
});
+ executionModeChanged(engine.getConfiguration());
}
/**
@@ -368,7 +378,7 @@ public class XBayaMenuItem {
}
};
menuItem.addActionListener(action);
- getToolBar().addToolbarButton(FILE_ACTIONS,menuItem.getText(), MenuIcons.NEW_ICON, "Create new workflow", action,1);
+ toolbarButtonNew=getToolBar().addToolbarButton(FILE_ACTIONS,menuItem.getText(), MenuIcons.NEW_ICON, "Create new workflow", action,1);
return menuItem;
}
@@ -423,7 +433,7 @@ public class XBayaMenuItem {
}
};
this.openWorkflowItem.addActionListener(action);
- getToolBar().addToolbarButton(FILE_ACTIONS,openWorkflowItem.getText(), MenuIcons.OPEN_ICON, "Open workflow", action,2);
+ toolbarButtonOpen=getToolBar().addToolbarButton(FILE_ACTIONS,openWorkflowItem.getText(), MenuIcons.OPEN_ICON, "Open workflow", action,2);
}
private void createSaveWorkflowItem() {
@@ -434,12 +444,12 @@ public class XBayaMenuItem {
private static final long serialVersionUID = 1L;
public void actionPerformed(ActionEvent e) {
XBayaMenuItem.this.graphFiler.saveWorkflow();
- saveToolBarButton.setEnabled(isSaveShouldBeActive());
+ toolbarButtonSave.setEnabled(isSaveShouldBeActive());
}
};
saveWorkflowItem.addActionListener(action);
- saveToolBarButton = getToolBar().addToolbarButton(FILE_ACTIONS,saveWorkflowItem.getText(), MenuIcons.SAVE_ICON, "Save workflow", action,3);
- saveToolBarButton.setEnabled(false);
+ toolbarButtonSave = getToolBar().addToolbarButton(FILE_ACTIONS,saveWorkflowItem.getText(), MenuIcons.SAVE_ICON, "Save workflow", action,3);
+ toolbarButtonSave.setEnabled(false);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
while(engine.getGUI()==null){
@@ -448,7 +458,7 @@ public class XBayaMenuItem {
engine.getGUI().addWorkflowTabChangeListener(new ChangeListener(){
@Override
public void stateChanged(ChangeEvent event) {
- saveToolBarButton.setEnabled(isSaveShouldBeActive());
+ toolbarButtonSave.setEnabled(isSaveShouldBeActive());
}
});
}
@@ -575,4 +585,11 @@ public class XBayaMenuItem {
private boolean isWorkflowTabPresent() {
return engine.getGUI().getGraphCanvas() !=null;
}
+
+ @Override
+ public void executionModeChanged(XBayaConfiguration config) {
+ toolbarButtonNew.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ toolbarButtonSave.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ toolbarButtonOpen.setVisible(config.getXbayaExecutionMode()==XBayaExecutionMode.IDE);
+ }
}
\ No newline at end of file