public BuildInvoice(ISalesOrderRepository salesOrderRepository, IInvoiceRepository invoiceRepository, IReportBuilderFactory reportBuilderFactory, ITemplateProvider templateProvider) { _salesOrderRepository = salesOrderRepository; _invoiceRepository = invoiceRepository; _reportBuilderFactory = reportBuilderFactory; _templateProvider = templateProvider; }
/// <summary> /// Initializes a new instance of the <see cref="ReportConfigurationBuilder"/> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> internal ReportConfigurationBuilder( IReportBuilderFactory reportBuilderFactory) { if (reportBuilderFactory == null) { throw new ArgumentNullException(nameof(reportBuilderFactory)); } this.reportBuilderFactory = reportBuilderFactory; }
/// <summary> /// Initializes a new instance of the <see cref="ReportConfigurationBuilder"/> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> internal ReportConfigurationBuilder( IReportBuilderFactory reportBuilderFactory) { if (reportBuilderFactory == null) { throw new ArgumentNullException("reportBuilderFactory"); } this.reportBuilderFactory = reportBuilderFactory; }
/// <summary> /// Initializes a new instance of the <see cref="ReportConfigurationValidator"/> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> internal ReportConfigurationValidator(IReportBuilderFactory reportBuilderFactory) { this.reportBuilderFactory = reportBuilderFactory; }
/// <summary> /// Initializes a new instance of the <see cref="ReportConfiguration" /> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> /// <param name="reportFilePatterns">The report file patterns.</param> /// <param name="targetDirectory">The target directory.</param> /// <param name="historyDirectory">The history directory.</param> /// <param name="reportTypes">The report types.</param> /// <param name="sourceDirectories">The source directories.</param> /// <param name="filters">The filters.</param> /// <param name="verbosityLevel">The verbosity level.</param> internal ReportConfiguration( IReportBuilderFactory reportBuilderFactory, IEnumerable<string> reportFilePatterns, string targetDirectory, string historyDirectory, IEnumerable<string> reportTypes, IEnumerable<string> sourceDirectories, IEnumerable<string> filters, string verbosityLevel) { if (reportBuilderFactory == null) { throw new ArgumentNullException("reportBuilderFactory"); } if (reportFilePatterns == null) { throw new ArgumentNullException("reportFilePatterns"); } if (targetDirectory == null) { throw new ArgumentNullException("targetDirectory"); } if (reportTypes == null) { throw new ArgumentNullException("reportTypes"); } if (sourceDirectories == null) { throw new ArgumentNullException("sourceDirectories"); } if (filters == null) { throw new ArgumentNullException("filters"); } this.ReportBuilderFactory = reportBuilderFactory; foreach (var reportFilePattern in reportFilePatterns) { try { this.reportFiles.AddRange(FileSearch.GetFiles(reportFilePattern)); } catch (Exception) { this.failedReportFilePatterns.Add(reportFilePattern); } } this.TargetDirectory = targetDirectory; this.HistoryDirectory = historyDirectory; if (reportTypes.Any()) { this.ReportTypes = reportTypes; } else { this.ReportTypes = new[] { "Html" }; } this.SourceDirectories = sourceDirectories; this.Filters = filters; if (verbosityLevel != null) { VerbosityLevel parsedVerbosityLevel = VerbosityLevel.Verbose; this.verbosityLevelValid = Enum.TryParse<VerbosityLevel>(verbosityLevel, true, out parsedVerbosityLevel); this.VerbosityLevel = parsedVerbosityLevel; } }
/// <summary> /// Initializes a new instance of the <see cref="ReportConfiguration" /> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> /// <param name="reportFilePatterns">The report file patterns.</param> /// <param name="targetDirectory">The target directory.</param> /// <param name="historyDirectory">The history directory.</param> /// <param name="reportTypes">The report types.</param> /// <param name="sourceDirectories">The source directories.</param> /// <param name="assemblyFilters">The assembly filters.</param> /// <param name="classFilters">The class filters.</param> /// <param name="fileFilters">The file filters.</param> /// <param name="verbosityLevel">The verbosity level.</param> /// <param name="tag">The custom tag (e.g. build number).</param> public ReportConfiguration( IReportBuilderFactory reportBuilderFactory, IEnumerable <string> reportFilePatterns, string targetDirectory, string historyDirectory, IEnumerable <string> reportTypes, IEnumerable <string> sourceDirectories, IEnumerable <string> assemblyFilters, IEnumerable <string> classFilters, IEnumerable <string> fileFilters, string verbosityLevel, string tag) { if (reportBuilderFactory == null) { throw new ArgumentNullException(nameof(reportBuilderFactory)); } if (reportFilePatterns == null) { throw new ArgumentNullException(nameof(reportFilePatterns)); } if (targetDirectory == null) { throw new ArgumentNullException(nameof(targetDirectory)); } if (reportTypes == null) { throw new ArgumentNullException(nameof(reportTypes)); } if (sourceDirectories == null) { throw new ArgumentNullException(nameof(sourceDirectories)); } if (assemblyFilters == null) { throw new ArgumentNullException(nameof(assemblyFilters)); } if (classFilters == null) { throw new ArgumentNullException(nameof(classFilters)); } if (fileFilters == null) { throw new ArgumentNullException(nameof(fileFilters)); } this.ReportBuilderFactory = reportBuilderFactory; foreach (var reportFilePattern in reportFilePatterns) { try { this.reportFiles.AddRange(FileSearch.GetFiles(reportFilePattern)); } catch (Exception) { this.failedReportFilePatterns.Add(reportFilePattern); } } this.TargetDirectory = targetDirectory; this.HistoryDirectory = historyDirectory; if (reportTypes.Any()) { this.ReportTypes = reportTypes; } else { this.ReportTypes = new[] { "Html" }; } this.SourceDirectories = sourceDirectories; this.AssemblyFilters = assemblyFilters; this.ClassFilters = classFilters; this.FileFilters = fileFilters; if (verbosityLevel != null) { VerbosityLevel parsedVerbosityLevel = VerbosityLevel.Verbose; this.verbosityLevelValid = Enum.TryParse <VerbosityLevel>(verbosityLevel, true, out parsedVerbosityLevel); this.VerbosityLevel = parsedVerbosityLevel; } this.Tag = tag; }
/// <summary> /// Initializes a new instance of the <see cref="Help"/> class. /// </summary> /// <param name="reportBuilderFactory">The report builder factory.</param> internal Help(IReportBuilderFactory reportBuilderFactory) { this.reportBuilderFactory = reportBuilderFactory ?? throw new ArgumentNullException(nameof(reportBuilderFactory)); }