package org.jboss.as.test.integration.web.sse; import io.undertow.server.handlers.sse.ServerSentEventConnection; import io.undertow.server.handlers.sse.ServerSentEventConnectionCallback; import io.undertow.servlet.sse.ServerSentEvent; import java.io.IOException; /** * @author Stuart Douglas */ @ServerSentEvent("/foo/{bar}") public class SseHandler implements ServerSentEventConnectionCallback { @Override public void connected(ServerSentEventConnection connection, String lastEventId) { connection.send("Hello " + connection.getParameter("bar")); connection.send("msg2"); connection.send("msg3", new ServerSentEventConnection.EventCallback() { @Override public void done(ServerSentEventConnection connection, String data, String event, String id) { try { connection.close(); } catch (IOException e) { throw new RuntimeException(e); } } @Override public void failed(ServerSentEventConnection connection, String data, String event, String id, IOException e) { try { connection.close(); } catch (IOException ex) { throw new RuntimeException(ex); } } }); } }