diffusion
Version:
Diffusion JavaScript client
17 lines (14 loc) • 524 B
JavaScript
var Codec = require('io/codec');
var SystemPrincipal = require('features/security').SystemPrincipal;
var serialiser = {
read : function(input) {
var name = Codec.readString(input);
var roles = Codec.readCollection(input, Codec.readString);
return new SystemPrincipal(name, roles);
},
write : function(output, principal) {
Codec.writeString(output, principal.name);
Codec.writeCollection(output, principal.roles, Codec.writeString);
}
};
module.exports = serialiser;