public class ServerRpcHandler extends Object implements Serializable
server RPC
invocations.Modifier and Type | Class and Description |
---|---|
static class |
ServerRpcHandler.RpcRequest
A data transfer object representing an RPC request sent by the client
side.
|
Constructor and Description |
---|
ServerRpcHandler() |
Modifier and Type | Method and Description |
---|---|
protected void |
changeVariables(Object source,
VariableOwner owner,
Map<String,Object> m) |
static String |
getIgnoredDisabledError(String what,
ClientConnector connector)
Generates an error message when the client is trying to to something
('what') with a connector which is disabled or invisible.
|
protected String |
getMessage(Reader reader) |
protected void |
handleInvocation(UI ui,
ClientConnector connector,
LegacyChangeVariablesInvocation legacyInvocation)
Handles the given Legacy variable change RPC method invocation for the
given connector
|
protected void |
handleInvocation(UI ui,
ClientConnector connector,
ServerRpcMethodInvocation invocation)
Handles the given RPC method invocation for the given connector
|
protected void |
handleInvocations(UI ui,
int lastSyncIdSeenByClient,
elemental.json.JsonArray invocationsData)
Processes invocations data received from the client.
|
void |
handleRpc(UI ui,
Reader reader,
VaadinRequest request)
Reads JSON containing zero or more serialized RPC calls (including legacy
variable changes) and executes the calls.
|
public void handleRpc(UI ui, Reader reader, VaadinRequest request) throws IOException, LegacyCommunicationManager.InvalidUIDLSecurityKeyException
ui
- The UI
receiving the calls. Cannot be null.reader
- The Reader
used to read the JSON.request
- IOException
- If reading the message fails.LegacyCommunicationManager.InvalidUIDLSecurityKeyException
- If the received security key does not match the one stored in
the session.protected void handleInvocations(UI ui, int lastSyncIdSeenByClient, elemental.json.JsonArray invocationsData)
The invocations data can contain any number of RPC calls, including legacy variable change calls that are processed separately.
Consecutive changes to the value of the same variable are combined and changeVariables() is only called once for them. This preserves the Vaadin 6 semantics for components and add-ons that do not use Vaadin 7 RPC directly.
ui
- the UI receiving the invocations datalastSyncIdSeenByClient
- the most recent sync id the client has seen at the time the
request was sentinvocationsData
- JSON containing all information needed to execute all
requested RPC calls.protected void handleInvocation(UI ui, ClientConnector connector, ServerRpcMethodInvocation invocation)
ui
- the UI containing the connectorconnector
- the connector the RPC is targeted toinvocation
- information about the rpc to invokeprotected void handleInvocation(UI ui, ClientConnector connector, LegacyChangeVariablesInvocation legacyInvocation)
ui
- the UI containing the connectorconnector
- the connector the RPC is targeted toinvocation
- information about the rpc to invokeprotected void changeVariables(Object source, VariableOwner owner, Map<String,Object> m)
protected String getMessage(Reader reader) throws IOException
IOException
public static String getIgnoredDisabledError(String what, ClientConnector connector)
connector
- the connector which is disabled (or invisible)Copyright © 2016 Vaadin Ltd. All rights reserved.