diffusion
Version:
Diffusion JavaScript client
33 lines (29 loc) • 909 B
JavaScript
var UpdateSourceUpdateResponse = require('services/update-source/update-source-update-response');
var EnumSerialiser = require('serialisers/enum-converter');
var Codec = require('io/codec');
var ResponseCodes = {
SUCCESS : 0,
INCOMPATIBLE_UPDATE : 1,
UPDATE_FAILED : 2,
INVALID_UPDATER : 3,
MISSING_TOPIC : 4,
INVALID_ADDRESS : 5,
DUPLICATES : 6,
EXCLUSIVE_UPDATER_CONFLICT : 7,
DELTA_WITHOUT_VALUE : 8,
CLUSTER_REPARTITION : 9,
INCOMPATIBLE_STATE : 10
};
module.exports = {
read : function(input) {
var error = EnumSerialiser.read(input, ResponseCodes);
return new UpdateSourceUpdateResponse(error === 'SUCCESS' ? null : error);
},
write : function(output, req) {
if (req.error) {
EnumSerialiser.write(output, req.error, ResponseCodes);
} else {
Codec.writeByte(output, 0);
}
}
};