UNPKG

diffusion

Version:

Diffusion JavaScript client

29 lines (26 loc) 949 B
var Update = require('./update'); var BEES = require('serialisers/byte-encoded-enum-serialiser'); var ContentSerialiser = require('../content/serialiser'); module.exports = { read: function (input) { var type = BEES.read(Update.Type, input); switch (type) { case Update.Type.CONTENT : var data = ContentSerialiser.read(input); return new Update(data); default: throw new Error('Received unimplemented update type ' + type); } }, write: function (output, update) { output.write(update.type); switch (update.type) { case Update.Type.CONTENT: output.write(output, update.action); ContentSerialiser.write(output, update.data); break; default: throw new Error('Trying to write unimplemented update type ' + update.type); } } };