diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/GovVoiceApplication.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/GovVoiceApplication.java index fadb32d058..b42c0088d1 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/GovVoiceApplication.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/GovVoiceApplication.java @@ -1,14 +1,9 @@ package com.epmet; -import com.epmet.config.GracefulShutdownTomcat; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; -import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; -import org.springframework.boot.web.servlet.server.ServletWebServerFactory; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.openfeign.EnableFeignClients; -import org.springframework.context.annotation.Bean; import org.springframework.scheduling.annotation.EnableAsync; /** @@ -20,17 +15,7 @@ import org.springframework.scheduling.annotation.EnableAsync; @EnableFeignClients @EnableAsync public class GovVoiceApplication { - @Autowired - private GracefulShutdownTomcat gracefulShutdownTomcat; - public static void main(String[] args) { SpringApplication.run(GovVoiceApplication.class, args); } - - @Bean - public ServletWebServerFactory servletContainer() { - TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory(); - tomcat.addConnectorCustomizers(gracefulShutdownTomcat); - return tomcat; - } } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/config/GracefulShutdownTomcat.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/config/GracefulShutdownTomcat.java deleted file mode 100644 index 4cc1d8f56a..0000000000 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/config/GracefulShutdownTomcat.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.epmet.config; - -import org.apache.catalina.connector.Connector; -import org.springframework.boot.web.embedded.tomcat.TomcatConnectorCustomizer; -import org.springframework.context.ApplicationListener; -import org.springframework.context.event.ContextClosedEvent; -import org.springframework.stereotype.Component; - -import java.util.concurrent.Executor; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; - -@Component -public class GracefulShutdownTomcat implements TomcatConnectorCustomizer, ApplicationListener { - private volatile Connector connector; - private final int waitTime = 30; - @Override - public void customize(Connector connector) { - this.connector = connector; - } - @Override - public void onApplicationEvent(ContextClosedEvent contextClosedEvent) { - this.connector.pause(); - Executor executor = this.connector.getProtocolHandler().getExecutor(); - if (executor instanceof ThreadPoolExecutor) { - try { - ThreadPoolExecutor threadPoolExecutor = (ThreadPoolExecutor) executor; - threadPoolExecutor.shutdown(); - if (!threadPoolExecutor.awaitTermination(waitTime, TimeUnit.SECONDS)) { - System.out.println("Tomcat thread pool did not shut down gracefully within " + waitTime + " seconds. Proceeding with forceful shutdown"); - } - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - } -} \ No newline at end of file