hazelcast-client
Version:
Hazelcast - open source In-Memory Data Grid - client for NodeJS
37 lines • 1.53 kB
JavaScript
var ClientMessage = require('../ClientMessage');
var BitsUtil_1 = require('../BitsUtil');
var QueueMessageType_1 = require('./QueueMessageType');
var REQUEST_TYPE = QueueMessageType_1.QueueMessageType.QUEUE_POLL;
var RESPONSE_TYPE = 105;
var RETRYABLE = false;
var QueuePollCodec = (function () {
function QueuePollCodec() {
}
QueuePollCodec.calculateSize = function (name, timeoutMillis) {
var dataSize = 0;
dataSize += BitsUtil_1.BitsUtil.calculateSizeString(name);
dataSize += BitsUtil_1.BitsUtil.LONG_SIZE_IN_BYTES;
return dataSize;
};
QueuePollCodec.encodeRequest = function (name, timeoutMillis) {
var clientMessage = ClientMessage.newClientMessage(this.calculateSize(name, timeoutMillis));
clientMessage.setMessageType(REQUEST_TYPE);
clientMessage.setRetryable(RETRYABLE);
clientMessage.appendString(name);
clientMessage.appendLong(timeoutMillis);
clientMessage.updateFrameLength();
return clientMessage;
};
QueuePollCodec.decodeResponse = function (clientMessage, toObjectFunction) {
if (toObjectFunction === void 0) { toObjectFunction = null; }
var parameters = { 'response': null };
if (clientMessage.readBoolean() !== true) {
parameters['response'] = toObjectFunction(clientMessage.readData());
}
return parameters;
};
return QueuePollCodec;
}());
exports.QueuePollCodec = QueuePollCodec;
//# sourceMappingURL=QueuePollCodec.js.map
;