|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.vaadin.client.communication.MessageHandler
public class MessageHandler
A MessageHandler is responsible for handling all incoming messages (JSON) from the server (state changes, RPCs and other updates) and ensuring that the connectors are updated accordingly.
| Field Summary | |
|---|---|
static java.lang.String |
JSON_COMMUNICATION_PREFIX
|
static java.lang.String |
JSON_COMMUNICATION_SUFFIX
|
protected int |
lastProcessingTime
Holds the time spent rendering the last request |
protected int |
totalProcessingTime
Holds the total time spent rendering requests during the lifetime of the session. |
| Constructor Summary | |
|---|---|
MessageHandler()
|
|
| Method Summary | |
|---|---|
java.lang.String |
getCsrfToken()
Gets the token (aka double submit cookie) that the server uses to protect against Cross Site Request Forgery attacks. |
int |
getLastSeenServerSyncId()
Gets the server id included in the last received response. |
protected void |
handleJSON(ValueMap json)
|
void |
handleMessage(ValueMap json)
Handles a received UIDL JSON text, parsing it, and passing it on to the appropriate handlers, while logging timing information. |
boolean |
isInitialUidlHandled()
Checks if the first UIDL has been handled |
boolean |
isUpdatingState()
Checks whether state changes are currently being processed. |
static ValueMap |
parseJson(java.lang.String jsonText)
Unwraps and parses the given JSON, originating from the server |
static ValueMap |
parseWrappedJson(java.lang.String wrappedJsonText)
Parse the given wrapped JSON, received from the server, to a ValueMap |
void |
resumeResponseHandling(java.lang.Object lock)
Resumes the rendering process once all locks have been removed. |
void |
setConnection(ApplicationConnection connection)
Sets the application connection this instance is connected to. |
static java.lang.String |
stripJSONWrapping(java.lang.String jsonWithWrapping)
Strips the JSON wrapping from the given json string with wrapping. |
void |
suspendReponseHandling(java.lang.Object lock)
This method can be used to postpone rendering of a response for a short period of time (e.g. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String JSON_COMMUNICATION_PREFIX
public static final java.lang.String JSON_COMMUNICATION_SUFFIX
protected int lastProcessingTime
protected int totalProcessingTime
| Constructor Detail |
|---|
public MessageHandler()
| Method Detail |
|---|
public void setConnection(ApplicationConnection connection)
connection - the application connection this instance is connected topublic void handleMessage(ValueMap json)
jsonText - The JSON to handleprotected void handleJSON(ValueMap json)
public void suspendReponseHandling(java.lang.Object lock)
lock - public void resumeResponseHandling(java.lang.Object lock)
lock - public int getLastSeenServerSyncId()
This id can be used by connectors to determine whether new data has been received from the server to avoid doing the same calculations multiple times.
No guarantees are made for the structure of the id other than that there will be a new unique value every time a new response with data from the server is received.
The initial id when no request has yet been processed is -1.
public java.lang.String getCsrfToken()
public boolean isUpdatingState()
true if the internal state might be inconsistent
because changes are being processed; false if the
state should be consistentpublic boolean isInitialUidlHandled()
public static java.lang.String stripJSONWrapping(java.lang.String jsonWithWrapping)
jsonWithWrapping - the JSON received from the server
public static ValueMap parseJson(java.lang.String jsonText)
jsonText - the json from the server
public static ValueMap parseWrappedJson(java.lang.String wrappedJsonText)
wrappedJsonText - the json, wrapped as done by the server
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||