1
14
15 package com.liferay.portal.kernel.bi.reporting;
16
17 import java.util.Map;
18 import java.util.concurrent.ConcurrentHashMap;
19
20
26 public class ReportFormatExporterRegistry {
27
28 public ReportFormatExporter getExporter(ReportFormat reportFormat) {
29 ReportFormatExporter reportFormatExporter = _reportFormatExporters.get(
30 reportFormat);
31
32 if (reportFormatExporter == null) {
33 throw new IllegalArgumentException(
34 "No exporter found for format " + reportFormat);
35 }
36
37 return reportFormatExporter;
38 }
39
40 public void setExporters(
41 Map<String, ReportFormatExporter> reportFormatExporters) {
42
43 for (Map.Entry<String, ReportFormatExporter> entry :
44 reportFormatExporters.entrySet()) {
45
46 ReportFormat reportFormat = ReportFormat.parse(entry.getKey());
47 ReportFormatExporter reportFormatExporter = entry.getValue();
48
49 _reportFormatExporters.put(reportFormat, reportFormatExporter);
50 }
51 }
52
53 private Map<ReportFormat, ReportFormatExporter> _reportFormatExporters =
54 new ConcurrentHashMap<ReportFormat, ReportFormatExporter>();
55
56 }