BEGIN_PUBLIC
Migrate from soon-to-be-deprecated `propagateIfPossible` to equivalent `throwIfInstanceOf` and `throwIfUnchecked` calls.
END_PUBLIC
PiperOrigin-RevId: 613255415
Change-Id: I2653937ede09dce0f414ede99cf709ee9d6ae6cf
diff --git a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
index e13a338..bae75d9 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
@@ -13,6 +13,8 @@
// limitations under the License.
package com.google.devtools.build.lib.query2;
+import static com.google.common.base.Throwables.throwIfInstanceOf;
+import static com.google.common.base.Throwables.throwIfUnchecked;
import static com.google.common.collect.ImmutableSet.toImmutableSet;
import static com.google.common.util.concurrent.Futures.immediateVoidFuture;
import static com.google.common.util.concurrent.MoreExecutors.directExecutor;
@@ -22,7 +24,6 @@
import com.google.common.base.Preconditions;
import com.google.common.base.Predicate;
import com.google.common.base.Predicates;
-import com.google.common.base.Throwables;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
@@ -444,8 +445,9 @@
}
}
- Throwables.propagateIfPossible(
- throwableToThrow, QueryException.class, InterruptedException.class);
+ throwIfInstanceOf(throwableToThrow, QueryException.class);
+ throwIfInstanceOf(throwableToThrow, InterruptedException.class);
+ throwIfUnchecked(throwableToThrow);
}
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/TargetProviderForQueryEnvironment.java b/src/main/java/com/google/devtools/build/lib/runtime/TargetProviderForQueryEnvironment.java
index 65d8a16..1dc0986 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/TargetProviderForQueryEnvironment.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/TargetProviderForQueryEnvironment.java
@@ -13,8 +13,10 @@
// limitations under the License.
package com.google.devtools.build.lib.runtime;
+import static com.google.common.base.Throwables.throwIfInstanceOf;
+import static com.google.common.base.Throwables.throwIfUnchecked;
+
import com.google.common.base.Preconditions;
-import com.google.common.base.Throwables;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.events.ExtendedEventHandler;
@@ -72,7 +74,8 @@
if (exception != null) {
// PackageFunction should be catching, swallowing, and rethrowing all transitive
// errors as NoSuchPackageExceptions or constructing packages with errors.
- Throwables.propagateIfPossible(exception, NoSuchPackageException.class);
+ throwIfInstanceOf(exception, NoSuchPackageException.class);
+ throwIfUnchecked(exception);
throw new IllegalStateException("Unexpected Exception type from PackageValue for " + pkgId);
}
if (walkableGraph.isCycle(pkgId)) {
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePackageProviderBackedTargetPatternResolver.java b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePackageProviderBackedTargetPatternResolver.java
index 666202a..a800de8 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePackageProviderBackedTargetPatternResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/RecursivePackageProviderBackedTargetPatternResolver.java
@@ -13,6 +13,7 @@
// limitations under the License.
package com.google.devtools.build.lib.skyframe;
+import static com.google.common.base.Throwables.throwIfInstanceOf;
import static com.google.common.util.concurrent.Futures.immediateCancelledFuture;
import static com.google.common.util.concurrent.Futures.immediateFailedFuture;
import static com.google.common.util.concurrent.MoreExecutors.directExecutor;
@@ -212,7 +213,7 @@
callback,
MoreExecutors.newDirectExecutorService());
} catch (QueryException e) {
- Throwables.propagateIfPossible(e, exceptionClass);
+ throwIfInstanceOf(e, exceptionClass);
throw new IllegalStateException(e);
} catch (NoSuchPackageException e) {
// Can happen during a Skyframe no-keep-going evaluation.
diff --git a/src/main/java/com/google/devtools/build/lib/worker/SimpleWorkerPool.java b/src/main/java/com/google/devtools/build/lib/worker/SimpleWorkerPool.java
index 5435a0f..cc16ee9 100644
--- a/src/main/java/com/google/devtools/build/lib/worker/SimpleWorkerPool.java
+++ b/src/main/java/com/google/devtools/build/lib/worker/SimpleWorkerPool.java
@@ -13,7 +13,9 @@
// limitations under the License.
package com.google.devtools.build.lib.worker;
-import com.google.common.base.Throwables;
+import static com.google.common.base.Throwables.throwIfInstanceOf;
+import static com.google.common.base.Throwables.throwIfUnchecked;
+
import com.google.common.flogger.GoogleLogger;
import java.io.IOException;
import java.util.HashMap;
@@ -84,7 +86,9 @@
try {
return super.borrowObject(key);
} catch (Throwable t) {
- Throwables.propagateIfPossible(t, IOException.class, InterruptedException.class);
+ throwIfInstanceOf(t, IOException.class);
+ throwIfInstanceOf(t, InterruptedException.class);
+ throwIfUnchecked(t);
throw new RuntimeException("unexpected", t);
}
}
@@ -98,7 +102,8 @@
updateShrunkBy(key, obj.getWorkerId());
}
} catch (Throwable t) {
- Throwables.propagateIfPossible(t, InterruptedException.class);
+ throwIfInstanceOf(t, InterruptedException.class);
+ throwIfUnchecked(t);
throw new RuntimeException("unexpected", t);
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerPoolImpl.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerPoolImpl.java
index 6d346ef..7ea6b21 100644
--- a/src/main/java/com/google/devtools/build/lib/worker/WorkerPoolImpl.java
+++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerPoolImpl.java
@@ -13,7 +13,9 @@
// limitations under the License.
package com.google.devtools.build.lib.worker;
-import com.google.common.base.Throwables;
+import static com.google.common.base.Throwables.throwIfInstanceOf;
+import static com.google.common.base.Throwables.throwIfUnchecked;
+
import com.google.common.base.VerifyException;
import com.google.common.collect.ImmutableMap;
import com.google.common.flogger.GoogleLogger;
@@ -135,7 +137,8 @@
pool.setEvictionPolicy(evictionPolicy);
pool.evict();
} catch (Throwable t) {
- Throwables.propagateIfPossible(t, InterruptedException.class);
+ throwIfInstanceOf(t, InterruptedException.class);
+ throwIfUnchecked(t);
throw new VerifyException("unexpected", t);
}
}
@@ -152,7 +155,9 @@
try {
result = getPool(key).borrowObject(key);
} catch (Throwable t) {
- Throwables.propagateIfPossible(t, IOException.class, InterruptedException.class);
+ throwIfInstanceOf(t, IOException.class);
+ throwIfInstanceOf(t, InterruptedException.class);
+ throwIfUnchecked(t);
throw new RuntimeException("unexpected", t);
}
return result;
@@ -168,7 +173,8 @@
try {
getPool(key).invalidateObject(key, obj);
} catch (Throwable t) {
- Throwables.propagateIfPossible(t, InterruptedException.class);
+ throwIfInstanceOf(t, InterruptedException.class);
+ throwIfUnchecked(t);
throw new RuntimeException("unexpected", t);
}
}