- All Superinterfaces:
- AutoCloseable
 The instance of SseEventSink can be only acquired by injection of a resource method parameter:
 
 @GET
 @Path("eventStream")
 @Produces(MediaType.SERVER_SENT_EVENTS)
 public void eventStream(@Context SseEventSink eventSink) {
     // ...
 }
 
 The injected instance is then considered as a return type, so the resource method doesn't return anything, similarly
 as in server-side async processing.
 The underlying client connection is kept open and the application code is able to send events. A server-side instance implementing the interface corresponds exactly to a single client HTTP connection.
The injected instance is thread safe.
- Since:
- 2.1
- Author:
- Marek Potociar (marek.potociar at oracle.com)
- 
Method SummaryModifier and TypeMethodDescriptionvoidclose()Close theSseEventSinkinstance and release all associated resources.booleanisClosed()Check if the stream has been closed already.send(OutboundSseEvent event) Send an outbound Server-sent event to this sink.
- 
Method Details- 
isClosedboolean isClosed()Check if the stream has been closed already.Please note that the client connection represented by this SseServerSinkcan be closed by the client side when a client decides to close connection and disconnect from the server.- Returns:
- truewhen closed,- falseotherwise.
 
- 
sendSend an outbound Server-sent event to this sink.Event will be serialized and sent to the client. - Parameters:
- event- event to be written.
- Returns:
- completion stage that completes when the event has been sent. If there is a problem during sending of an event, completion stage will be completed exceptionally.
 
- 
closeClose theSseEventSinkinstance and release all associated resources.Subsequent calls have no effect and are ignored. Once the SseEventSinkis closed, invoking any method other than this one andisClosed()would result in anIllegalStateExceptionbeing thrown.- Specified by:
- closein interface- AutoCloseable
- Throws:
- IOException- if an I/O error occurs.
 
 
-