diffusion
Version:
Diffusion JavaScript client
38 lines (34 loc) • 871 B
JavaScript
var Codec = require('io/codec');
var KEY_MAP = {
PUBLISH_VALUES_ONLY : 30,
VALIDATE_VALUES : 31,
TIME_SERIES_EVENT_VALUE_TYPE : 2,
TIME_SERIES_RETAINED_RANGE : 3,
TIME_SERIES_SUBSCRIPTION_RANGE : 4,
SCHEMA : 5,
DONT_RETAIN_VALUE : 6,
PERSISTENT : 7,
REMOVAL : 8,
_CREATOR : 9,
CONFLATION : 10,
OWNER : 11
};
function findKey(id) {
for (var k in KEY_MAP) {
if (KEY_MAP[k] === id) {
return k;
}
}
}
module.exports = {
read : function(input) {
return Codec.readMap(input, function(input) {
return findKey(Codec.readByte(input));
}, Codec.readString);
},
write : function(output, properties) {
Codec.writeMap(output, properties, function(output, k) {
Codec.writeByte(output, KEY_MAP[k]);
}, Codec.writeString);
}
};