Author: adietish
Date: 2011-01-07 11:56:22 -0500 (Fri, 07 Jan 2011)
New Revision: 27990
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java
Log:
[JBIDE-7557] implemented capability to stop the running instances out of a bunch of
instances (running and stopped ones)
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2011-01-07 16:50:37
UTC (rev 27989)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2011-01-07 16:56:22
UTC (rev 27990)
@@ -1,11 +1,15 @@
2011-01-07 André Dietisheim <André Dietisheim@adietisheim-thinkpad>
+ * plugin.xml:
+ * src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java
+ (stopWithDialog):
+ (getRunningInstances):
+ [JBIDE-7557] implemented capability to stop the running instances out of a bunch of
instances (running and stopped ones)
* src/org/jboss/tools/deltacloud/ui/commands/StartInstanceHandler.java
(startWithDialog):
(getStoppedInstances):
[JBIDE-7557] implemented capability to start the stopped instances out of a bunch of
instances (running and stopped ones)
-
- * plugin.xml:
+
* src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java (execute):
[JBIDE-7916] added ability to refresh several clouds
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml 2011-01-07 16:50:37
UTC (rev 27989)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml 2011-01-07 16:56:22
UTC (rev 27990)
@@ -201,25 +201,17 @@
<handler
class="org.jboss.tools.deltacloud.ui.commands.StopInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.stopinstance">
- <activeWhen>
+ <enabledWhen>
<with
variable="selection">
- <iterate operator="and">
- <and>
- <adapt
-
type="org.jboss.tools.deltacloud.core.DeltaCloudInstance">
- <test property="org.jboss.tools.deltacloud.ui.commands.canStop"
+ <iterate operator="or">
+ <adapt
+ type="org.jboss.tools.deltacloud.core.DeltaCloudInstance">
+ <test property="org.jboss.tools.deltacloud.ui.commands.canStop"
value="true"/>
- </adapt>
- </and>
+ </adapt>
</iterate>
</with>
- </activeWhen>
- <enabledWhen>
- <with
- variable="selection">
- <count value="+" />
- </with>
</enabledWhen>
</handler>
<handler
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java 2011-01-07
16:50:37 UTC (rev 27989)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java 2011-01-07
16:56:22 UTC (rev 27990)
@@ -10,6 +10,7 @@
******************************************************************************/
package org.jboss.tools.deltacloud.ui.commands;
+import java.util.ArrayList;
import java.util.List;
import org.eclipse.core.commands.ExecutionEvent;
@@ -60,17 +61,28 @@
private void stopWithDialog(IStructuredSelection selection) {
List<DeltaCloudInstance> deltaCloudInstances =
UIUtils.adapt((List<DeltaCloudInstance>) selection.toList(),
DeltaCloudInstance.class);
+ List<DeltaCloudInstance> runningInstances =
getRunningInstances(deltaCloudInstances);
DeltaCloudInstanceDialog dialog = new DeltaCloudInstanceDialog(
UIUtils.getActiveShell()
- , deltaCloudInstances
+ , runningInstances
, CVMessages.getString(STOP_INSTANCES_DIALOG_TITLE)
, CVMessages.getString(STOP_INSTANCES_DIALOG_MSG));
- dialog.setInitialElementSelections(deltaCloudInstances);
+ dialog.setInitialElementSelections(runningInstances);
if (Dialog.OK == dialog.open()) {
stopInstances(dialog.getResult());
}
}
+ private List<DeltaCloudInstance>
getRunningInstances(List<DeltaCloudInstance> deltaCloudInstances) {
+ ArrayList<DeltaCloudInstance> stoppedInstances = new
ArrayList<DeltaCloudInstance>();
+ for (DeltaCloudInstance instance : deltaCloudInstances) {
+ if (instance.isRunning()) {
+ stoppedInstances.add(instance);
+ }
+ }
+ return stoppedInstances;
+ }
+
private void stopInstances(Object[] deltaCloudInstances) {
for (int i = 0; i < deltaCloudInstances.length; i++) {
stopInstance((DeltaCloudInstance) deltaCloudInstances[i]);