public class AtmospherePushConnection extends Object implements PushConnection
PushConnection
implementation using the Atmosphere push support
that is by default included in Vaadin.Modifier and Type | Class and Description |
---|---|
protected static class |
AtmospherePushConnection.FragmentedMessage
Represents a message that can arrive as multiple fragments.
|
protected static class |
AtmospherePushConnection.State |
Constructor and Description |
---|
AtmospherePushConnection(UI ui) |
Modifier and Type | Method and Description |
---|---|
void |
connect(org.atmosphere.cpr.AtmosphereResource resource)
Associates this
AtmospherePushConnection with the given
AtmosphereResource representing an established push connection. |
void |
connectionLost()
Called when the connection to the client has been lost.
|
void |
disconnect()
Closes the connection.
|
static void |
enableAtmosphereDebugLogging()
Internal method used for reconfiguring loggers to show all Atmosphere log
messages in the console.
|
static String |
getAtmosphereVersion() |
org.atmosphere.cpr.AtmosphereResource |
getResource()
Gets the atmosphere resource associated with this connection.
|
protected AtmospherePushConnection.State |
getState()
Returns the state of this connection.
|
UI |
getUI()
Gets the UI this push connection is associated with.
|
boolean |
isConnected()
Returns whether this connection is currently open.
|
void |
push()
Pushes pending state changes and client RPC calls to the client.
|
void |
push(boolean async)
Pushes pending state changes and client RPC calls to the client.
|
protected Reader |
receiveMessage(Reader reader)
Reads and buffers a (possibly partial) message.
|
protected void |
sendMessage(String message)
Sends the given message to the current client.
|
public AtmospherePushConnection(UI ui)
public static String getAtmosphereVersion()
public void push()
PushConnection
PushConnection.isConnected()
is false; the push will be deferred
until a connection is available. It is NOT safe to invoke this method if
not holding the session lock.
This is internal API; please use UI.push()
instead.
push
in interface PushConnection
public void push(boolean async)
isConnected()
is false, defers the push until a connection is
established.async
- True if this push asynchronously originates from the server,
false if it is a response to a client request.protected void sendMessage(String message)
message
- The message to sendprotected Reader receiveMessage(Reader reader) throws IOException
Reader
yielding the complete message.
Otherwise, returns null.reader
- A Reader from which to read the (partial) messageIOException
public boolean isConnected()
PushConnection
isConnected
in interface PushConnection
public void connect(org.atmosphere.cpr.AtmosphereResource resource)
AtmospherePushConnection
with the given
AtmosphereResource
representing an established push connection.
If already connected, calls disconnect()
first. If there is a
deferred push, carries it out via the new connection.public UI getUI()
public org.atmosphere.cpr.AtmosphereResource getResource()
null
if the connection is not open.public void disconnect()
PushConnection
PushConnection.isConnected()
is
false.disconnect
in interface PushConnection
public void connectionLost()
protected AtmospherePushConnection.State getState()
public static void enableAtmosphereDebugLogging()
Copyright © 2023 Vaadin Ltd. All rights reserved.