Author: jjohnstn
Date: 2010-09-08 14:07:48 -0400 (Wed, 08 Sep 2010)
New Revision: 24819
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/InstanceView.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
Log:
2010-09-08 Jeff Johnston <jjohnstn(a)redhat.com>
* src/org/jboss/tools/deltacloud/ui/views/InstanceView.java
(PerformInstanceActionThread.run): Register
action Job with cloud and cancel any currently running action Job.
(PerformDestroyInstanceActionThread.run): Ditto.
* src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java (createControl):
Perform
initial validate call.
* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
(WatchCreateJob.run): Register
action Job with cloud.
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-09-08 17:26:55
UTC (rev 24818)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-09-08 18:07:48
UTC (rev 24819)
@@ -1,3 +1,13 @@
+2010-09-08 Jeff Johnston <jjohnstn(a)redhat.com>
+
+ * src/org/jboss/tools/deltacloud/ui/views/InstanceView.java
(PerformInstanceActionThread.run): Register
+ action Job with cloud and cancel any currently running action Job.
+ (PerformDestroyInstanceActionThread.run): Ditto.
+ * src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java
(createControl): Perform
+ initial validate call.
+ * src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
(WatchCreateJob.run): Register
+ action Job with cloud.
+
2010-09-03 Jeff Johnston <jjohnstn(a)redhat.com>
* src/org/jboss/tools/deltacloud/ui/IDeltaCloudPreferenceConstants.java: Add constants
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/InstanceView.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/InstanceView.java 2010-09-08
17:26:55 UTC (rev 24818)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/views/InstanceView.java 2010-09-08
18:07:48 UTC (rev 24819)
@@ -348,12 +348,13 @@
@Override
public IStatus run(IProgressMonitor pm) {
+ String id = instance.getId();
try {
pm.beginTask(taskName, IProgressMonitor.UNKNOWN);
pm.worked(1);
// To handle the user starting a new action when we haven't confirmed the last
one yet,
// cancel the previous job and then go on performing this action
- Job job = currentPerformingActions.get(instance.getId());
+ Job job = cloud.getActionJob(id);
if (job != null) {
job.cancel();
try {
@@ -362,8 +363,8 @@
// do nothing, this is ok
}
}
- currentPerformingActions.put(instance.getId(), this);
- cloud.performInstanceAction(instance.getId(), action);
+ currentPerformingActions.put(id, this);
+ cloud.performInstanceAction(id, action);
while (instance != null && !(instance.getState().equals(expectedState))
&& !(instance.getState().equals(DeltaCloudInstance.TERMINATED))) {
instance = refreshInstance(instance);
@@ -376,6 +377,7 @@
} catch (DeltaCloudException e) {
// do nothing..action had problem executing..perhaps illegal
} finally {
+ cloud.removeActionJob(id, this);
pm.done();
}
return Status.OK_STATUS;
@@ -397,9 +399,22 @@
@Override
public IStatus run(IProgressMonitor pm) {
+ String id = instance.getId();
try {
pm.beginTask(taskName, IProgressMonitor.UNKNOWN);
pm.worked(1);
+ // To handle the user starting a new action when we haven't confirmed the last
one yet,
+ // cancel the previous job and then go on performing this action
+ Job job = cloud.getActionJob(id);
+ if (job != null) {
+ job.cancel();
+ try {
+ job.join();
+ } catch (InterruptedException e) {
+ // do nothing, this is ok
+ }
+ }
+ cloud.registerActionJob(id, this);
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
@@ -407,6 +422,7 @@
}
});
} finally {
+ cloud.removeActionJob(id, this);
pm.done();
}
return Status.OK_STATUS;
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java 2010-09-08
17:26:55 UTC (rev 24818)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ManageKeysPage.java 2010-09-08
18:07:48 UTC (rev 24819)
@@ -287,6 +287,7 @@
setControl(container);
loadFileList();
+ validate();
}
}
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java 2010-09-08
17:26:55 UTC (rev 24818)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstance.java 2010-09-08
18:07:48 UTC (rev 24819)
@@ -85,6 +85,7 @@
try {
pm.beginTask(WizardMessages.getFormattedString(STARTING_INSTANCE_MSG, new String[]
{instanceName}), IProgressMonitor.UNKNOWN);
pm.worked(1);
+ cloud.registerActionJob(instanceId, this);
boolean finished = false;
while (!finished && !pm.isCanceled()) {
instance = cloud.refreshInstance(instanceId);
@@ -96,9 +97,8 @@
} catch (Exception e) {
// do nothing
} finally {
- if (!pm.isCanceled()) {
- cloud.addReplaceInstance(instance);
- }
+ cloud.addReplaceInstance(instance);
+ cloud.removeActionJob(instanceId, this);
pm.done();
}
return Status.OK_STATUS;
Show replies by date