I'm playing with the SSE handler and I can't figure how the close task is working. I thought the close task would be invoked when the client closes the connection but it doesn't seem to be the case.

I slightly modified the example code to register a close task when a connection is initiated, here's the code :

        ServerSentEventConnectionCallback callback = new ServerSentEventConnectionCallback() {
            public void connected(ServerSentEventConnection connection, String lastEventId) {
                System.out.println("adding close task on connection...");
                connection.addCloseTask(channel -> System.out.println("goodbye cruel world..."));
        final ServerSentEventHandler sseHandler = Handlers.serverSentEvents(callback);

It appears to me that the close task is only invoked when the server stops, but now when the client closes. Is it the expected behavior ? If so, is there any other way to be notified of a client disconnection ?

Thanks a lot.