...
- If a message is sent in multiple sub-messages, then it will be used for combining the whole message.
- The Client would use correlation id to match the response to its request as well.
...
Request MetaData Key | MetaData KeyId | MetaData Value | Description |
---|---|---|---|
JSON_KEY | 1 fixedSize = 2 bytes, type = int16 | true fixedSize = 1 byte, type = boolean | Geode will expect key as JSON string(or bytes) and convert that into pdx key. If the response will require requires a key, then it wil will convert pdx key to JSON string(or bytes) back. |
JSON_VALUE | 2 fixedSize = 2 bytes, type = int16 | true fixedSize = 1 byte, type = boolean | Geode will expect Value as JSON string(or bytes) and convert that into pdx value. If the response will require requires a value, then it will convert pdx value to JSON string(or bytes) back. |
EVENT_ID | 3 fixedSize = 2 bytes, type = int16 | EventId { uniqueId: type = String ThreadId:type=int64 SequenceId: type=int64 } | The eventid is used to identify same region event in Geode. Geode keeps map of "uniqueId + threadId" Vs "SequenceId" to know whether region event has been already seen or not.
|
...
The purpose of ServerConfigRequest request to get server config from the server. The client needs to send this request after connecting to the server. If the client knows server properties, then there is no need to send this request.
ServerConfigRequest | NumberOfProperties PropertyId PropertyValue{ PropertyId PropertyValue} |
---|---|
NumberOfProperties | fixedSize = 2 bytes, type = int16 |
Propertyid | fixedSize = 2 bytes, type = int16 |
PropertyValue | variable, Value as defined in table below |
...
Client Request Properties | PropertyId | PropertyValue | Description | |
---|---|---|---|---|
CLIENT_ID | 1 | string | Unique id for the client; if client doesn't send this property then server will just create id (client-host, client-port, server-host, server-port). | |
ClIENT_READ_TIMEOUT | 2 | int32 | The client will wait for ClIENT_READ_TIMEOUT for server response. It's a optional property. | |
DIFFIE_HELLMAN_KEY | 3 | byte[] | The client Diffie-Hellman key if the credential is required to encrypt. If server has enabled Diffie-Hellman then client must send this to server. |
AuthRequest
The purpose of AuthRequest to authenticate the client connection. A client can send the auth request in the following format. Before sending the auth request a client can verify the server config by sending the ServerConfigRequest. A client can send key-value pair of credentials to authenticate itself.
...