hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
35 lines • 1.54 kB
JavaScript
var ClientMessage = require("../ClientMessage");
var BitsUtil_1 = require("../BitsUtil");
var AtomicLongMessageType_1 = require("./AtomicLongMessageType");
var REQUEST_TYPE = AtomicLongMessageType_1.AtomicLongMessageType.ATOMICLONG_ADDANDGET;
var RESPONSE_TYPE = 103;
var RETRYABLE = false;
var AtomicLongAddAndGetCodec = (function () {
function AtomicLongAddAndGetCodec() {
}
AtomicLongAddAndGetCodec.calculateSize = function (name, delta) {
var dataSize = 0;
dataSize += BitsUtil_1.BitsUtil.calculateSizeString(name);
dataSize += BitsUtil_1.BitsUtil.LONG_SIZE_IN_BYTES;
return dataSize;
};
AtomicLongAddAndGetCodec.encodeRequest = function (name, delta) {
var clientMessage = ClientMessage.newClientMessage(this.calculateSize(name, delta));
clientMessage.setMessageType(REQUEST_TYPE);
clientMessage.setRetryable(RETRYABLE);
clientMessage.appendString(name);
clientMessage.appendLong(delta);
clientMessage.updateFrameLength();
return clientMessage;
};
AtomicLongAddAndGetCodec.decodeResponse = function (clientMessage, toObjectFunction) {
if (toObjectFunction === void 0) { toObjectFunction = null; }
var parameters = { 'response': null };
parameters['response'] = clientMessage.readLong();
return parameters;
};
return AtomicLongAddAndGetCodec;
}());
exports.AtomicLongAddAndGetCodec = AtomicLongAddAndGetCodec;
//# sourceMappingURL=AtomicLongAddAndGetCodec.js.map
;