Author: adietish
Date: 2011-01-05 10:05:26 -0500 (Wed, 05 Jan 2011)
New Revision: 27915
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/EditCloudConnectionWizard.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ImageFilterWizard.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/InstanceFilterWizard.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionWizard.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstanceWizard.java
Log:
[JBIDE-7294] hunting down the cases where alias get lost
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -38,7 +38,6 @@
public class DeltaCloud extends ObservablePojo {
public static final String PROP_INSTANCES = "instances";
- public static final String PROP_INSTANCES_ADDED = "instancesAdded";
public static final String PROP_INSTANCES_REMOVED = "instancesRemoved";
public static final String PROP_IMAGES = "images";
public static final String PROP_NAME = "name";
@@ -102,14 +101,17 @@
boolean nameChanged = updateName(name);
boolean connectionPropertiesChanged = updateConnectionProperties(url, username,
password);
+ if (connectionPropertiesChanged) {
+ client = createClient(url, username, password);
+ loadChildren();
+ }
+
if (nameChanged || connectionPropertiesChanged) {
this.passwordStore.update(new DeltaCloudPasswordStorageKey(name, username),
password);
+ // TODO: move to notification based approach
+ DeltaCloudManager.getDefault().saveClouds();
}
- if (connectionPropertiesChanged) {
- client = createClient(url, username, password);
- loadChildren();
- }
}
private boolean updateName(String name) {
@@ -218,6 +220,7 @@
// notifying the changed instance
firePropertyChange(
PROP_INSTANCES, getInstancesRepository().get(), getInstancesRepository().get());
+ DeltaCloudManager.getDefault().saveClouds();
}
}
@@ -247,6 +250,8 @@
// TODO: remove notification with all instanceRepo, replace by
// notifying the changed instance
firePropertyChange(PROP_IMAGES, getImagesRepository().get(),
getImagesRepository().get());
+ // TODO: move to notification based approach
+ DeltaCloudManager.getDefault().saveClouds();
}
}
@@ -580,7 +585,8 @@
// TODO: remove notification with all instanceRepo, replace by
// notifying the changed instance
firePropertyChange(PROP_INSTANCES, instances, repo.get());
- firePropertyChange(PROP_INSTANCES_ADDED, null, deltaCloudInstance);
+ // TODO: move to notification based approach
+ DeltaCloudManager.getDefault().saveClouds();
return deltaCloudInstance;
}
} catch (DeltaCloudClientException e) {
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -167,7 +167,7 @@
}
// TODO: move to marshaler component
- public void saveClouds() throws DeltaCloudException {
+ protected void saveClouds() throws DeltaCloudException {
try {
File cloudFile = getOrCreateCloudFile();
PrintWriter p = new PrintWriter(new BufferedWriter(new FileWriter(cloudFile)));
@@ -209,13 +209,14 @@
private void printInstances(DeltaCloud d, PrintWriter printWriter) {
try {
for (DeltaCloudInstance instance : d.getInstances()) {
- DeltaCloudXMLBuilder.tag(DeltaCloudXMLBuilder.TAG_INSTANCE, printWriter);
- DeltaCloudXMLBuilder.attribute(DeltaCloudXMLBuilder.ATTR_ID, instance.getId(),
printWriter);
- DeltaCloudXMLBuilder.attribute(
- DeltaCloudXMLBuilder.ATTR_ALIAS,
StringUtils.null2EmptyString(instance.getAlias()),
- printWriter);
- DeltaCloudXMLBuilder.closeTag(printWriter);
- DeltaCloudXMLBuilder.endTag(DeltaCloudXMLBuilder.TAG_INSTANCE, printWriter);
+ String alias = instance.getAlias();
+ if (alias != null) {
+ DeltaCloudXMLBuilder.tag(DeltaCloudXMLBuilder.TAG_INSTANCE, printWriter);
+ DeltaCloudXMLBuilder.attribute(DeltaCloudXMLBuilder.ATTR_ID, instance.getId(),
printWriter);
+ DeltaCloudXMLBuilder.attribute(DeltaCloudXMLBuilder.ATTR_ALIAS, alias,
printWriter);
+ DeltaCloudXMLBuilder.closeTag(printWriter);
+ DeltaCloudXMLBuilder.endTag(DeltaCloudXMLBuilder.TAG_INSTANCE, printWriter);
+ }
}
} catch (DeltaCloudException e) {
// ignore
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/EditCloudConnectionWizard.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/EditCloudConnectionWizard.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/EditCloudConnectionWizard.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -13,7 +13,6 @@
import java.text.MessageFormat;
import org.jboss.tools.deltacloud.core.DeltaCloud;
-import org.jboss.tools.deltacloud.core.DeltaCloudManager;
import org.jboss.tools.deltacloud.core.Driver;
import org.jboss.tools.deltacloud.ui.ErrorUtils;
@@ -38,7 +37,6 @@
Driver driver = mainPage.getModel().getDriver();
try {
initialCloud.update(name, url, username, password, driver);
- DeltaCloudManager.getDefault().saveClouds();
} catch (Exception e) {
// TODO internationalize strings
ErrorUtils.handleError("Error",
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ImageFilterWizard.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ImageFilterWizard.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/ImageFilterWizard.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -12,7 +12,6 @@
import org.eclipse.jface.wizard.Wizard;
import org.jboss.tools.deltacloud.core.DeltaCloud;
-import org.jboss.tools.deltacloud.core.DeltaCloudManager;
import org.jboss.tools.deltacloud.ui.ErrorUtils;
/**
@@ -47,11 +46,11 @@
String descRule = mainPage.getDescRule();
try {
- cloud.updateImageFilter(nameRule + ";" + //$NON-NLS-1$
+ cloud.updateImageFilter(
+ nameRule + ";" + //$NON-NLS-1$
idRule + ";" + //$NON-NLS-1$
archRule + ";" + //$NON-NLS-1$
descRule);
- DeltaCloudManager.getDefault().saveClouds();
} catch (Exception e) {
// TODO: internationalize strings
ErrorUtils.handleError(
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/InstanceFilterWizard.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/InstanceFilterWizard.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/InstanceFilterWizard.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -13,7 +13,6 @@
import org.eclipse.jface.wizard.Wizard;
import org.eclipse.swt.widgets.Display;
import org.jboss.tools.deltacloud.core.DeltaCloud;
-import org.jboss.tools.deltacloud.core.DeltaCloudManager;
import org.jboss.tools.deltacloud.ui.ErrorUtils;
/**
@@ -57,7 +56,6 @@
keyNameRule + ";" + //$NON-NLS-1$
realmRule + ";" + //$NON-NLS-1$
profileRule);
- DeltaCloudManager.getDefault().saveClouds();
} catch (Exception e) {
// TODO: internationalize strings
ErrorUtils.handleError(
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionWizard.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionWizard.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewCloudConnectionWizard.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -116,7 +116,6 @@
try {
DeltaCloud newCloud = new DeltaCloud(name, url, username, password, driver);
DeltaCloudManager.getDefault().addCloud(newCloud);
- DeltaCloudManager.getDefault().saveClouds();
} catch (Exception e) {
// TODO internationalize strings
ErrorUtils
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstanceWizard.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstanceWizard.java 2011-01-05
14:58:46 UTC (rev 27914)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstanceWizard.java 2011-01-05
15:05:26 UTC (rev 27915)
@@ -23,7 +23,6 @@
import org.jboss.tools.deltacloud.core.DeltaCloudException;
import org.jboss.tools.deltacloud.core.DeltaCloudImage;
import org.jboss.tools.deltacloud.core.DeltaCloudInstance;
-import org.jboss.tools.deltacloud.core.DeltaCloudManager;
import org.jboss.tools.deltacloud.core.job.InstanceStateJob;
import org.jboss.tools.deltacloud.ui.Activator;
import org.jboss.tools.deltacloud.ui.DeltacloudUIExtensionManager;
@@ -56,6 +55,11 @@
public NewInstanceWizard(DeltaCloud cloud) {
this.cloud = cloud;
+ try {
+ this.image = cloud.getLastImage();
+ } catch (DeltaCloudException e) {
+ // ignore
+ }
}
public NewInstanceWizard(DeltaCloud cloud, DeltaCloudImage image) {
@@ -102,7 +106,6 @@
boolean result = false;
Exception e = null;
try {
- DeltaCloudManager.getDefault().saveClouds();
boolean dontShowDialog =
prefs.getBoolean(IDeltaCloudPreferenceConstants.DONT_CONFIRM_CREATE_INSTANCE,
false);
if (!dontShowDialog) {
@@ -126,26 +129,26 @@
instance = cloud.createInstance(name, imageId, realmId, profileId, keyId, memory,
storage);
if (instance != null) {
result = true;
- }
- if (instance != null
- && instance.getState().equals(DeltaCloudInstance.State.PENDING)) {
- // TODO use chained job? Maybe. But chainedJob needs to be moved
- ChainedJob first =
- new InstanceStateJob(
- WizardMessages.getFormattedString(STARTING_INSTANCE_TITLE, instance.getName()),
- instance,
- DeltaCloudInstance.State.RUNNING);
- first.setUser(true);
- ChainedJob last = first;
- ChainedJob temp;
- for (int i = 0; i < additionalPages.length; i++) {
- temp = additionalPages[i].getPerformFinishJob(instance);
- if (temp != null) {
- last.setNextJob(temp);
- last = temp;
+ if (instance.getState().equals(DeltaCloudInstance.State.PENDING)) {
+ // TODO use chained job? Maybe. But chainedJob needs to be
+ // moved
+ ChainedJob first =
+ new InstanceStateJob(
+ WizardMessages.getFormattedString(STARTING_INSTANCE_TITLE, instance.getName()),
+ instance,
+ DeltaCloudInstance.State.RUNNING);
+ first.setUser(true);
+ ChainedJob last = first;
+ ChainedJob temp;
+ for (int i = 0; i < additionalPages.length; i++) {
+ temp = additionalPages[i].getPerformFinishJob(instance);
+ if (temp != null) {
+ last.setNextJob(temp);
+ last = temp;
+ }
}
+ first.schedule();
}
- first.schedule();
}
} catch (DeltaCloudException ex) {
e = ex;