THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Name | Type Code | Size (bytes) |
---|---|---|
byte | 1 | 1 |
short | 2 | 2 |
int | 3 | 4 |
long | 4 | 8 |
float | 5 | 4 |
double | 6 | 8 |
char | 7 | 2 |
bool | 8 | 1 |
string | 9 | 4 bytes length + length * 2 |
UUID (Guid) | 10 | 8 |
date | 11 | 8 |
byte array | 12 | 4 bytes length + length |
short array | 13 | 4 bytes length + length * 2 |
int array | 14 | 4 bytes length + length * 4 |
long array | 15 | 4 bytes length + length * 8 |
float array | 16 | 4 bytes length + length * 4 |
double array | 17 | 4 bytes length + length * 8 |
char array | 18 | 4 bytes length + length * 2 |
bool array | 19 | 4 bytes length + length |
string array | 20 | 4 bytes length + variable length strings, see above |
UUID (Guid) array | 21 | 4 bytes length + length * 8 |
date array | 22 | 4 bytes length + length * 8 |
NULL | 101 | 0 |
Complex Objects
Complex objects consist of a 24-byte header and a set of fields (key-value pairs).
Header | |
---|---|
byte | Object type code, always 103 |
byte | Version, always 1 |
short | Flags, see below |
int | Type id, Java-style hash code of the type name |
int | Hash code, Java-style hash of contents without header |
int | Length, including header |
int | Schema Id, see below |
int | SchemaOffset, see below |
TODO
All messages, request and response, including handshake, start with int
message length (excluding these first 4 bytes). E.g. empty message would be represented by 4 zero bytes.
...