예제 #1
0
        public IEnumerable <IRuleDefinition> Load()
        {
            var ruleDefinitions = _typeScanner
                                  .GetTypes()
                                  .Select(t => _activator.Activate(t))
                                  .Select(r => r.GetDefinition());

            return(ruleDefinitions);
        }
예제 #2
0
 private IEnumerable <Rule> Activate(Type type)
 {
     try
     {
         var ruleInstances = _activator.Activate(type);
         return(ruleInstances.ToList());
     }
     catch (Exception e)
     {
         throw new RuleActivationException("Failed to activate rule type", type, e);
     }
 }