class WebSocketProxyServerHandler extends AbstractWebSocketHandler implements RoutedServicesUser {

    @Override
    public void afterConnectionClosed(WebSocketSession session, CloseStatus status) {
        log.debug("afterConnectionClosed(session={},status={})", session, status);
        try {
            session.close(status);

            WebSocketRoutedSession webSocketRoutedSession = getRoutedSession(session);
            if (webSocketRoutedSession != null) {
                webSocketRoutedSession.close(status);
            }

            routedSessions.remove(session.getId());
        }
        catch (NullPointerException | IOException e) {
            log.debug("Error closing WebSocket connection: {}", e.getMessage(), e);
        }
    }

    @Autowired public  WebSocketProxyServerHandler(DiscoveryClient discovery, SslContextFactoryProvider jettySslContextFactoryProvider);
    public  WebSocketProxyServerHandler(DiscoveryClient discovery, SslContextFactoryProvider sslContextFactoryProvider,
                                       Map<String, WebSocketRoutedSession> routedSessions, WebSocketRoutedSessionFactory webSocketRoutedSessionFactory);

}