Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

RequestHeader => ApiId apiVersion hasMetaDataDescription
ApiId -- => fixedSize = 2 bytes, type = int16 
apiVersion --=> fixedSize = 2 bytes, type = int16 
hasMetaData --=> fixedSize = 1 byte, type = booleanif there is any meta data associated with this request

...

Response => ResponseHeader [MetaData] APIResponse
MetaData --=> Optional
APIResponse –> => (PutResponse | GetResponse | PutAlLRequest | GetAllRequest)

 

Response Header

 The The response header will have resposneType, which indicates its partial response, full response or error. A hasMetaData flag indicates whether the response contains some metadata.

ResponseHeader => (ResponseTypeId | ErrorCode) hasMetaDataDescription
ResponseTypeId --=> fixedSize = 2 bytes, type = int16 
ErrorCode -- => fixedSize = 2 bytes, type = int16 
hasMetaData --=> fixedSize = 1 byte, type = booleanif there is any meta data associated with this request

 

ValueBytes

 

ValueBytes => ValueHeader bytes [ValueHeader bytes]Description
Valueheader => defined below 
bytes => series of bytesSerialized bytes which Geode can understand

 

...

ValueHeader

The purpose of ValueObject to divide the large serialized value into small value chunks. We will have SerializedBytesHeader with each partial serialized bytes. It would contain size of value header contains the value bytes size and a flag indicates whether it contains all the value bytes. 

ValueHeader => Size hasPartialBytesDescription
Size => fixedSize = 4 bytes, type = int32Number of serialized bytes
hasPartialBytes => fixedSize = 1 byte, type = booleanWhether this contains partial bytes of value
ValueObject --> Serializedbytes
Serializedbytes --> SerializedBytesHeader PartialSerializedBytes {SerializedBytesHeader PartialSerializedBytes}
SerializedBytesHeader --> Size isPartialBytes
Size --> int32 (Number of serialized bytes)
isPartialBytes --> boolean

APIS

PutRequestResponse

PutRequest --> RegionName KeyObject CallbackArg ValueObject
RegionName --> String
KeyObject --> Serialized bytes of Geode key object type
CallbackArg –-> Serialized bytes of Geode object type

...