pulse - the web application framework Get pulse at SourceForge.net. Fast, secure and Free Open Source software downloads Ohloh project report for pulse-java

org.torweg.pulse.component.statistics.view
Class OverViewReportController

java.lang.Object
  extended by org.torweg.pulse.bundle.Controller
      extended by org.torweg.pulse.component.statistics.view.AbstractStatisticsController<T,V>
          extended by org.torweg.pulse.component.statistics.view.AbstractStatisticsViewController<OverViewControllerConfiguration,OverViewControllerResultData,OverViewControllerResult>
              extended by org.torweg.pulse.component.statistics.view.OverViewController
                  extended by org.torweg.pulse.component.statistics.view.OverViewGFXController
                      extended by org.torweg.pulse.component.statistics.view.OverViewReportController
All Implemented Interfaces:
IStatisticsPDFReportController<OverViewControllerResult>, Configurable<AbstractStatisticsViewControllerConfiguration>

public class OverViewReportController
extends OverViewGFXController
implements IStatisticsPDFReportController<OverViewControllerResult>

Provides reporting functionality for the statistics overview.

Version:
$Revision: 1568 $
Author:
Daniel Dietz

Nested Class Summary
 
Nested classes/interfaces inherited from class org.torweg.pulse.bundle.Controller
Controller.AlwaysRun
 
Field Summary
 
Fields inherited from class org.torweg.pulse.component.statistics.view.AbstractStatisticsViewController
DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, NO_SERVERID
 
Fields inherited from class org.torweg.pulse.component.statistics.view.AbstractStatisticsController
LOGGER
 
Constructor Summary
OverViewReportController()
           
 
Method Summary
 java.util.Map<java.lang.String,java.io.File> buildPDFFileMap(AbstractStatisticsViewControllerResult<?> result)
          Returns a map which maps the chart graphics to the name of the temporary File used for the creation of the PDF report.
 OverViewControllerResult buildPDFReportResult(Duration duration, Period resolution, StatisticsServer server, org.hibernate.Session s)
          Returns an OverViewControllerResult as required for the creation the PDF for the given Duration, the given Period and the given StatisticsServer .
 OverViewControllerResult generatePDFReport(ServiceRequest request)
          Generates a PDF-report for the OverViewControllerResult.
 
Methods inherited from class org.torweg.pulse.component.statistics.view.OverViewGFXController
buildOverViewCountryChart, buildOverViewDataChart, loadOverViewCountryChart, loadOverViewDataChart
 
Methods inherited from class org.torweg.pulse.component.statistics.view.OverViewController
buildViewResultData, clearSessionData, initView, newResult
 
Methods inherited from class org.torweg.pulse.component.statistics.view.AbstractStatisticsViewController
chartHeightFromCommand, chartWidthFromCommand, determineJFreeChartTimePeriod, durationFromCommand, fetchResultDataFromSession, fileNameForReport, initView, integerFromCommand, loadAggregations, loadStatisticsServer, outputReportPDF, putResultDataInSession, removeResultDataFromSession, resolutionFromCommand, serverIdFromCommand, userIsNotAllowedEvent
 
Methods inherited from class org.torweg.pulse.component.statistics.view.AbstractStatisticsController
getConfiguration, hasRoleForServer, initialize
 
Methods inherited from class org.torweg.pulse.bundle.Controller
getAlwaysRun, isAlwaysRun, setAlwaysRun
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.torweg.pulse.configuration.Configurable
initialize
 

Constructor Detail

OverViewReportController

public OverViewReportController()
Method Detail

generatePDFReport

@RequireToken
@Action(value="generatePDFReportOverView", generate=true)
@Permission(value="generatePDFReportOverView")
@Groups(values="Admin.Report.Site.Statistics")
public final OverViewControllerResult generatePDFReport(ServiceRequest request)
Generates a PDF-report for the OverViewControllerResult. If available the result-data from the current ServiceSession will be used, otherwise the result-data will be (freshly) generated.

Specified by:
generatePDFReport in interface IStatisticsPDFReportController<OverViewControllerResult>
Parameters:
request - the current ServiceRequest
Returns:
an OverViewControllerResult
See Also:
#generatePDFReport(org.torweg.pulse.service.request.ServiceRequest)

buildPDFFileMap

public final java.util.Map<java.lang.String,java.io.File> buildPDFFileMap(AbstractStatisticsViewControllerResult<?> result)
Returns a map which maps the chart graphics to the name of the temporary File used for the creation of the PDF report. Also adds the folder for the flag icons to be used.

Specified by:
buildPDFFileMap in interface IStatisticsPDFReportController<OverViewControllerResult>
Parameters:
result - the current OverViewControllerResult
Returns:
a map which maps the chart graphics to the name of the temporary File

buildPDFReportResult

public final OverViewControllerResult buildPDFReportResult(Duration duration, Period resolution, StatisticsServer server,
                                                           org.hibernate.Session s)
Returns an OverViewControllerResult as required for the creation the PDF for the given Duration, the given Period and the given StatisticsServer .

NOTE: for request independent creation of the result required for the creation of the PDF.

Specified by:
buildPDFReportResult in interface IStatisticsPDFReportController<OverViewControllerResult>
Parameters:
duration - the Duration
resolution - the Period (null permitted)
server - the StatisticsServer
s - the current HibernateTM-Session
Returns:
an OverViewControllerResult as required for the creation the PDF
See Also:
IStatisticsPDFReportController.buildPDFReportResult(org.torweg.pulse.util.time.Duration, org.torweg.pulse.util.time.Period, org.torweg.pulse.component.statistics.model.StatisticsServer, org.hibernate.Session)