Interface ServerResponse.SseBuilder
- Enclosing interface:
- ServerResponse
public static interface ServerResponse.SseBuilder
Defines a builder for a body that sends server-sent events.
- Since:
- 5.3.2
-
Method Summary
Modifier and TypeMethodDescriptionAdd an SSE comment.void
complete()
Completes the stream.void
Add an SSE "data" line for the given object and sends the built server-sent event to the client.void
Completes the stream with the given error.Add an SSE "event" line.Add an SSE "id" line.onComplete
(Runnable onCompletion) Register a callback to be invoked when the request completes.Register a callback to be invoked when an error occurs during processing.Register a callback to be invoked when a request times out.Add an SSE "retry" line.void
send()
Sends the buffered content as a server-sent event, without data.void
Sends the given object as a server-sent event.
-
Method Details
-
error
Completes the stream with the given error.The throwable is dispatched back into Spring MVC, and passed to its exception handling mechanism. Since the response has been committed by this point, the response status can not change.
- Parameters:
t
- the throwable to dispatch
-
complete
void complete()Completes the stream. -
onTimeout
Register a callback to be invoked when a request times out.- Parameters:
onTimeout
- the callback to invoke on timeout- Returns:
- this builder
-
onError
Register a callback to be invoked when an error occurs during processing.- Parameters:
onError
- the callback to invoke on error- Returns:
- this builder
-
onComplete
Register a callback to be invoked when the request completes.- Parameters:
onCompletion
- the callback to invoked on completion- Returns:
- this builder
-
send
Sends the given object as a server-sent event. Strings will be sent as UTF-8 encoded bytes, and other objects will be converted into JSON using message converters.This convenience method has the same effect as
data(Object)
.- Parameters:
object
- the object to send- Throws:
IOException
- in case of I/O errors
-
send
Sends the buffered content as a server-sent event, without data. Only theevents
andcomments
will be sent.- Throws:
IOException
- in case of I/O errors- Since:
- 6.1.4
-
id
Add an SSE "id" line.- Parameters:
id
- the event identifier- Returns:
- this builder
-
event
Add an SSE "event" line.- Parameters:
eventName
- the event name- Returns:
- this builder
-
retry
Add an SSE "retry" line.- Parameters:
duration
- the duration to convert into millis- Returns:
- this builder
-
comment
Add an SSE comment.- Parameters:
comment
- the comment- Returns:
- this builder
-
data
Add an SSE "data" line for the given object and sends the built server-sent event to the client. Strings will be sent as UTF-8 encoded bytes, and other objects will be converted into JSON using message converters.- Parameters:
object
- the object to send as data- Throws:
IOException
- in case of I/O errors
-