diff --git a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ShutdownEndpoint.java b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ShutdownEndpoint.java index c05ac2f3ffe..a64c7a42b6e 100644 --- a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ShutdownEndpoint.java +++ b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/ShutdownEndpoint.java @@ -69,7 +69,7 @@ public class ShutdownEndpoint extends AbstractEndpoint> Thread.sleep(500L); } catch (InterruptedException ex) { - // Swallow exception and continue + Thread.currentThread().interrupt(); } ShutdownEndpoint.this.context.close(); } diff --git a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpoint.java b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpoint.java index 4b631d84852..743059d383e 100644 --- a/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpoint.java +++ b/spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpoint.java @@ -93,7 +93,7 @@ public class HeapdumpMvcEndpoint extends AbstractMvcEndpoint implements MvcEndpo } } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } response.setStatus(HttpStatus.TOO_MANY_REQUESTS.value()); } diff --git a/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpointTests.java b/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpointTests.java index b8ed37f3e8a..e1547951765 100644 --- a/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpointTests.java +++ b/spring-boot-actuator/src/test/java/org/springframework/boot/actuate/endpoint/mvc/HeapdumpMvcEndpointTests.java @@ -93,6 +93,7 @@ public class HeapdumpMvcEndpointTests { public void invokeWhenLockedShouldReturnTooManyRequestsStatus() throws Exception { this.endpoint.setLocked(true); this.mvc.perform(get("/heapdump")).andExpect(status().isTooManyRequests()); + assertThat(Thread.interrupted()).isTrue(); } @Test diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/RemoteSpringApplication.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/RemoteSpringApplication.java index dff13a86cc5..c7440b24699 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/RemoteSpringApplication.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/RemoteSpringApplication.java @@ -91,7 +91,7 @@ public final class RemoteSpringApplication { Thread.sleep(1000); } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } } } diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/autoconfigure/FileWatchingFailureHandler.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/autoconfigure/FileWatchingFailureHandler.java index 4eb5cdb6c5a..58967fd336f 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/autoconfigure/FileWatchingFailureHandler.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/autoconfigure/FileWatchingFailureHandler.java @@ -52,7 +52,7 @@ class FileWatchingFailureHandler implements FailureHandler { latch.await(); } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } return Outcome.RETRY; } diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/filewatch/FileSystemWatcher.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/filewatch/FileSystemWatcher.java index 13b9e39dc59..0c87d2245cf 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/filewatch/FileSystemWatcher.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/filewatch/FileSystemWatcher.java @@ -239,7 +239,7 @@ public class FileSystemWatcher { scan(); } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } remainingScans = this.remainingScans.get(); } diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/remote/client/DelayedLiveReloadTrigger.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/remote/client/DelayedLiveReloadTrigger.java index 26941f583d4..37498dc74dc 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/remote/client/DelayedLiveReloadTrigger.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/remote/client/DelayedLiveReloadTrigger.java @@ -96,7 +96,7 @@ class DelayedLiveReloadTrigger implements Runnable { this.liveReloadServer.triggerReload(); } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } } diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/client/TunnelClient.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/client/TunnelClient.java index 7847c7717b2..f139a0a73dc 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/client/TunnelClient.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/client/TunnelClient.java @@ -106,7 +106,7 @@ public class TunnelClient implements SmartInitializingSingleton { this.serverThread.join(2000); } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } this.serverThread = null; } diff --git a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/server/HttpTunnelServer.java b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/server/HttpTunnelServer.java index 85d4ef237b7..cc2c5711e32 100644 --- a/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/server/HttpTunnelServer.java +++ b/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/tunnel/server/HttpTunnelServer.java @@ -273,6 +273,7 @@ public class HttpTunnelServer { this.httpConnections.wait(HttpTunnelServer.this.longPollTimeout); } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); closeHttpConnections(); } httpConnection = this.httpConnections.pollFirst(); @@ -442,7 +443,7 @@ public class HttpTunnelServer { } } catch (InterruptedException ex) { - // Ignore + Thread.currentThread().interrupt(); } } } diff --git a/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/data/RandomAccessDataFile.java b/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/data/RandomAccessDataFile.java index 8d89927bf1a..5ba87dcc850 100644 --- a/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/data/RandomAccessDataFile.java +++ b/spring-boot-tools/spring-boot-loader/src/main/java/org/springframework/boot/loader/data/RandomAccessDataFile.java @@ -252,6 +252,7 @@ public class RandomAccessDataFile implements RandomAccessData { : file); } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); throw new IOException(ex); } } @@ -276,6 +277,7 @@ public class RandomAccessDataFile implements RandomAccessData { } } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); throw new IOException(ex); } } diff --git a/spring-boot-tools/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/StartMojo.java b/spring-boot-tools/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/StartMojo.java index 92ab64cb5be..0e45d747042 100644 --- a/spring-boot-tools/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/StartMojo.java +++ b/spring-boot-tools/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/StartMojo.java @@ -167,6 +167,7 @@ public class StartMojo extends AbstractRunMojo { this.lock.wait(wait); } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); throw new IllegalStateException( "Interrupted while waiting for Spring Boot app to start."); } @@ -275,6 +276,7 @@ public class StartMojo extends AbstractRunMojo { this.lock.wait(wait); } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); throw new IllegalStateException( "Interrupted while waiting for Spring Boot app to start."); }