@Override public Measure addMeasure(Resource resource, Measure measure) { Bucket bucket = getBucket(resource); if (bucket != null) { org.sonar.api.batch.measure.Metric metric = metricFinder.findByKey(measure.getMetricKey()); if (metric == null) { throw new SonarException("Unknown metric: " + measure.getMetricKey()); } if (!isTechnicalProjectCopy(resource) && !measure.isFromCore() && INTERNAL_METRICS.contains(metric)) { LOG.debug( "Metric " + metric.key() + " is an internal metric computed by SonarQube. Provided value is ignored."); return measure; } if (measureCache.contains(resource, measure)) { throw new SonarException( "Can not add the same measure twice on " + resource + ": " + measure); } measureCache.put(resource, measure); } return measure; }