in java/grafana-api/src/main/java/com/epam/deltix/grafana/base/Aggregation.java [50:85]
static Aggregation composition(Aggregation first, Aggregation second) {
return new Aggregation() {
@Override
public boolean add(GenericRecord record) throws RecordValidationException {
if (first.add(record)) {
GenericRecord r = first.record(record.timestamp());
if (second.isValid(r)) {
return second.add(r);
} else {
throw new RecordValidationException(r, second);
}
}
return false;
}
@Override
public Collection<Field> fields() {
return second.fields();
}
@Override
public GenericRecord record(long timestamp) {
return second.record(timestamp);
}
@Override
public boolean isValid(GenericRecord record) {
return first.isValid(record);
}
@Override
public GenericRecord calculateLast() {
return second.calculateLast();
}
};
}