From 386bb7316953f936f060a39114300e6ba0acfd5e Mon Sep 17 00:00:00 2001 From: Ulrich von Poblotzki Date: Sat, 5 Oct 2013 15:26:45 +0200 Subject: [PATCH] Added simple error hangling to 'SnakeTimer#broadcast' In some cases the websocket communication fails and Snake#sendMessage throws an exception. In that case the send loop is interrupted and later clients are not update. --- .../boot/samples/websocket/snake/SnakeTimer.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/spring-boot-samples/spring-boot-sample-websocket/src/main/java/org/springframework/boot/samples/websocket/snake/SnakeTimer.java b/spring-boot-samples/spring-boot-sample-websocket/src/main/java/org/springframework/boot/samples/websocket/snake/SnakeTimer.java index e0c70a6b07..0b9003e95c 100644 --- a/spring-boot-samples/spring-boot-sample-websocket/src/main/java/org/springframework/boot/samples/websocket/snake/SnakeTimer.java +++ b/spring-boot-samples/spring-boot-sample-websocket/src/main/java/org/springframework/boot/samples/websocket/snake/SnakeTimer.java @@ -79,8 +79,13 @@ public class SnakeTimer { public static void broadcast(String message) throws Exception { for (Snake snake : SnakeTimer.getSnakes()) { - snake.sendMessage(message); - } + try { + snake.sendMessage(message); + } + catch (Throwable ex) { + // if Snake#sendMessage fails the client should be removed + } + } }