computePutRowSize: function()

in lib/protocol/plian_buffer_builder.js [101:121]


    computePutRowSize: function (primaryKey, attributeColumns) {
        var size = TableStore.plainBufferConsts.LITTLE_ENDIAN_32_SIZE;
        size += this.computePrimaryKeySize(primaryKey);
        if (attributeColumns && attributeColumns.length != 0) {
            size += 1;
            for (var i = 0; i < attributeColumns.length; i++) {
                if (attributeColumns[i].timestamp === undefined) {
                    for (var k in attributeColumns[i]) {
                        size += this.computeColumnSize(k, attributeColumns[i][k]);
                    }
                } else {
                    for (var k in attributeColumns[i]) {
                        size += this.computeColumnSize(k, attributeColumns[i][k], attributeColumns[i].timestamp);
                        break;//注意 break不能省略
                    }
                }
            }
        }
        size += 2;
        return size;
    },