/** * Default constructor. * * @param reportId the report ID this strategy is constructed for. * @param basePath the base path to the report to prefix the constructed link. * @param strategy the strategy to construct the link suffix to the base path. * @throws IllegalArgumentException if <code>helper</code> or * <code>reportLocation</code> is <code>null</code> or * <code>reportArtifactId</code> is blank. */ public ExternalReport(final ReportId reportId, final String basePath, final LinkConstructorStrategy strategy) throws IllegalArgumentException { checkArguments(reportId, basePath, strategy); this.reportId = reportId; this.basePath = basePath; this.strategy = strategy; }