hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
42 lines • 1.76 kB
JavaScript
var ClientMessage = require('../ClientMessage');
var BitsUtil_1 = require('../BitsUtil');
var ListMessageType_1 = require('./ListMessageType');
var REQUEST_TYPE = ListMessageType_1.ListMessageType.LIST_LISTITERATOR;
var RESPONSE_TYPE = 106;
var RETRYABLE = true;
var ListListIteratorCodec = (function () {
function ListListIteratorCodec() {
}
ListListIteratorCodec.calculateSize = function (name, index) {
var dataSize = 0;
dataSize += BitsUtil_1.BitsUtil.calculateSizeString(name);
dataSize += BitsUtil_1.BitsUtil.INT_SIZE_IN_BYTES;
return dataSize;
};
ListListIteratorCodec.encodeRequest = function (name, index) {
var clientMessage = ClientMessage.newClientMessage(this.calculateSize(name, index));
clientMessage.setMessageType(REQUEST_TYPE);
clientMessage.setRetryable(RETRYABLE);
clientMessage.appendString(name);
clientMessage.appendInt32(index);
clientMessage.updateFrameLength();
return clientMessage;
};
ListListIteratorCodec.decodeResponse = function (clientMessage, toObjectFunction) {
if (toObjectFunction === void 0) { toObjectFunction = null; }
var parameters = { 'response': null };
var responseSize = clientMessage.readInt32();
var response = [];
for (var responseIndex = 0; responseIndex < responseSize; responseIndex++) {
var responseItem;
responseItem = clientMessage.readData();
response.push(responseItem);
}
parameters['response'] = response;
return parameters;
};
return ListListIteratorCodec;
}());
exports.ListListIteratorCodec = ListListIteratorCodec;
//# sourceMappingURL=ListListIteratorCodec.js.map
;