diff options
Diffstat (limited to 'juick-notifications/src/main/java/com/juick/components/service/JuickServerReconnectManager.java')
-rw-r--r-- | juick-notifications/src/main/java/com/juick/components/service/JuickServerReconnectManager.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/juick-notifications/src/main/java/com/juick/components/service/JuickServerReconnectManager.java b/juick-notifications/src/main/java/com/juick/components/service/JuickServerReconnectManager.java new file mode 100644 index 00000000..f83a3aa0 --- /dev/null +++ b/juick-notifications/src/main/java/com/juick/components/service/JuickServerReconnectManager.java @@ -0,0 +1,23 @@ +package com.juick.components.service; + +import com.juick.server.component.DisconnectedEvent; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.context.ApplicationListener; +import org.springframework.stereotype.Component; +import org.springframework.web.socket.client.WebSocketConnectionManager; + +import javax.inject.Inject; + +@Component +public class JuickServerReconnectManager implements ApplicationListener<DisconnectedEvent> { + private static Logger logger = LoggerFactory.getLogger(JuickServerReconnectManager.class); + @Inject + private WebSocketConnectionManager webSocketConnectionManager; + @Override + public void onApplicationEvent(DisconnectedEvent event) { + logger.info("retrying..."); + webSocketConnectionManager.stop(); + webSocketConnectionManager.start(); + } +} |