public static class EventSource.Builder extends Object
EventSource
builder class.
Event source builder provides methods that let you conveniently configure and subsequently build
a new EventSource
instance. You can obtain a new event source builder instance using
a static EventSource.target(endpoint)
factory method.
For example:
EventSource es = EventSource.target(endpoint).named("my source") .reconnectingEvery(5, SECONDS) .open();
Modifier and Type | Method and Description |
---|---|
EventSource |
build()
Build new SSE event source pointing at a SSE streaming
web target . |
EventSource.Builder |
named(String name)
Set a custom name for the event source.
|
EventSource |
open()
Build new SSE event source pointing at a SSE streaming
web target . |
EventSource.Builder |
reconnectingEvery(long delay,
TimeUnit unit)
Set the initial reconnect delay to be used by the event source.
|
EventSource.Builder |
usePersistentConnections()
Instruct event source to use
persistent HTTP connections when connecting
(or reconnecting) to the SSE endpoint, provided the mechanism is supported by the underlying client
Connector . |
public EventSource.Builder named(String name)
At present, custom event source name is mainly useful to be able to distinguish different event source event processing threads from one another. If not set, a default name will be generated using the SSE endpoint URI.
name
- custom event source name.public EventSource.Builder usePersistentConnections()
Connector
.
By default, the persistent HTTP connections are disabled for the reasons discussed in the EventSource
javadoc.
public EventSource.Builder reconnectingEvery(long delay, TimeUnit unit)
Note that this value may be later overridden by the SSE endpoint using either a retry
SSE event field
or HTTP 503 + "Retry-After" mechanism as described
in the EventSource
javadoc.
delay
- the default time to wait before attempting to recover from a connection loss.unit
- time unit of the reconnect delay parameter.public EventSource build()
web target
.
The returned event source is ready, but not connected
to the SSE endpoint.
It is expected that you will manually invoke its open()
method once you are ready to start
receiving SSE events. In case you want to build an event source instance that is already connected
to the SSE endpoint, use the event source builder open()
method instead.
Once the event source is open, the incoming events are processed by the event source in an
asynchronous task that runs in an internal single-threaded scheduled executor service
.
open()
public EventSource open()
web target
.
The returned event source is already connected
to the SSE endpoint
and is processing any new incoming events. In case you want to build an event source instance
that is already ready, but not automatically connected to the SSE endpoint, use the event source
builder build()
method instead.
The incoming events are processed by the event source in an asynchronous task that runs in an
internal single-threaded scheduled executor service
.
build()
Copyright © 2007-2023, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.