BudgetAnalyser.Engine.Services.TransactionRuleService.TransactionRuleService C# (CSharp) Method

TransactionRuleService() public method

public TransactionRuleService ( [ ruleRepository, [ logger, [ matchmaker, [ ruleFactory, [ environmentFolders, [ monitorableDependencies ) : System
ruleRepository [
logger [
matchmaker [
ruleFactory [
environmentFolders [
monitorableDependencies [
return System
        public TransactionRuleService(
            [NotNull] IMatchingRuleRepository ruleRepository,
            [NotNull] ILogger logger,
            [NotNull] IMatchmaker matchmaker,
            [NotNull] IMatchingRuleFactory ruleFactory,
            [NotNull] IEnvironmentFolders environmentFolders,
            [NotNull] MonitorableDependencies monitorableDependencies)
        {
            if (ruleRepository == null)
            {
                throw new ArgumentNullException(nameof(ruleRepository));
            }

            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }

            if (matchmaker == null)
            {
                throw new ArgumentNullException(nameof(matchmaker));
            }

            if (ruleFactory == null)
            {
                throw new ArgumentNullException(nameof(ruleFactory));
            }

            if (environmentFolders == null) throw new ArgumentNullException(nameof(environmentFolders));
            if (monitorableDependencies == null) throw new ArgumentNullException(nameof(monitorableDependencies));

            this.ruleRepository = ruleRepository;
            this.logger = logger;
            this.matchmaker = matchmaker;
            this.ruleFactory = ruleFactory;
            this.environmentFolders = environmentFolders;
            this.monitorableDependencies = monitorableDependencies;
            this.matchingRules = new List<MatchingRule>();
            this.matchingRulesGroupedByBucket = new List<RulesGroupedByBucket>();
        }