@@ -231,14 +231,22 @@ public void error(Session session, Throwable t) {
231
231
* @param message The message to be sent
232
232
*/
233
233
public static void distributeMessage (WebsocketMessage message ) {
234
- for ( Session peer : peers )
235
- try {
236
- String serializedMessage = serializeMessage ( message );
234
+ try {
235
+ String serializedMessage = serializeMessage ( message );
236
+ for ( Session peer : peers )
237
237
if (peer .getAsyncRemote () != null )
238
- peer .getAsyncRemote ().sendText (serializedMessage );
239
- } catch (SerializationException e ) {
240
- log .error ("Error preparing websocket message {}" , message .getEvent (), e );
241
- }
238
+ sendMessageToPear (message .getEvent (), serializedMessage , peer );
239
+ } catch (SerializationException e ) {
240
+ log .error ("Error preparing websocket message {}" , message .getEvent (), e );
241
+ }
242
+ }
243
+
244
+ private synchronized static void sendMessageToPear (String event , String serializedMessage , Session peer ) {
245
+ try {
246
+ peer .getBasicRemote ().sendText (serializedMessage );
247
+ } catch (Exception e ) {
248
+ log .error ("Error sending websocket message {} to peer {}" , event , peer .getRequestURI (), e );
249
+ }
242
250
}
243
251
244
252
private static String serializeMessage (final WebsocketMessage messageDto ) throws SerializationException {
0 commit comments