/// <summary> /// Constructs the report categorizer with required dependencies /// </summary> /// <param name="reportRepository">The report repository</param> /// <param name="categoryRepository">The category repository</param> /// <param name="roleAssignmentRepository">The role assignment repository</param> /// <param name="unitOfWork">The unit of work</param> public ReportRegistrar ( IRegisteredReportRepository reportRepository, IReportCategoryRepository categoryRepository, IReportRoleAssignmentRepository roleAssignmentRepository, IUnitOfWork unitOfWork ) { Validate.IsNotNull(reportRepository); Validate.IsNotNull(categoryRepository); Validate.IsNotNull(roleAssignmentRepository); Validate.IsNotNull(unitOfWork); _reportRepository = reportRepository; _categoryRepository = categoryRepository; _roleAssignmentRepository = roleAssignmentRepository; _unitOfWork = unitOfWork; }
/// <summary> /// Constructs the report categorizer with required dependencies /// </summary> /// <param name="reportRepository">The report repository</param> /// <param name="categoryRepository">The category repository</param> /// <param name="roleAssignmentRepository">The role assignment repository</param> /// <param name="translatorFactory">The translator factory</param> /// <param name="unitOfWork">The unit of work</param> public ReportRegistrar ( IRegisteredReportRepository reportRepository, IReportCategoryRepository categoryRepository, IReportRoleAssignmentRepository roleAssignmentRepository, IPhraseTranslatorFactory translatorFactory, IUnitOfWork unitOfWork ) { Validate.IsNotNull(reportRepository); Validate.IsNotNull(categoryRepository); Validate.IsNotNull(roleAssignmentRepository); Validate.IsNotNull(translatorFactory); Validate.IsNotNull(unitOfWork); _reportRepository = reportRepository; _categoryRepository = categoryRepository; _roleAssignmentRepository = roleAssignmentRepository; _translator = translatorFactory.GetDictionary(); _unitOfWork = unitOfWork; }
/// <summary> /// Constructs the report generator with required dependencies /// </summary> /// <param name="reportRepository">The report repository</param> /// <param name="assignmentRepository">The assignment repository</param> /// <param name="definitionBuilder">The report definition builder</param> /// <param name="queryRepository">The query repository</param> /// <param name="reportGenerator">The report generator</param> public RegisteredReportGenerator ( IRegisteredReportRepository reportRepository, IReportRoleAssignmentRepository assignmentRepository, IRegisteredReportDefinitionBuilder definitionBuilder, IQueryRepository queryRepository, IReportGenerator reportGenerator ) { Validate.IsNotNull(reportRepository); Validate.IsNotNull(assignmentRepository); Validate.IsNotNull(definitionBuilder); Validate.IsNotNull(queryRepository); Validate.IsNotNull(reportGenerator); _reportRepository = reportRepository; _assignmentRepository = assignmentRepository; _definitionBuilder = definitionBuilder; _queryRepository = queryRepository; _reportGenerator = reportGenerator; _assignmentCache = new Dictionary <string, List <ReportRoleAssignment> >(); }