public static interface OutboundSseEvent.Builder
OutboundSseEvent
instances.Modifier and Type | Method | Description |
---|---|---|
OutboundSseEvent |
build() |
Build
OutboundSseEvent . |
OutboundSseEvent.Builder |
comment(String comment) |
Set comment string associated with the event.
|
OutboundSseEvent.Builder |
data(Class type,
Object data) |
Set event data and java type of event data.
|
OutboundSseEvent.Builder |
data(Object data) |
Set event data and java type of event data.
|
OutboundSseEvent.Builder |
data(GenericType type,
Object data) |
Set event data and a generic java type of event data.
|
OutboundSseEvent.Builder |
id(String id) |
Set the event id.
|
OutboundSseEvent.Builder |
mediaType(MediaType mediaType) |
Set the
media type of the event data. |
OutboundSseEvent.Builder |
name(String name) |
Set event name.
|
OutboundSseEvent.Builder |
reconnectDelay(long milliseconds) |
Set reconnection delay (in milliseconds) that indicates how long the event receiver should wait
before attempting to reconnect in case a connection to SSE event source is lost.
|
OutboundSseEvent.Builder id(String id)
Will be send as a value of the SSE "id"
field. This field is optional.
id
- event id.OutboundSseEvent.Builder name(String name)
Will be send as a value of the SSE "event"
field. This field is optional.
name
- event name.OutboundSseEvent.Builder reconnectDelay(long milliseconds)
Will be send as a value of the SSE "retry"
field. This field is optional.
Absence of a value of this field in an OutboundSseEvent
instance
is indicated by SseEvent.RECONNECT_NOT_SET
value returned from
SseEvent.getReconnectDelay()
.
milliseconds
- reconnection delay in milliseconds. Negative values un-set the reconnection delay.OutboundSseEvent.Builder mediaType(MediaType mediaType)
media type
of the event data.
This information is mandatory. The default value is MediaType.TEXT_PLAIN
.
mediaType
- MediaType
of event data. Must not be null
.NullPointerException
- in case the mediaType
parameter is null
.OutboundSseEvent.Builder comment(String comment)
The comment will be serialized with the event, before event data are serialized. If the event does not contain any data, a separate "event" that contains only the comment will be sent. This information is optional, provided the event data are set.
Note that multiple invocations of this method result in a previous comment being replaced with a new one. To achieve multi-line comments, a multi-line comment string has to be used.
comment
- comment string.OutboundSseEvent.Builder data(Class type, Object data)
Type information will be used for MessageBodyWriter
lookup.
Note that multiple invocations of this method result in previous even data being replaced with new one.
type
- java type of supplied data. Must not be null
.data
- event data. Must not be null
.NullPointerException
- in case either type
or data
parameter is null
.OutboundSseEvent.Builder data(GenericType type, Object data)
Type information will be used for MessageBodyWriter
lookup.
Note that multiple invocations of this method result in previous even data being replaced with new one.
type
- generic type of supplied data. Must not be null
.data
- event data. Must not be null
.NullPointerException
- in case either type
or data
parameter is null
.OutboundSseEvent.Builder data(Object data)
This is a convenience method that derives the event data type information from the runtime type of
the event data. The supplied event data may be represented as GenericEntity
.
Note that multiple invocations of this method result in previous even data being replaced with new one.
data
- event data. Must not be null
.NullPointerException
- in case the data
parameter is null
.OutboundSseEvent build()
OutboundSseEvent
.
There are two valid configurations:
comment
is set, all other parameters are optional.
If event data
and media type
is set,
event data will be serialized after the comment.comment
is not set, at least the event
data
must be set. All other parameters are optional.OutboundSseEvent
instance.IllegalStateException
- when called with invalid configuration (neither a comment nor event data are set).Copyright (c) 2019 Eclipse Foundation. Licensed under Eclipse Foundation Specification License.