protected Double calculateScalar(Interval interval, DataProperty property, ScalarFunction function) { Collection values = interval.getValues(property); if (!CollectionUtils.exists(values, NON_NULL_ELEMENTS)) { return new Double(0); } else { double value = function.scalar(values); // Check constraints every time an scalar calculation is carried out. ProfilerHelper.checkRuntimeConstraints(); return new Double(value); } }