@@ -2667,58 +2667,90 @@ private static final class AHCWebSocketListenerAdapter implements org.glassfish.
2667
2667
2668
2668
@ Override
2669
2669
public void onClose (org .glassfish .grizzly .websockets .WebSocket gWebSocket , DataFrame dataFrame ) {
2670
- if (WebSocketCloseCodeReasonListener .class .isAssignableFrom (ahcListener .getClass ())) {
2671
- ClosingFrame cf = ClosingFrame .class .cast (dataFrame );
2672
- WebSocketCloseCodeReasonListener .class .cast (ahcListener ).onClose (webSocket , cf .getCode (), cf .getReason ());
2673
- } else {
2674
- ahcListener .onClose (webSocket );
2670
+ try {
2671
+ if (WebSocketCloseCodeReasonListener .class .isAssignableFrom (ahcListener .getClass ())) {
2672
+ ClosingFrame cf = ClosingFrame .class .cast (dataFrame );
2673
+ WebSocketCloseCodeReasonListener .class .cast (ahcListener ).onClose (webSocket , cf .getCode (), cf .getReason ());
2674
+ } else {
2675
+ ahcListener .onClose (webSocket );
2676
+ }
2677
+ } catch (Throwable e ) {
2678
+ ahcListener .onError (e );
2675
2679
}
2676
2680
}
2677
2681
2678
2682
@ Override
2679
2683
public void onConnect (org .glassfish .grizzly .websockets .WebSocket gWebSocket ) {
2680
- ahcListener .onOpen (webSocket );
2684
+ try {
2685
+ ahcListener .onOpen (webSocket );
2686
+ } catch (Throwable e ) {
2687
+ ahcListener .onError (e );
2688
+ }
2681
2689
}
2682
2690
2683
2691
@ Override
2684
2692
public void onMessage (org .glassfish .grizzly .websockets .WebSocket webSocket , String s ) {
2685
- if (WebSocketTextListener .class .isAssignableFrom (ahcListener .getClass ())) {
2686
- WebSocketTextListener .class .cast (ahcListener ).onMessage (s );
2693
+ try {
2694
+ if (WebSocketTextListener .class .isAssignableFrom (ahcListener .getClass ())) {
2695
+ WebSocketTextListener .class .cast (ahcListener ).onMessage (s );
2696
+ }
2697
+ } catch (Throwable e ) {
2698
+ ahcListener .onError (e );
2687
2699
}
2688
2700
}
2689
2701
2690
2702
@ Override
2691
2703
public void onMessage (org .glassfish .grizzly .websockets .WebSocket webSocket , byte [] bytes ) {
2692
- if (WebSocketByteListener .class .isAssignableFrom (ahcListener .getClass ())) {
2693
- WebSocketByteListener .class .cast (ahcListener ).onMessage (bytes );
2704
+ try {
2705
+ if (WebSocketByteListener .class .isAssignableFrom (ahcListener .getClass ())) {
2706
+ WebSocketByteListener .class .cast (ahcListener ).onMessage (bytes );
2707
+ }
2708
+ } catch (Throwable e ) {
2709
+ ahcListener .onError (e );
2694
2710
}
2695
2711
}
2696
2712
2697
2713
@ Override
2698
2714
public void onPing (org .glassfish .grizzly .websockets .WebSocket webSocket , byte [] bytes ) {
2699
- if (WebSocketPingListener .class .isAssignableFrom (ahcListener .getClass ())) {
2700
- WebSocketPingListener .class .cast (ahcListener ).onPing (bytes );
2715
+ try {
2716
+ if (WebSocketPingListener .class .isAssignableFrom (ahcListener .getClass ())) {
2717
+ WebSocketPingListener .class .cast (ahcListener ).onPing (bytes );
2718
+ }
2719
+ } catch (Throwable e ) {
2720
+ ahcListener .onError (e );
2701
2721
}
2702
2722
}
2703
2723
2704
2724
@ Override
2705
2725
public void onPong (org .glassfish .grizzly .websockets .WebSocket webSocket , byte [] bytes ) {
2706
- if (WebSocketPongListener .class .isAssignableFrom (ahcListener .getClass ())) {
2707
- WebSocketPongListener .class .cast (ahcListener ).onPong (bytes );
2726
+ try {
2727
+ if (WebSocketPongListener .class .isAssignableFrom (ahcListener .getClass ())) {
2728
+ WebSocketPongListener .class .cast (ahcListener ).onPong (bytes );
2729
+ }
2730
+ } catch (Throwable e ) {
2731
+ ahcListener .onError (e );
2708
2732
}
2709
2733
}
2710
2734
2711
2735
@ Override
2712
2736
public void onFragment (org .glassfish .grizzly .websockets .WebSocket webSocket , String s , boolean b ) {
2713
- if (WebSocketTextListener .class .isAssignableFrom (ahcListener .getClass ())) {
2714
- WebSocketTextListener .class .cast (ahcListener ).onFragment (s , b );
2737
+ try {
2738
+ if (WebSocketTextListener .class .isAssignableFrom (ahcListener .getClass ())) {
2739
+ WebSocketTextListener .class .cast (ahcListener ).onFragment (s , b );
2740
+ }
2741
+ } catch (Throwable e ) {
2742
+ ahcListener .onError (e );
2715
2743
}
2716
2744
}
2717
2745
2718
2746
@ Override
2719
2747
public void onFragment (org .glassfish .grizzly .websockets .WebSocket webSocket , byte [] bytes , boolean b ) {
2720
- if (WebSocketByteListener .class .isAssignableFrom (ahcListener .getClass ())) {
2721
- WebSocketByteListener .class .cast (ahcListener ).onFragment (bytes , b );
2748
+ try {
2749
+ if (WebSocketByteListener .class .isAssignableFrom (ahcListener .getClass ())) {
2750
+ WebSocketByteListener .class .cast (ahcListener ).onFragment (bytes , b );
2751
+ }
2752
+ } catch (Throwable e ) {
2753
+ ahcListener .onError (e );
2722
2754
}
2723
2755
}
2724
2756
0 commit comments