Package com.vaadin.client.communication
Class MessageSender
- java.lang.Object
-
- com.vaadin.client.communication.MessageSender
-
public class MessageSender extends Object
MessageSender is responsible for sending messages to the server.Internally uses
XhrConnectionand/orPushConnectionfor delivering messages, depending on the application configuration.- Since:
- 7.6
- Author:
- Vaadin Ltd
-
-
Constructor Summary
Constructors Constructor Description MessageSender()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidendRequest()static voidextendLiferaySession()If on Liferay and logged in, ask the client side session management JavaScript to extend the session duration.StringgetCommunicationMethodName()Returns a human readable string representation of the method used to communicate with the server.booleanhasActiveRequest()Indicates whether or not there are currently active UIDL requests.voidresynchronize()Resynchronize the client side, i.e.static voidrunPostRequestHooks(String appId)Runs possibly registered client side post request hooks.protected voidsend(elemental.json.JsonArray reqInvocations, elemental.json.JsonObject extraJson)Makes an UIDL request to the server.voidsend(elemental.json.JsonObject payload)Sends an asynchronous or synchronous UIDL request to the server using the given URI.voidsendInvocationsToServer()voidsetClientToServerMessageId(int nextExpectedId, boolean force)Used internally to update what the server expectsvoidsetConnection(ApplicationConnection connection)Sets the application connection this instance is connected to.voidsetPushEnabled(boolean enabled)Sets the status for the push connection.voidstartRequest()
-
-
-
Method Detail
-
setConnection
public void setConnection(ApplicationConnection connection)
Sets the application connection this instance is connected to. Called internally by the framework.- Parameters:
connection- the application connection this instance is connected to
-
sendInvocationsToServer
public void sendInvocationsToServer()
-
send
protected void send(elemental.json.JsonArray reqInvocations, elemental.json.JsonObject extraJson)Makes an UIDL request to the server.- Parameters:
reqInvocations- Data containing RPC invocations and all related information.extraParams- Parameters that are added to the payload
-
send
public void send(elemental.json.JsonObject payload)
Sends an asynchronous or synchronous UIDL request to the server using the given URI.- Parameters:
uri- The URI to use for the request. May includes GET parameterspayload- The contents of the request to send
-
setPushEnabled
public void setPushEnabled(boolean enabled)
Sets the status for the push connection.- Parameters:
enabled-trueto enable the push connection;falseto disable the push connection.
-
startRequest
public void startRequest()
-
endRequest
public void endRequest()
-
runPostRequestHooks
public static void runPostRequestHooks(String appId)
Runs possibly registered client side post request hooks. This is expected to be run after each uidl request made by Vaadin application.- Parameters:
appId-
-
extendLiferaySession
public static void extendLiferaySession()
If on Liferay and logged in, ask the client side session management JavaScript to extend the session duration. Otherwise, Liferay client side JavaScript will explicitly expire the session even though the server side considers the session to be active. See ticket #8305 for more information.
-
hasActiveRequest
public boolean hasActiveRequest()
Indicates whether or not there are currently active UIDL requests. Used internally to sequence requests properly, seldom needed in Widgets.- Returns:
- true if there are active requests
-
getCommunicationMethodName
public String getCommunicationMethodName()
Returns a human readable string representation of the method used to communicate with the server.- Returns:
- A string representation of the current transport type
-
resynchronize
public void resynchronize()
Resynchronize the client side, i.e. reload all component hierarchy and state from the server
-
setClientToServerMessageId
public void setClientToServerMessageId(int nextExpectedId, boolean force)Used internally to update what the server expects- Parameters:
clientToServerMessageId- the new client id to setforce- true if the id must be updated, false otherwise
-
-