You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by ge...@apache.org on 2017/07/19 16:25:57 UTC
[27/39] brooklyn-server git commit: better error messages and
warnings around catalog item failures
better error messages and warnings around catalog item failures
many caused by misleading impl of propagate(msg, err), deprecate that for a version to let us fix
Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/f344430e
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/f344430e
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/f344430e
Branch: refs/heads/master
Commit: f344430e46b55065e1b95bcf1a297f3395afed2a
Parents: d7ebb6b
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Wed Jun 7 23:40:09 2017 +0100
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Thu Jul 6 15:01:56 2017 +0100
----------------------------------------------------------------------
.../core/catalog/internal/CatalogBundleLoader.java | 2 +-
.../brooklyn/core/catalog/internal/CatalogDo.java | 2 +-
.../catalog/internal/CatalogInitialization.java | 16 ++++++++++------
.../core/catalog/internal/CatalogUtils.java | 2 +-
.../mgmt/persist/FileBasedStoreObjectAccessor.java | 8 ++++----
.../brooklyn/core/mgmt/rebind/RebindIteration.java | 10 +++++-----
.../brooklyn/core/objs/proxy/InternalFactory.java | 2 +-
.../apache/brooklyn/util/core/ResourceUtils.java | 2 +-
.../brooklyn/util/core/osgi/BundleMaker.java | 10 +++++-----
.../persist/deserializingClassRenames.properties | 2 ++
.../brooklyn/location/jclouds/JcloudsLocation.java | 4 ++--
.../main/java/org/apache/brooklyn/cli/Main.java | 2 +-
.../brooklyn/util/exceptions/Exceptions.java | 17 +++++++++++++++--
.../brooklyn/util/exceptions/ExceptionsTest.java | 8 ++++----
14 files changed, 53 insertions(+), 34 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogBundleLoader.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogBundleLoader.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogBundleLoader.java
index 90bc628..e55617a 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogBundleLoader.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogBundleLoader.java
@@ -163,7 +163,7 @@ public class CatalogBundleLoader {
try (final InputStream ins = bom.openStream()) {
return Streams.readFullyString(ins);
} catch (IOException e) {
- throw Exceptions.propagate("Error loading Catalog BOM from " + bom, e);
+ throw Exceptions.propagateAnnotated("Error loading Catalog BOM from " + bom, e);
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogDo.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogDo.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogDo.java
index 4852929..39cc8d2 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogDo.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogDo.java
@@ -137,7 +137,7 @@ public class CatalogDo {
} catch (Exception e) {
Exceptions.propagateIfFatal(e);
if (failOnLoadError) {
- Exceptions.propagate(e);
+ Exceptions.propagateAnnotated("Loading bundles for catalog item " + entry.getCatalogItemId() + " failed", e);
} else {
log.error("Loading bundles for catalog item " + entry + " failed: " + e.getMessage(), e);
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogInitialization.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogInitialization.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogInitialization.java
index 45e7e7a..f906344 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogInitialization.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogInitialization.java
@@ -34,6 +34,7 @@ import org.apache.brooklyn.util.core.ResourceUtils;
import org.apache.brooklyn.util.core.flags.TypeCoercions;
import org.apache.brooklyn.util.exceptions.Exceptions;
import org.apache.brooklyn.util.exceptions.FatalRuntimeException;
+import org.apache.brooklyn.util.exceptions.PropagatedRuntimeException;
import org.apache.brooklyn.util.exceptions.RuntimeInterruptedException;
import org.apache.brooklyn.util.guava.Maybe;
import org.apache.brooklyn.util.javalang.JavaClassNames;
@@ -394,15 +395,18 @@ public class CatalogInitialization implements ManagementContextInjectable {
if (throwable instanceof RuntimeInterruptedException)
throw (RuntimeInterruptedException) throwable;
- String throwableText = Exceptions.collapseText(throwable);
- log.error("Error loading catalog item '"+details+"': "+throwableText);
- log.debug("Trace for error loading catalog item '"+details+"': "+throwableText, throwable);
+ if (details instanceof CatalogItem) {
+ if (((CatalogItem<?,?>)details).getCatalogItemId() != null) {
+ details = ((CatalogItem<?,?>)details).getCatalogItemId();
+ }
+ }
+ PropagatedRuntimeException wrap = new PropagatedRuntimeException("Error loading catalog item "+details, throwable);
+ log.debug("Trace for: "+wrap, wrap);
- // TODO give more detail when adding
- ((ManagementContextInternal)getManagementContext()).errors().add(throwable);
+ ((ManagementContextInternal)getManagementContext()).errors().add(wrap);
if (isStartingUp && failOnStartupErrors) {
- throw new FatalRuntimeException("Unable to load catalog item '"+details+"': "+throwableText, throwable);
+ throw new FatalRuntimeException("Unable to load catalog item "+details, wrap);
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
index 81cbbcf..7fa3631 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
@@ -396,7 +396,7 @@ public class CatalogUtils {
if (!didSomething) {
// TODO review what to do here
- log.warn("Can't find catalog item " + itemId);
+ log.warn("Can't find catalog item " + itemId+"; ignoring, but a search path may be incomplete and other errors may follow");
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/FileBasedStoreObjectAccessor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/FileBasedStoreObjectAccessor.java b/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/FileBasedStoreObjectAccessor.java
index 2028c43..a8d7cf1 100644
--- a/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/FileBasedStoreObjectAccessor.java
+++ b/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/FileBasedStoreObjectAccessor.java
@@ -58,7 +58,7 @@ public class FileBasedStoreObjectAccessor implements PersistenceObjectStore.Stor
if (!exists()) return null;
return Files.asCharSource(file, Charsets.UTF_8).read();
} catch (IOException e) {
- throw Exceptions.propagate("Problem reading String contents of file "+file, e);
+ throw Exceptions.propagateAnnotated("Problem reading String contents of file "+file, e);
}
}
@@ -68,7 +68,7 @@ public class FileBasedStoreObjectAccessor implements PersistenceObjectStore.Stor
if (!exists()) return null;
return Files.asByteSource(file).read();
} catch (IOException e) {
- throw Exceptions.propagate("Problem reading bytes of file "+file, e);
+ throw Exceptions.propagateAnnotated("Problem reading bytes of file "+file, e);
}
}
@@ -90,7 +90,7 @@ public class FileBasedStoreObjectAccessor implements PersistenceObjectStore.Stor
Streams.copyClose(bytes.openStream(), new FileOutputStream(tmpFile));
FileBasedObjectStore.moveFile(tmpFile, file);
} catch (IOException e) {
- throw Exceptions.propagate("Problem writing data to file "+file+" (via temporary file "+tmpFile+")", e);
+ throw Exceptions.propagateAnnotated("Problem writing data to file "+file+" (via temporary file "+tmpFile+")", e);
} catch (InterruptedException e) {
throw Exceptions.propagate(e);
}
@@ -105,7 +105,7 @@ public class FileBasedStoreObjectAccessor implements PersistenceObjectStore.Stor
Files.append(val, file, Charsets.UTF_8);
} catch (IOException e) {
- throw Exceptions.propagate("Problem appending to file "+file, e);
+ throw Exceptions.propagateAnnotated("Problem appending to file "+file, e);
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindIteration.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindIteration.java b/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindIteration.java
index 6ee3dc7..0bde0d1 100644
--- a/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindIteration.java
+++ b/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindIteration.java
@@ -1063,7 +1063,7 @@ public abstract class RebindIteration {
reboundSearchPath.add(fixedSearchItemId);
} else {
LOG.warn("Unable to load catalog item "+ searchItemId
- +" for search path of "+contextSuchAsId + " (" + bType.getSimpleName()+"); attempting load nevertheless");
+ + " for search path of "+contextSuchAsId + " (" + bType.getSimpleName()+"); attempting to load "+jType+" nevertheless");
}
}
}
@@ -1091,7 +1091,7 @@ public abstract class RebindIteration {
return new LoadedClass<T>(loader.loadClass(jType, bType), transformedCatalogItemId, reboundSearchPath);
} catch (Exception e) {
Exceptions.propagateIfFatal(e);
- LOG.warn("Unable to load "+jType+" using loader; will try reflections");
+ LOG.warn("Unable to load class "+jType+" needed for "+catalogItemId+" for "+contextSuchAsId+", via "+transformedCatalogItemId+" loader (will try reflections)");
}
} else {
LOG.warn("Unable to load catalog item "+catalogItemId+" ("+bType+") for " + contextSuchAsId +
@@ -1103,12 +1103,12 @@ public abstract class RebindIteration {
return new LoadedClass<T>((Class<T>)loadClass(jType), catalogItemId, reboundSearchPath);
} catch (Exception e) {
Exceptions.propagateIfFatal(e);
- LOG.warn("Unable to load "+jType+" using reflections; will try standard context");
+ LOG.warn("Unable to load class "+jType+" needed for "+catalogItemId+" for "+contextSuchAsId+", via reflections (may try others, will throw if fails)");
}
if (catalogItemId != null) {
- throw new IllegalStateException("Unable to load catalog item " + catalogItemId + " for " +
- contextSuchAsId + ", or load class from classpath");
+ throw new IllegalStateException("Unable to load "+jType+" for catalog item " + catalogItemId + " for " + contextSuchAsId);
+
} else if (BrooklynFeatureEnablement.isEnabled(FEATURE_BACKWARDS_COMPATIBILITY_INFER_CATALOG_ITEM_ON_REBIND)) {
//Try loading from whichever catalog bundle succeeds.
BrooklynCatalog catalog = managementContext.getCatalog();
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/core/objs/proxy/InternalFactory.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/objs/proxy/InternalFactory.java b/core/src/main/java/org/apache/brooklyn/core/objs/proxy/InternalFactory.java
index 4af0900..fec97f2 100644
--- a/core/src/main/java/org/apache/brooklyn/core/objs/proxy/InternalFactory.java
+++ b/core/src/main/java/org/apache/brooklyn/core/objs/proxy/InternalFactory.java
@@ -121,7 +121,7 @@ public class InternalFactory {
return special.newInstance().create(managementContext, clazz, spec);
} catch (Exception e) {
Exceptions.propagateIfFatal(e);
- throw Exceptions.propagate("Unable to create "+clazz+" "+spec+" using special "+special, e);
+ throw Exceptions.propagateAnnotated("Unable to create "+clazz+" "+spec+" using special "+special, e);
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/util/core/ResourceUtils.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/util/core/ResourceUtils.java b/core/src/main/java/org/apache/brooklyn/util/core/ResourceUtils.java
index 813bae2..88bb4ad 100644
--- a/core/src/main/java/org/apache/brooklyn/util/core/ResourceUtils.java
+++ b/core/src/main/java/org/apache/brooklyn/util/core/ResourceUtils.java
@@ -293,7 +293,7 @@ public class ResourceUtils {
throw new IOException("'"+orig+"' not found on classpath or filesystem");
} catch (Exception e) {
if (context!=null) {
- throw Exceptions.propagate("Error getting resource '"+url+"' for "+context, e);
+ throw Exceptions.propagateAnnotated("Error getting resource '"+url+"' for "+context, e);
} else {
throw Exceptions.propagate(e);
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/java/org/apache/brooklyn/util/core/osgi/BundleMaker.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/util/core/osgi/BundleMaker.java b/core/src/main/java/org/apache/brooklyn/util/core/osgi/BundleMaker.java
index 37aa5a1..9116c0e 100644
--- a/core/src/main/java/org/apache/brooklyn/util/core/osgi/BundleMaker.java
+++ b/core/src/main/java/org/apache/brooklyn/util/core/osgi/BundleMaker.java
@@ -114,7 +114,7 @@ public class BundleMaker {
return f;
} catch (Exception e) {
- throw Exceptions.propagate("Error creating ZIP from classpath spec "+path, e);
+ throw Exceptions.propagateAnnotated("Error creating ZIP from classpath spec "+path, e);
} finally {
Streams.closeQuietly(zout);
@@ -136,7 +136,7 @@ public class BundleMaker {
jf = new JarFile(f);
return jf.getManifest();
} catch (IOException e) {
- throw Exceptions.propagate("Unable to read "+f+" when looking for manifest", e);
+ throw Exceptions.propagateAnnotated("Unable to read "+f+" when looking for manifest", e);
} finally {
Streams.closeQuietly(jf);
}
@@ -164,7 +164,7 @@ public class BundleMaker {
zout = new JarOutputStream(new FileOutputStream(f2), mf);
writeZipEntriesFromFile(zout, f, Predicates.not(Predicates.equalTo(MANIFEST_PATH)));
} catch (IOException e) {
- throw Exceptions.propagate("Unable to read "+f+" when looking for manifest", e);
+ throw Exceptions.propagateAnnotated("Unable to read "+f+" when looking for manifest", e);
} finally {
Streams.closeQuietly(zf);
Streams.closeQuietly(zout);
@@ -226,7 +226,7 @@ public class BundleMaker {
return f2;
} catch (IOException e) {
- throw Exceptions.propagate("Unable to read "+f+" when looking for manifest", e);
+ throw Exceptions.propagateAnnotated("Unable to read "+f+" when looking for manifest", e);
} finally {
Streams.closeQuietly(zf);
Streams.closeQuietly(zout);
@@ -285,7 +285,7 @@ public class BundleMaker {
return b;
} catch (Exception e) {
- throw Exceptions.propagate("Error starting bundle from "+f, e);
+ throw Exceptions.propagateAnnotated("Error starting bundle from "+f, e);
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/core/src/main/resources/org/apache/brooklyn/core/mgmt/persist/deserializingClassRenames.properties
----------------------------------------------------------------------
diff --git a/core/src/main/resources/org/apache/brooklyn/core/mgmt/persist/deserializingClassRenames.properties b/core/src/main/resources/org/apache/brooklyn/core/mgmt/persist/deserializingClassRenames.properties
index 8a6a7a4..c0dc264 100644
--- a/core/src/main/resources/org/apache/brooklyn/core/mgmt/persist/deserializingClassRenames.properties
+++ b/core/src/main/resources/org/apache/brooklyn/core/mgmt/persist/deserializingClassRenames.properties
@@ -1450,3 +1450,5 @@ brooklyn.networking.vclouddirector.PortForwardingConfig
org.apache.brooklyn.feed.ssh.SshFeed$SshPollIdentifier : org.apache.brooklyn.feed.AbstractCommandFeed$CommandPollIdentifier
org.apache.brooklyn.feed.ssh.SshPollConfig$CombiningEnvSupplier : org.apache.brooklyn.feed.CommandPollConfig$CombiningEnvSupplier
+
+com.usharesoft.cloudsoft.SoftwareFromStack : com.usharesoft.cloudsoft.entities-from-uforge:com.usharesoft.cloudsoft.SoftwareFromStack
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/locations/jclouds/src/main/java/org/apache/brooklyn/location/jclouds/JcloudsLocation.java
----------------------------------------------------------------------
diff --git a/locations/jclouds/src/main/java/org/apache/brooklyn/location/jclouds/JcloudsLocation.java b/locations/jclouds/src/main/java/org/apache/brooklyn/location/jclouds/JcloudsLocation.java
index c0d419c..e975520 100644
--- a/locations/jclouds/src/main/java/org/apache/brooklyn/location/jclouds/JcloudsLocation.java
+++ b/locations/jclouds/src/main/java/org/apache/brooklyn/location/jclouds/JcloudsLocation.java
@@ -2392,10 +2392,10 @@ public class JcloudsLocation extends AbstractCloudMachineProvisioningLocation im
try {
return pollForFirstReachableHostAndPortPredicate = predicateType.newInstance();
} catch (IllegalAccessException | InstantiationException newInstanceException) {
- throw Exceptions.propagate("Failed to instantiate " + predicateType, newInstanceException);
+ throw Exceptions.propagateAnnotated("Failed to instantiate " + predicateType, newInstanceException);
}
} catch (InvocationTargetException | InstantiationException e) {
- throw Exceptions.propagate("Failed to instantiate " + predicateType + " with Map constructor", e);
+ throw Exceptions.propagateAnnotated("Failed to instantiate " + predicateType + " with Map constructor", e);
}
}
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/server-cli/src/main/java/org/apache/brooklyn/cli/Main.java
----------------------------------------------------------------------
diff --git a/server-cli/src/main/java/org/apache/brooklyn/cli/Main.java b/server-cli/src/main/java/org/apache/brooklyn/cli/Main.java
index f68f142..606a2a1 100644
--- a/server-cli/src/main/java/org/apache/brooklyn/cli/Main.java
+++ b/server-cli/src/main/java/org/apache/brooklyn/cli/Main.java
@@ -433,7 +433,7 @@ public class Main extends AbstractMain {
try {
populateCatalog(catInit.getManagementContext().getCatalog());
} catch (Throwable e) {
- catInit.handleException(e, "overridden main class populate catalog");
+ catInit.handleException(e, "in main class populate catalog override");
}
// Force load of catalog (so web console is up to date)
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/utils/common/src/main/java/org/apache/brooklyn/util/exceptions/Exceptions.java
----------------------------------------------------------------------
diff --git a/utils/common/src/main/java/org/apache/brooklyn/util/exceptions/Exceptions.java b/utils/common/src/main/java/org/apache/brooklyn/util/exceptions/Exceptions.java
index 5487072..82fcce7 100644
--- a/utils/common/src/main/java/org/apache/brooklyn/util/exceptions/Exceptions.java
+++ b/utils/common/src/main/java/org/apache/brooklyn/util/exceptions/Exceptions.java
@@ -130,17 +130,30 @@ public class Exceptions {
}
/**
+ * Convenience for {@link #propagateAnnotateIfWrapping(String, Throwable)}.
+ *
+ * @deprecated since 0.12.0 behaviour will change (default should be to always wrap and annotate);
+ * for now users should review and switch to either
+ * {@link #propagateAnnotated(String, Throwable)} or {@link #propagateAnnotateIfWrapping(String, Throwable)} as appropriate.
+ */
+ @Deprecated
+ public static RuntimeException propagate(String msg, Throwable throwable) {
+ return propagate(msg, throwable, false);
+ }
+
+ /**
* See {@link #propagate(Throwable)}.
* <p>
* The given message is included <b>only</b> if the given {@link Throwable}
* needs to be wrapped; otherwise the message is not used.
* To always include the message, use {@link #propagateAnnotated(String, Throwable)}.
*/
- public static RuntimeException propagate(String msg, Throwable throwable) {
+ public static RuntimeException propagateAnnotateIfWrapping(String msg, Throwable throwable) {
return propagate(msg, throwable, false);
}
- /** As {@link #propagate(String, Throwable)} but always re-wraps including the given message. */
+ /** As {@link #propagate(String)} but always re-wraps including the given message.
+ * See {@link #propagateAnnotateIfWrapping(String, Throwable)} if the message is optional. */
public static RuntimeException propagateAnnotated(String msg, Throwable throwable) {
return propagate(msg, throwable, true);
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/f344430e/utils/common/src/test/java/org/apache/brooklyn/util/exceptions/ExceptionsTest.java
----------------------------------------------------------------------
diff --git a/utils/common/src/test/java/org/apache/brooklyn/util/exceptions/ExceptionsTest.java b/utils/common/src/test/java/org/apache/brooklyn/util/exceptions/ExceptionsTest.java
index 272d3f6..345db93 100644
--- a/utils/common/src/test/java/org/apache/brooklyn/util/exceptions/ExceptionsTest.java
+++ b/utils/common/src/test/java/org/apache/brooklyn/util/exceptions/ExceptionsTest.java
@@ -65,7 +65,7 @@ public class ExceptionsTest {
String extraMsg = "my message";
Exception tothrow = new Exception("simulated");
try {
- throw Exceptions.propagate(extraMsg, tothrow);
+ throw Exceptions.propagateAnnotateIfWrapping(extraMsg, tothrow);
} catch (RuntimeException e) {
assertEquals(e.getMessage(), "my message");
assertEquals(e.getCause(), tothrow);
@@ -76,7 +76,7 @@ public class ExceptionsTest {
public void testPropagateRuntimeExceptionIgnoresMessage() throws Exception {
NullPointerException tothrow = new NullPointerException("simulated");
try {
- throw Exceptions.propagate("my message", tothrow);
+ throw Exceptions.propagateAnnotateIfWrapping("my message", tothrow);
} catch (NullPointerException e) {
assertEquals(e, tothrow);
}
@@ -257,14 +257,14 @@ public class ExceptionsTest {
@Test
public void testPropagateWithAnnotationNotExplicitIncludedWhenWrapped() throws Exception {
Throwable t = new Throwable("test");
- try { Exceptions.propagate("important", t); } catch (Throwable t2) { t = t2; }
+ try { Exceptions.propagateAnnotateIfWrapping("important", t); } catch (Throwable t2) { t = t2; }
Assert.assertEquals(Exceptions.collapseText(t), "important: test");
}
@Test
public void testPropagateWithAnnotationNotExplicitIgnoredWhenNotWrapped() throws Exception {
Throwable t = new RuntimeException("test");
- try { Exceptions.propagate("ignore", t); } catch (Throwable t2) { t = t2; }
+ try { Exceptions.propagateAnnotateIfWrapping("ignore", t); } catch (Throwable t2) { t = t2; }
Assert.assertEquals(Exceptions.collapseText(t), "test");
}