computeMessageSize function
Implementation
int computeMessageSize(Message message, Schema schema) {
var size = Protocol.bytesPerHeader;
size += message.namespace.length;
size += schema.bytesPerBoolMask + schema.bytesPerMask;
var intCount = schema.intCount;
if (intCount > 0) {
for (var id = 0; id < intCount; id++) {
if (message.containsInt(id)) {
size += getSizeFromId(id, schema);
}
}
}
var stringsCount = schema.stringsCount;
if (stringsCount > 0) {
for (var id = 0; id < stringsCount; id++) {
if (message.containsString(id)) {
size += message.getString(id)!.length + 1;
}
}
}
if (schema.includedBytes && message.containsPayload()) {
size += 2 + message.payloadBytes!.length;
}
return message.bytesPerMessage = size;
}