UNPKG

hazelcast-client

Version:

Hazelcast - open source In-Memory Data Grid - client for NodeJS

55 lines 2.49 kB
"use strict"; var ClientMessage = require("../ClientMessage"); var BitsUtil_1 = require("../BitsUtil"); var RingbufferMessageType_1 = require("./RingbufferMessageType"); var REQUEST_TYPE = RingbufferMessageType_1.RingbufferMessageType.RINGBUFFER_READMANY; var RESPONSE_TYPE = 115; var RETRYABLE = false; var RingbufferReadManyCodec = (function () { function RingbufferReadManyCodec() { } RingbufferReadManyCodec.calculateSize = function (name, startSequence, minCount, maxCount, filter) { var dataSize = 0; dataSize += BitsUtil_1.BitsUtil.calculateSizeString(name); dataSize += BitsUtil_1.BitsUtil.LONG_SIZE_IN_BYTES; dataSize += BitsUtil_1.BitsUtil.INT_SIZE_IN_BYTES; dataSize += BitsUtil_1.BitsUtil.INT_SIZE_IN_BYTES; dataSize += BitsUtil_1.BitsUtil.BOOLEAN_SIZE_IN_BYTES; if (filter !== null) { dataSize += BitsUtil_1.BitsUtil.calculateSizeData(filter); } return dataSize; }; RingbufferReadManyCodec.encodeRequest = function (name, startSequence, minCount, maxCount, filter) { var clientMessage = ClientMessage.newClientMessage(this.calculateSize(name, startSequence, minCount, maxCount, filter)); clientMessage.setMessageType(REQUEST_TYPE); clientMessage.setRetryable(RETRYABLE); clientMessage.appendString(name); clientMessage.appendLong(startSequence); clientMessage.appendInt32(minCount); clientMessage.appendInt32(maxCount); clientMessage.appendBoolean(filter === null); if (filter !== null) { clientMessage.appendData(filter); } clientMessage.updateFrameLength(); return clientMessage; }; RingbufferReadManyCodec.decodeResponse = function (clientMessage, toObjectFunction) { if (toObjectFunction === void 0) { toObjectFunction = null; } var parameters = { 'readCount': null, 'items': null }; parameters['readCount'] = clientMessage.readInt32(); var itemsSize = clientMessage.readInt32(); var items = []; for (var itemsIndex = 0; itemsIndex < itemsSize; itemsIndex++) { var itemsItem; itemsItem = clientMessage.readData(); items.push(itemsItem); } parameters['items'] = items; return parameters; }; return RingbufferReadManyCodec; }()); exports.RingbufferReadManyCodec = RingbufferReadManyCodec; //# sourceMappingURL=RingbufferReadManyCodec.js.map