modules = new HashSet<String>(result.getModules());
numberOfModules = modules.size();
errors = new ArrayList<String>(result.getErrorMessages());
numberOfWarnings = result.getNumberOfAnnotations();
AnnotationContainer referenceResult = history.getReferenceAnnotations();
delta = result.getNumberOfAnnotations() - referenceResult.getNumberOfAnnotations();
lowDelta = computeDelta(result, referenceResult, Priority.LOW);
normalDelta = computeDelta(result, referenceResult, Priority.NORMAL);
highDelta = computeDelta(result, referenceResult, Priority.HIGH);
Set<FileAnnotation> allWarnings = result.getAnnotations();
Set<FileAnnotation> newWarnings = AnnotationDifferencer.getNewAnnotations(allWarnings, referenceResult.getAnnotations());
numberOfNewWarnings = newWarnings.size();
newWarningsReference = new WeakReference<Collection<FileAnnotation>>(newWarnings);
Set<FileAnnotation> fixedWarnings = AnnotationDifferencer.getFixedAnnotations(allWarnings, referenceResult.getAnnotations());
numberOfFixedWarnings = fixedWarnings.size();
fixedWarningsReference = new WeakReference<Collection<FileAnnotation>>(fixedWarnings);
highWarnings = result.getNumberOfAnnotations(Priority.HIGH);
normalWarnings = result.getNumberOfAnnotations(Priority.NORMAL);