Skip to content

Commit 7498c51

Browse files
committed
removing declared interruptedexception
1 parent 1b1a26f commit 7498c51

File tree

8 files changed

+33
-28
lines changed

8 files changed

+33
-28
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
##### DSL Changes:
5656
- #3127 `StatusUpdatable.updateStatus` deprecated, please use patchStatus, editStatus, or replaceStatus
5757
- #3239 deprecated methods on SharedInformerFactory directly dealing with the OperationContext, withName, and withNamespace - the Informable interface should be used instead.
58-
- #3271 `Waitable.waitUntilReady` and `Waitable.waitUntilCondition` with throw a KubernetesClientTimeoutException instead of an IllegalArgumentException on timeout.
58+
- #3271 `Waitable.waitUntilReady` and `Waitable.waitUntilCondition` with throw a KubernetesClientTimeoutException instead of an IllegalArgumentException on timeout. The methods will also no longer throw an interrupted exception.
5959
`Waitable.withWaitRetryBackoff` and the associated constants are now deprecated.
6060

6161
##### Util Changes:

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/Waitable.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ public interface Waitable<T, P> {
3131
@Deprecated
3232
double DEFAULT_BACKOFF_MULTIPLIER = 2d;
3333

34-
T waitUntilReady(long amount, TimeUnit timeUnit) throws InterruptedException;
34+
T waitUntilReady(long amount, TimeUnit timeUnit);
3535

36-
T waitUntilCondition(Predicate<P> condition, long amount, TimeUnit timeUnit) throws InterruptedException;
36+
T waitUntilCondition(Predicate<P> condition, long amount, TimeUnit timeUnit);
3737

3838
/**
3939
* Configure the backoff strategy to use when waiting for conditions, in case the watcher encounters a retryable error.

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/base/BaseOperation.java

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -406,13 +406,7 @@ public final T createOrReplace(T... items) {
406406
this::create,
407407
this::replace,
408408
m -> {
409-
try {
410-
return waitUntilCondition(Objects::nonNull, 1, TimeUnit.SECONDS);
411-
} catch (InterruptedException interruptedException) {
412-
LOG.warn("Interrupted while waiting for the resource to be created or replaced. Gracefully assuming the resource has not been created and doesn't exist. ({})", interruptedException.getMessage());
413-
Thread.currentThread().interrupt();
414-
}
415-
return null;
409+
return waitUntilCondition(Objects::nonNull, 1, TimeUnit.SECONDS);
416410
},
417411
m -> fromServer().get()
418412
);
@@ -1113,14 +1107,12 @@ public final Boolean isReady() {
11131107
}
11141108

11151109
@Override
1116-
public T waitUntilReady(long amount, TimeUnit timeUnit) throws InterruptedException {
1110+
public T waitUntilReady(long amount, TimeUnit timeUnit) {
11171111
return waitUntilCondition(resource -> Objects.nonNull(resource) && getReadiness().isReady(resource), amount, timeUnit);
11181112
}
11191113

11201114
@Override
1121-
public T waitUntilCondition(Predicate<T> condition, long amount, TimeUnit timeUnit)
1122-
throws InterruptedException {
1123-
1115+
public T waitUntilCondition(Predicate<T> condition, long amount, TimeUnit timeUnit) {
11241116
CompletableFuture<T> future = new CompletableFuture<>();
11251117
// tests the condition, trapping any exceptions
11261118
Consumer<T> tester = obj -> {
@@ -1158,6 +1150,9 @@ public void onDelete(T obj, boolean deletedFinalStateUnknown) {
11581150
future.whenComplete((r,t) -> informer.stop());
11591151
informer.run();
11601152
return future.get(amount, timeUnit);
1153+
} catch (InterruptedException e) {
1154+
Thread.currentThread().interrupt();
1155+
throw KubernetesClientException.launderThrowable(e.getCause());
11611156
} catch (ExecutionException e) {
11621157
throw KubernetesClientException.launderThrowable(e.getCause());
11631158
} catch (TimeoutException e) {

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/NamespaceVisitFromServerGetWatchDeleteRecreateWaitApplicableImpl.java

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -250,10 +250,15 @@ public final Boolean isReady() {
250250
}
251251

252252
@Override
253-
public HasMetadata waitUntilReady(long amount, TimeUnit timeUnit) throws InterruptedException {
253+
public HasMetadata waitUntilReady(long amount, TimeUnit timeUnit) {
254254
HasMetadata meta = acceptVisitors(asHasMetadata(get()), visitors);
255255
ResourceHandler<HasMetadata, ?> h = handlerOf(meta);
256-
return h.waitUntilReady(client, config, meta.getMetadata().getNamespace(), meta, amount, timeUnit);
256+
try {
257+
return h.waitUntilReady(client, config, meta.getMetadata().getNamespace(), meta, amount, timeUnit);
258+
} catch (InterruptedException e) {
259+
Thread.currentThread().interrupt();
260+
throw KubernetesClientException.launderThrowable(e);
261+
}
257262
}
258263

259264
@Override
@@ -263,10 +268,15 @@ public VisitFromServerWritable<HasMetadata> dryRun(boolean isDryRun) {
263268

264269
@Override
265270
public HasMetadata waitUntilCondition(Predicate<HasMetadata> condition, long amount,
266-
TimeUnit timeUnit) throws InterruptedException {
271+
TimeUnit timeUnit) {
267272
HasMetadata meta = acceptVisitors(asHasMetadata(get()), visitors);
268273
ResourceHandler<HasMetadata, ?> h = handlerOf(meta);
269-
return h.waitUntilCondition(client, config, meta.getMetadata().getNamespace(), meta, condition, amount, timeUnit);
274+
try {
275+
return h.waitUntilCondition(client, config, meta.getMetadata().getNamespace(), meta, condition, amount, timeUnit);
276+
} catch (InterruptedException e) {
277+
Thread.currentThread().interrupt();
278+
throw KubernetesClientException.launderThrowable(e);
279+
}
270280
}
271281

272282

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/NamespaceVisitFromServerGetWatchDeleteRecreateWaitApplicableListImpl.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,14 @@ public class NamespaceVisitFromServerGetWatchDeleteRecreateWaitApplicableListImp
8383
private final Boolean cascading;
8484

8585
@Override
86-
public List<HasMetadata> waitUntilReady(final long amount, final TimeUnit timeUnit) throws InterruptedException {
86+
public List<HasMetadata> waitUntilReady(final long amount, final TimeUnit timeUnit) {
8787
return waitUntilCondition(resource -> Objects.nonNull(resource) && getReadiness().isReady(resource), amount, timeUnit);
8888
}
8989

9090
@Override
9191
public List<HasMetadata> waitUntilCondition(Predicate<HasMetadata> condition,
9292
long amount,
93-
TimeUnit timeUnit) throws InterruptedException {
93+
TimeUnit timeUnit) {
9494
List<HasMetadata> items = acceptVisitors(asHasMetadata(item, true), visitors);
9595
if (items.isEmpty()) {
9696
return Collections.emptyList();
@@ -126,6 +126,9 @@ public List<HasMetadata> waitUntilCondition(Predicate<HasMetadata> condition,
126126
} catch (ExecutionException e) {
127127
itemsWithConditionNotMatched.add(meta);
128128
logAsNotReady(e.getCause(), meta);
129+
} catch (InterruptedException e) {
130+
Thread.currentThread().interrupt();
131+
throw KubernetesClientException.launderThrowable(e);
129132
}
130133
++i;
131134
}

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/core/v1/ServiceOperationsImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public ServiceOperationsImpl newInstance(OperationContext context) {
5858
}
5959

6060
@Override
61-
public Service waitUntilReady(long amount, TimeUnit timeUnit) throws InterruptedException {
61+
public Service waitUntilReady(long amount, TimeUnit timeUnit) {
6262
long started = System.nanoTime();
6363
super.waitUntilReady(amount, timeUnit);
6464
long alreadySpent = System.nanoTime() - started;

kubernetes-client/src/main/java/io/fabric8/kubernetes/client/utils/PodOperationUtil.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,6 @@ public static void waitUntilReadyBeforeFetchingLogs(PodResource<Pod> podOperatio
8181
if (pod != null && pod.getStatus() != null && pod.getStatus().getPhase().equals("Pending")) {
8282
podOperation.waitUntilReady(logWaitTimeout, TimeUnit.SECONDS);
8383
}
84-
} catch (InterruptedException interruptedException) {
85-
Thread.currentThread().interrupt();
86-
LOG.debug("Interrupted while waiting for Pod to become Ready: {}", interruptedException.getMessage());
8784
} catch (Exception otherException) {
8885
LOG.debug("Error while waiting for Pod to become Ready: {}", otherException.getMessage());
8986
}

kubernetes-examples/src/main/java/io/fabric8/kubernetes/examples/JobExample.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@
1818
import io.fabric8.kubernetes.api.model.PodList;
1919
import io.fabric8.kubernetes.api.model.batch.v1.Job;
2020
import io.fabric8.kubernetes.api.model.batch.v1.JobBuilder;
21-
import io.fabric8.kubernetes.client.*;
21+
import io.fabric8.kubernetes.client.ConfigBuilder;
22+
import io.fabric8.kubernetes.client.DefaultKubernetesClient;
23+
import io.fabric8.kubernetes.client.KubernetesClient;
24+
import io.fabric8.kubernetes.client.KubernetesClientException;
2225
import org.slf4j.Logger;
2326
import org.slf4j.LoggerFactory;
2427

@@ -74,9 +77,6 @@ public static void main(String[] args) {
7477

7578
} catch (KubernetesClientException e) {
7679
logger.error("Unable to create job", e);
77-
} catch (InterruptedException interruptedException) {
78-
logger.warn("Interrupted while waiting for the job to be ready: {}", interruptedException.getMessage());
79-
Thread.currentThread().interrupt();
8080
}
8181
}
8282
}

0 commit comments

Comments
 (0)