decodeGetRange: function()

in lib/protocol/decoder.js [74:102]


    decodeGetRange: function (buffers) {
        var returnResp = {};
        var response = tsProtos.GetRangeResponse.decode(buffers);

        returnResp.consumed = response.consumed;
        response.rows.limit = response.rows.offset + response.rows.length;
        if (response.rows && response.rows.limit > response.rows.offset) {
            var inputStream = new TableStore.PlainBufferInputStream(response.rows);
            var codedInputStream = new TableStore.PlainBufferCodedInputStream(inputStream);
            returnResp.rows = codedInputStream.readRows();
        } else {
            returnResp.rows = [];
        }

        if (response.nextStartPrimaryKey && response.nextStartPrimaryKey.length > 0) {
            var nextPkInputStream = new TableStore.PlainBufferInputStream(response.nextStartPrimaryKey);
            var nextPkCodedInputStream = new TableStore.PlainBufferCodedInputStream(nextPkInputStream);
            var nextPk = nextPkCodedInputStream.readRow();
            returnResp.nextStartPrimaryKey = nextPk.primaryKey;
        } else {
            returnResp.nextStartPrimaryKey = null;
        }

        returnResp.compressType = response.compressType;
        returnResp.dataBlockType = response.dataBlockType;
        returnResp.nextToken = response.nextToken;

        return returnResp;
    },