serialize method

  1. @override
Uint8List serialize()
override

Implementation

@override
Uint8List serialize() {
	var buffer = Uint8List(size);
	var currentPos = 0;
	buffer.setRange(currentPos, currentPos + type.size, type.serialize());
	currentPos += type.size;
	buffer.setRange(currentPos, currentPos + 1, intToBytes(version, 1));
	currentPos += 1;
	buffer.setRange(currentPos, currentPos + 2, intToBytes(entityBodyReserved_1, 2));
	currentPos += 2;
	buffer.setRange(currentPos, currentPos + network.size, network.serialize());
	currentPos += network.size;
	buffer.setRange(currentPos, currentPos + timestamp.size, timestamp.serialize());
	currentPos += timestamp.size;
	buffer.setRange(currentPos, currentPos + 4, intToBytes(signerPublicKeySize, 4));
	currentPos += 4;
	buffer.setRange(currentPos, currentPos + signerPublicKey.size, signerPublicKey.serialize());
	currentPos += signerPublicKey.size;
	buffer.setRange(currentPos, currentPos + 4, intToBytes(signatureSize, 4));
	currentPos += 4;
	buffer.setRange(currentPos, currentPos + signature.size, signature.serialize());
	currentPos += signature.size;
	buffer.setRange(currentPos, currentPos + fee.size, fee.serialize());
	currentPos += fee.size;
	buffer.setRange(currentPos, currentPos + deadline.size, deadline.serialize());
	currentPos += deadline.size;
	buffer.setRange(currentPos, currentPos + 4, intToBytes(modifications.length, 4));
	currentPos += 4;
	sort();
	var res_modifications = ArrayHelpers.writeArray(buffer, modifications, currentPos, (e) { return ArrayHelpers.getValue(e.modification);});
	currentPos = res_modifications.item2;
	buffer = res_modifications.item1;
	buffer.setRange(currentPos, currentPos + 4, intToBytes(minApprovalDeltaSize, 4));
	currentPos += 4;
	buffer.setRange(currentPos, currentPos + 4, intToBytes(minApprovalDelta, 4));
	currentPos += 4;
	return buffer;
}