001: /*
002: * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
003: * PROPRIETARY/CONFIDENTIAL. Use of this product is subject to license terms.
004: */
005: package com.sun.portal.ubt.report.app;
006:
007: import net.sf.jasperreports.engine.*;
008: import net.sf.jasperreports.engine.JRException;
009: import net.sf.jasperreports.engine.util.JRLoader;
010: import net.sf.jasperreports.engine.data.JRTableModelDataSource;
011: import net.sf.jasperreports.view.JasperViewer;
012:
013: import java.util.*;
014: import java.io.File;
015: import java.io.IOException;
016: import java.lang.reflect.InvocationTargetException;
017:
018: import com.sun.portal.ubt.report.data.DataMiner;
019: import com.sun.portal.ubt.report.data.MinerCollection;
020: import com.sun.portal.ubt.report.data.file.FileDataMiner;
021: import com.sun.portal.ubt.report.data.file.raw.*;
022: import com.sun.portal.ubt.report.data.file.derived.*;
023: import com.sun.portal.ubt.report.data.file.parser.BadDelimiterException;
024: import com.sun.portal.ubt.report.view.toc.*;
025: import com.sun.portal.ubt.report.view.chart.*;
026:
027: /**
028: *
029: */
030: public class UBTReportsApp {
031: public static void compile(String fileName) throws JRException {
032: JasperCompileManager.compileReportToFile(fileName);
033: }
034:
035: public static void fill(Map parameters, String fileName)
036: throws JRException {
037: JasperFillManager.fillReportToFile(fileName, parameters,
038: new JREmptyDataSource());
039: }
040:
041: public static void print(String fileName) throws JRException {
042: JasperPrintManager.printReport(fileName, true);
043: }
044:
045: public static void html(String fileName) throws JRException {
046: JasperExportManager.exportReportToHtmlFile(fileName);
047: }
048:
049: public static void pdf(String fileName) throws JRException {
050: JasperExportManager.exportReportToPdfFile(fileName);
051: }
052:
053: public static void display() {
054:
055: }
056:
057: public static void main(String[] args) throws Exception,
058: IllegalAccessException, BadDelimiterException, IOException,
059: InvocationTargetException {
060: String ubtlog = "d:\\UBTReports\\resource\\ubt.log"; //"d:\\ubtupdate.log"; //
061:
062: DataMiner miner = new FileDataMiner(new File(ubtlog));
063: UserIdentityMiner uim = new UserIdentityMiner();
064: ChannelWiseUserActionsMiner cwua = new ChannelWiseUserActionsMiner();
065: ChannelWiseActionsMiner cwam = new ChannelWiseActionsMiner();
066: ContainerRenderMiner crm = new ContainerRenderMiner();
067: ChannelRenderMiner chrm = new ChannelRenderMiner();
068: PortletMiner pmr = new PortletRenderMiner();
069: UserLoginMiner ulm = new UserLoginMiner();
070: ContainerWiseActionsMiner pcm = new ContainerWiseActionsMiner();
071: ContainerWiseUserActionsMiner pcuwm = new ContainerWiseUserActionsMiner();
072: PortletActionsMiner par = new PortletActionsMiner();
073: MinerCollection coll = new MinerCollection();
074: coll.add(uim);
075: coll.add(cwua);
076: coll.add(cwam);
077: coll.add(crm);
078: coll.add(chrm);
079: coll.add(pmr);
080: coll.add(ulm);
081: coll.add(pcm);
082: coll.add(pcuwm);
083: coll.add(par);
084: miner.setMinerCollection(coll);
085: miner.mine(null);
086: Map parameters = new HashMap();
087:
088: ChannelWiseActionsChart cwac = new ChannelWiseActionsChart(
089: cwam, Locale.getDefault());
090: Vector barcharts = cwac.getChart();
091: Vector summarybarchart = new ContainerWiseActionsChart(cwam,
092: Locale.getDefault()).getChart();
093: Vector piecharts = new ChannelWiseUserActionsChart(cwua, Locale
094: .getDefault()).getChart();
095: Vector summarypiechart = new ContainerWiseUserActionsChart(
096: cwua, Locale.getDefault()).getChart();
097:
098: Vector containerChart = new ContainerRenderChart(crm, Locale
099: .getDefault()).getChart();
100: Vector channelRenderPie = new ChannelRenderChart(chrm, Locale
101: .getDefault()).getChart();
102: Vector channelRenderBar = new ChannelRenderUniqueUsersChart(
103: chrm, Locale.getDefault()).getChart();
104: Vector portletBar = new PortletChart(pmr, Locale.getDefault())
105: .getChart();
106: Vector portalUserBar = new UserIdentityChart(uim, Locale
107: .getDefault()).getChart();
108: Vector userLoginChart = new UserLoginChart(ulm, Locale
109: .getDefault()).getChart();
110: Vector customizationChart = new ContainerActionsChart(pcm,
111: Locale.getDefault()).getChart();
112: Vector customizationRateChart = new ContainerActionsRateChart(
113: pcuwm, Locale.getDefault()).getChart();
114: Vector portletActionsChart = new PortletActionsRateChart(par,
115: Locale.getDefault()).getChart();
116: parameters.put("BarCharts", barcharts);
117: parameters.put("PieCharts", piecharts);
118: parameters.put("SummaryBarChart", summarybarchart);
119: parameters.put("SummaryPieChart", summarypiechart);
120: parameters.put("ContainerChart", containerChart);
121:
122: parameters.put("CustomizationChart", customizationChart);
123: parameters
124: .put("CustomizationRateChart", customizationRateChart);
125: parameters.put("PortletActionsChart", portletActionsChart);
126:
127: parameters.put("ChannelRenderPie", channelRenderPie);
128: parameters.put("ChannelRenderBar", channelRenderBar);
129: parameters.put("PortletBar", portletBar);
130: parameters.put("PortalUserBar", portalUserBar);
131: parameters.put("UserLoginChart", userLoginChart);
132: parameters.put("ReportTitle", "Portal User Identity Report");
133: parameters.put("ReportHelpLink", "./help.html");
134: parameters.put("ReportLogo",
135: "d:\\UBTReports\\resource\\logo_sun.gif");
136: parameters.put("ReportDescription",
137: "This is a sample UBT Report.");
138: parameters.put("DataTabel",
139: new ChannelWiseUserActionsDataSource(cwua));
140: parameters
141: .put(
142: "TOCReport",
143: (JasperReport) JRLoader
144: .loadObject("d:\\UBTReports\\resource\\TableOfContent.jasper"));
145:
146: parameters.put("PortalUserCustomizationToc",
147: new PortalUserCustomizationToc(
148: new ChannelWiseActionsDataSource(cwam), Locale
149: .getDefault()).getToc());
150: parameters.put("PortalChannelRenderToc",
151: new PortalChannelRenderToc(new ChannelRenderDataSource(
152: chrm), Locale.getDefault()).getToc());
153: parameters.put("PortletRenderToc", new PortletRenderToc(
154: new PortletDataSource(pmr), Locale.getDefault())
155: .getToc());
156: parameters.put("PortalUserIdentityToc",
157: new PortalUserIdentityToc(new UserIdentityDataSource(
158: uim), Locale.getDefault()).getToc());
159: parameters.put("PortalUserLoginToc", new PortalUserLoginToc(
160: null, Locale.getDefault()).getToc());
161: parameters.put("PortalContainerCustomizationToc",
162: new PortalContainerCustomizationToc(null, Locale
163: .getDefault()).getToc());
164: parameters.put("PortalContainerRenderToc",
165: new PortalContainerRenderToc(null, Locale.getDefault())
166: .getToc());
167: parameters.put("PortletActionsToc", new PortletActionsToc(null,
168: Locale.getDefault()).getToc());
169:
170: compile("d:\\UBTReports\\resource\\TableOfContent.jrxml");
171:
172: //JasperFillManager.fillReportToFile("d:\\UBTReports\\resource\\TableOfContent.jasper", parameters, new JRBeanCollectionDataSource( new PortalUserCustomizationToc(new ChannelWiseActionsDataSource(cwam)).getToc()));
173: //html("d:\\UBTReports\\resource\\TableOfContent.jrprint");
174: compile("d:\\UBTReports\\resource\\PortalUserIdentity.jrxml");
175: JasperFillManager.fillReportToFile(
176: "d:\\UBTReports\\resource\\PortalUserIdentity.jasper",
177: parameters, new JRTableModelDataSource(
178: new UserIdentityDataSource(uim)));
179: html("d:\\UBTReports\\resource\\PortalUserIdentity.jrprint");
180:
181: compile("d:\\UBTReports\\resource\\PortalUserCustomization.jrxml");
182: JasperFillManager
183: .fillReportToFile(
184: "d:\\UBTReports\\resource\\PortalUserCustomization.jasper",
185: parameters, new JRTableModelDataSource(
186: new ChannelWiseUserActionsDataSource(
187: cwua)));
188: html("d:\\UBTReports\\resource\\PortalUserCustomization.jrprint");
189:
190: compile("d:\\UBTReports\\resource\\PortalContainerRender.jrxml");
191: JasperFillManager
192: .fillReportToFile(
193: "d:\\UBTReports\\resource\\PortalContainerRender.jasper",
194: parameters, new JRTableModelDataSource(
195: new ChannelWiseUserActionsDataSource(
196: cwua)));
197: html("d:\\UBTReports\\resource\\PortalContainerRender.jrprint");
198:
199: compile("d:\\UBTReports\\resource\\PortalChannelRender.jrxml");
200: JasperFillManager.fillReportToFile(
201: "d:\\UBTReports\\resource\\PortalChannelRender.jasper",
202: parameters, new JRTableModelDataSource(
203: new ChannelRenderDataSource(chrm)));
204: html("d:\\UBTReports\\resource\\PortalChannelRender.jrprint");
205:
206: compile("d:\\UBTReports\\resource\\PortletRender.jrxml");
207: JasperFillManager.fillReportToFile(
208: "d:\\UBTReports\\resource\\PortletRender.jasper",
209: parameters, new JRTableModelDataSource(
210: new PortletDataSource(pmr)));
211: html("d:\\UBTReports\\resource\\PortletRender.jrprint");
212:
213: compile("d:\\UBTReports\\resource\\PortalUserLogin.jrxml");
214: JasperFillManager.fillReportToFile(
215: "d:\\UBTReports\\resource\\PortalUserLogin.jasper",
216: parameters, new JRTableModelDataSource(null));
217: html("d:\\UBTReports\\resource\\PortalUserLogin.jrprint");
218:
219: compile("d:\\UBTReports\\resource\\PortalContainerCustomization.jrxml");
220: JasperFillManager
221: .fillReportToFile(
222: "d:\\UBTReports\\resource\\PortalContainerCustomization.jasper",
223: parameters, new JRTableModelDataSource(null));
224: html("d:\\UBTReports\\resource\\PortalContainerCustomization.jrprint");
225:
226: compile("d:\\UBTReports\\resource\\PortletActions.jrxml");
227: JasperFillManager.fillReportToFile(
228: "d:\\UBTReports\\resource\\PortletActions.jasper",
229: parameters, new JRTableModelDataSource(null));
230: html("d:\\UBTReports\\resource\\PortletActions.jrprint");
231: }
232: }
|