diffusion
Version:
Diffusion JavaScript client
29 lines (24 loc) • 794 B
JavaScript
var Codec = require('io/codec');
var serialiser = {
read: function() {
// no-op: only server reads
},
write: function(output, request) {
Codec.writeString(output, request.filter);
if (Object.keys(request.overwriteProperties).length === 0) {
Codec.writeByte(output, 0);
}
else {
Codec.writeByte(output, 1);
Codec.writeDictionary(output, request.overwriteProperties, Codec.writeString);
}
if (Object.keys(request.removeProperties).length === 0) {
Codec.writeByte(output, 0);
}
else {
Codec.writeByte(output, 1);
Codec.writeCollection(output, request.removeProperties, Codec.writeString);
}
}
};
module.exports = serialiser;