Skip to content

Commit 7c46106

Browse files
shawkinsmanusa
authored andcommitted
removing declared interruptedexception
1 parent 1012614 commit 7c46106

File tree

8 files changed

+33
-33
lines changed

8 files changed

+33
-33
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
##### DSL Changes:
5959
- #3127 `StatusUpdatable.updateStatus` deprecated, please use patchStatus, editStatus, or replaceStatus
6060
- #3239 deprecated methods on SharedInformerFactory directly dealing with the OperationContext, withName, and withNamespace - the Informable interface should be used instead.
61-
- #3271 `Waitable.waitUntilReady` and `Waitable.waitUntilCondition` with throw a KubernetesClientTimeoutException instead of an IllegalArgumentException on timeout.
61+
- #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.
6262
`Waitable.withWaitRetryBackoff` and the associated constants are now deprecated.
6363

6464
##### 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 & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818
import io.fabric8.kubernetes.api.model.ObjectReference;
1919
import io.fabric8.kubernetes.client.dsl.WritableOperation;
2020
import io.fabric8.kubernetes.client.utils.CreateOrReplaceHelper;
21-
import org.slf4j.Logger;
22-
import org.slf4j.LoggerFactory;
2321

2422
import io.fabric8.kubernetes.api.builder.TypedVisitor;
2523
import io.fabric8.kubernetes.api.builder.Visitor;
@@ -95,7 +93,6 @@ public class BaseOperation<T extends HasMetadata, L extends KubernetesResourceLi
9593
MixedOperation<T, L, R>,
9694
Resource<T> {
9795

98-
private static final Logger LOG = LoggerFactory.getLogger(BaseOperation.class);
9996
private static final String INVOLVED_OBJECT_NAME = "involvedObject.name";
10097
private static final String INVOLVED_OBJECT_NAMESPACE = "involvedObject.namespace";
10198
private static final String INVOLVED_OBJECT_KIND = "involvedObject.kind";
@@ -405,15 +402,7 @@ public final T createOrReplace(T... items) {
405402
CreateOrReplaceHelper<T> createOrReplaceHelper = new CreateOrReplaceHelper<>(
406403
this::create,
407404
this::replace,
408-
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;
416-
},
405+
m -> waitUntilCondition(Objects::nonNull, 1, TimeUnit.SECONDS),
417406
m -> fromServer().get()
418407
);
419408

@@ -1113,14 +1102,12 @@ public final Boolean isReady() {
11131102
}
11141103

11151104
@Override
1116-
public T waitUntilReady(long amount, TimeUnit timeUnit) throws InterruptedException {
1105+
public T waitUntilReady(long amount, TimeUnit timeUnit) {
11171106
return waitUntilCondition(resource -> Objects.nonNull(resource) && getReadiness().isReady(resource), amount, timeUnit);
11181107
}
11191108

11201109
@Override
1121-
public T waitUntilCondition(Predicate<T> condition, long amount, TimeUnit timeUnit)
1122-
throws InterruptedException {
1123-
1110+
public T waitUntilCondition(Predicate<T> condition, long amount, TimeUnit timeUnit) {
11241111
CompletableFuture<T> future = new CompletableFuture<>();
11251112
// tests the condition, trapping any exceptions
11261113
Consumer<T> tester = obj -> {
@@ -1158,6 +1145,9 @@ public void onDelete(T obj, boolean deletedFinalStateUnknown) {
11581145
future.whenComplete((r,t) -> informer.stop());
11591146
informer.run();
11601147
return future.get(amount, timeUnit);
1148+
} catch (InterruptedException e) {
1149+
Thread.currentThread().interrupt();
1150+
throw KubernetesClientException.launderThrowable(e.getCause());
11611151
} catch (ExecutionException e) {
11621152
throw KubernetesClientException.launderThrowable(e.getCause());
11631153
} 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)