aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/remote
diff options
context:
space:
mode:
authorGravatar buchgr <buchgr@google.com>2017-07-07 04:43:58 -0400
committerGravatar John Cater <jcater@google.com>2017-07-07 07:09:01 -0400
commit12a6a7a7536b063f923d53eb9f6c244849b69fc5 (patch)
tree9bde923a1634c5b6ab62a720ece30f41d3a439e4 /src/main/java/com/google/devtools/build/lib/remote
parent87250d979d3622bc3fdb6095799a668841a2b152 (diff)
remote: Make RetryException aware of gRPC's StatusException.
RELNOTES: None. PiperOrigin-RevId: 161179228
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/remote')
-rw-r--r--src/main/java/com/google/devtools/build/lib/remote/RetryException.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/remote/RetryException.java b/src/main/java/com/google/devtools/build/lib/remote/RetryException.java
index 6e9890afd6..24ddd365bd 100644
--- a/src/main/java/com/google/devtools/build/lib/remote/RetryException.java
+++ b/src/main/java/com/google/devtools/build/lib/remote/RetryException.java
@@ -15,6 +15,7 @@
package com.google.devtools.build.lib.remote;
import io.grpc.Status.Code;
+import io.grpc.StatusException;
import io.grpc.StatusRuntimeException;
import java.io.IOException;
@@ -32,8 +33,12 @@ public final class RetryException extends IOException {
}
public boolean causedByStatusCode(Code code) {
- return getCause() instanceof StatusRuntimeException
- && ((StatusRuntimeException) getCause()).getStatus().getCode() == code;
+ if (getCause() instanceof StatusRuntimeException) {
+ return ((StatusRuntimeException) getCause()).getStatus().getCode() == code;
+ } else if (getCause() instanceof StatusException) {
+ return ((StatusException) getCause()).getStatus().getCode() == code;
+ }
+ return false;
}
@Override