Author: adietish
Date: 2010-11-17 10:37:27 -0500 (Wed, 17 Nov 2010)
New Revision: 26673
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/ErrorUtils.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java
Log:
[JBIDE-7597] corrected to handle multi exception (-status)
Modified: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-11-17 15:22:25
UTC (rev 26672)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/ChangeLog 2010-11-17 15:37:27
UTC (rev 26673)
@@ -1,5 +1,7 @@
2010-11-17 André Dietisheim <adietish(a)redhat.com>
+ * src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java (.run):
+ [JBIDE-7597] corrected to handle multi exceptions
* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstanceWizard2.java
(performFinish):
[JBIDE-7597] added saving of cloud instances
* src/org/jboss/tools/internal/deltacloud/ui/wizards/NewInstancePage2.java:
@@ -23,6 +25,7 @@
* src/org/jboss/tools/deltacloud/ui/ErrorUtils.java (createMultiStatus):
[JBIDE-7597] added multi status capabilities
(createStatus):
+ [JBIDE-7597] added public method to create multi status
2010-11-16 André Dietisheim <adietish(a)redhat.com>
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/ErrorUtils.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/ErrorUtils.java 2010-11-17
15:22:25 UTC (rev 26672)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/ErrorUtils.java 2010-11-17
15:37:27 UTC (rev 26673)
@@ -11,7 +11,6 @@
package org.jboss.tools.deltacloud.ui;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.List;
import org.eclipse.core.runtime.IStatus;
@@ -21,6 +20,9 @@
import org.jboss.tools.common.log.StatusFactory;
import org.jboss.tools.deltacloud.core.DeltaCloudMultiException;
+/**
+ * @author Andre Dietisheim
+ */
public class ErrorUtils {
public static IStatus openErrorDialog(final String title, final String message,
Throwable e, final Shell shell) {
IStatus status = createStatus(e);
@@ -30,7 +32,7 @@
private static IStatus createStatus(Throwable e) {
if (e instanceof DeltaCloudMultiException) {
- return createMultiStatus(e.getMessage(), e, ((DeltaCloudMultiException)
e).getThrowables());
+ return createMultiStatus((DeltaCloudMultiException) e);
} else {
return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID, e.getMessage(),
e);
}
@@ -44,13 +46,13 @@
});
return status;
}
-
- private static IStatus createMultiStatus(String message, Throwable throwable,
Collection<Throwable> throwables) {
- List<IStatus> states = new ArrayList<IStatus>(throwables.size());
- for(Throwable childThrowable : throwables) {
+
+ public static IStatus createMultiStatus(DeltaCloudMultiException throwable) {
+ List<IStatus> states = new
ArrayList<IStatus>(throwable.getThrowables().size());
+ for(Throwable childThrowable : throwable.getThrowables()) {
IStatus status = StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID,
childThrowable.getMessage(), childThrowable);
states.add(status);
}
- return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID, message,
throwable, states.toArray(new IStatus[states.size()]));
+ return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID,
throwable.getMessage(), throwable, states.toArray(new IStatus[states.size()]));
}
}
Modified:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java
===================================================================
---
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java 2010-11-17
15:22:25 UTC (rev 26672)
+++
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.ui/src/org/jboss/tools/deltacloud/ui/commands/RefreshCloudHandler.java 2010-11-17
15:37:27 UTC (rev 26673)
@@ -23,7 +23,9 @@
import org.eclipse.ui.handlers.HandlerUtil;
import org.jboss.tools.common.log.StatusFactory;
import org.jboss.tools.deltacloud.core.DeltaCloud;
+import org.jboss.tools.deltacloud.core.DeltaCloudMultiException;
import org.jboss.tools.deltacloud.ui.Activator;
+import org.jboss.tools.deltacloud.ui.ErrorUtils;
import org.jboss.tools.deltacloud.ui.views.CloudViewElement;
import org.jboss.tools.internal.deltacloud.ui.utils.CloudViewElementUtils;
import org.jboss.tools.internal.deltacloud.ui.utils.UIUtils;
@@ -55,6 +57,9 @@
protected IStatus run(IProgressMonitor monitor) {
try {
cloud.loadChildren();
+ } catch (DeltaCloudMultiException e) {
+ // TODO internationalize strings
+ return ErrorUtils.createMultiStatus(e);
} catch (Exception e) {
// TODO internationalize strings
return StatusFactory.getInstance(IStatus.ERROR, Activator.PLUGIN_ID, "Could
not load children of cloud " + cloud.getName(), e);