Author: adietish
Date: 2011-01-07 12:00:22 -0500 (Fri, 07 Jan 2011)
New Revision: 27991
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/RebootInstanceHandler.java
Log:
[JBIDE-7557] implemented capability to reboot 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:56:22
UTC (rev 27990)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2011-01-07 17:00:22
UTC (rev 27991)
@@ -1,6 +1,11 @@
2011-01-07 André Dietisheim <André Dietisheim@adietisheim-thinkpad>
* plugin.xml:
+ * src/org/jboss/tools/deltacloud/ui/commands/RebootInstanceHandler.java
+ (rebootWithDialog):
+ (getRunningInstances):
+ [JBIDE-7557] implemented capability to stop the running instances out of a bunch of
instances (running and stopped ones)
+ * plugin.xml:
* src/org/jboss/tools/deltacloud/ui/commands/StopInstanceHandler.java
(stopWithDialog):
(getRunningInstances):
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:56:22
UTC (rev 27990)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/plugin.xml 2011-01-07 17:00:22
UTC (rev 27991)
@@ -217,25 +217,17 @@
<handler
class="org.jboss.tools.deltacloud.ui.commands.RebootInstanceHandler"
commandId="org.jboss.tools.deltacloud.ui.rebootinstance">
- <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.canReboot"
+ <iterate operator="or">
+ <adapt
+ type="org.jboss.tools.deltacloud.core.DeltaCloudInstance">
+ <test property="org.jboss.tools.deltacloud.ui.commands.canReboot"
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/RebootInstanceHandler.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RebootInstanceHandler.java 2011-01-07
16:56:22 UTC (rev 27990)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RebootInstanceHandler.java 2011-01-07
17:00:22 UTC (rev 27991)
@@ -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 @@
@SuppressWarnings("unchecked")
private void rebootWithDialog(IStructuredSelection selection) {
List<DeltaCloudInstance> deltaCloudInstances =
UIUtils.adapt((List<DeltaCloudInstance>) selection.toList(),
DeltaCloudInstance.class);
+ List<DeltaCloudInstance> rebootableInstances =
getRebootableInstances(deltaCloudInstances);
DeltaCloudInstanceDialog dialog = new DeltaCloudInstanceDialog(
UIUtils.getActiveShell()
- , deltaCloudInstances
+ , rebootableInstances
, CVMessages.getString(REBOOT_INSTANCE_TITLE)
, CVMessages.getString(REBOOT_INSTANCE_MSG));
- dialog.setInitialElementSelections(deltaCloudInstances);
+ dialog.setInitialElementSelections(rebootableInstances);
if (Dialog.OK == dialog.open()) {
rebootInstances(dialog.getResult());
}
}
+ private List<DeltaCloudInstance>
getRebootableInstances(List<DeltaCloudInstance> deltaCloudInstances) {
+ ArrayList<DeltaCloudInstance> stoppedInstances = new
ArrayList<DeltaCloudInstance>();
+ for (DeltaCloudInstance instance : deltaCloudInstances) {
+ if (instance.canReboot()) {
+ stoppedInstances.add(instance);
+ }
+ }
+ return stoppedInstances;
+ }
+
private void rebootInstances(Object[] deltaCloudInstances) {
for (int i = 0; i < deltaCloudInstances.length; i++) {
rebootInstance((DeltaCloudInstance) deltaCloudInstances[i]);