in lib/protocol/decoder.js [399:444]
_parseAggResult(aggType, aggResultBody) {
switch (aggType) {
case tsSearchProtos.AggregationType.AGG_AVG: {
return tsSearchProtos.AvgAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_MAX: {
return tsSearchProtos.MaxAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_MIN: {
return tsSearchProtos.MinAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_SUM: {
return tsSearchProtos.SumAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_COUNT: {
return tsSearchProtos.CountAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_DISTINCT_COUNT: {
return tsSearchProtos.DistinctCountAggregationResult.decode(aggResultBody);
}
case tsSearchProtos.AggregationType.AGG_TOP_ROWS: {
let topRowsAggregationResult = tsSearchProtos.TopRowsAggregationResult.decode(aggResultBody);
return {
rows: TableStore.decoder._parseRows(topRowsAggregationResult.rows),
}
}
case tsSearchProtos.AggregationType.AGG_PERCENTILES: {
let percentilesAggregationResult = tsSearchProtos.PercentilesAggregationResult.decode(aggResultBody);
let percentilesAggregationItems = [];
for (let percentilesAggregationItem of percentilesAggregationResult.percentilesAggregationItems) {
percentilesAggregationItems.push({
item: {
key: percentilesAggregationItem.key,
value: TableStore.decoder._parseSearchVariant(percentilesAggregationItem.value),
},
});
}
return {
items: percentilesAggregationItems,
};
}
default:
throw new Error("not exist AggregationType: " + aggType);
}
},