001 package com.hammurapi.review; 002 003 import java.util.ArrayList; 004 import java.util.Collection; 005 import java.util.HashMap; 006 import java.util.List; 007 import java.util.Map; 008 009 import com.hammurapi.review.Module; 010 011 public class Summary extends Aggregator { 012 013 private Map<String, ModuleAggregator> modules = new HashMap<String, ModuleAggregator>(); 014 private List<Exception> exceptions = new ArrayList<Exception>(); 015 016 public ObservationSink getObservationSink(Module module) { 017 ModuleAggregator ret = modules.get(module.getName()); 018 if (ret==null) { 019 ret = new ModuleAggregator(module, this); 020 modules.put(module.getName(), ret); 021 } 022 return ret; 023 } 024 025 public void onException(Exception e) { 026 exceptions.add(e); 027 } 028 029 public List<Exception> getExceptions() { 030 return exceptions; 031 } 032 033 public Collection<ModuleAggregator> getModules() { 034 return modules.values(); 035 } 036 037 }