static ClasspathHandlerEnhancerDefinition() { var factoryInterface = typeof(IHandlerEnhancerDefinition); var factoriesInDomain = AppDomain.CurrentDomain.GetAssemblies() .SelectMany(assembly => assembly.ExportedTypes .Where(x => factoryInterface.IsAssignableFrom(x)) .Select(Activator.CreateInstance) .Cast <IHandlerEnhancerDefinition>() ) .ToArray(); Factory = new MultiHandlerEnhancerDefinition(factoriesInDomain); }
public MultiHandlerDefinition(List <IHandlerDefinition> delegates, IHandlerEnhancerDefinition handlerEnhancerDefinition) { _handlerDefinitions = Flatten(delegates); _handlerEnhancerDefinition = handlerEnhancerDefinition; }
public MultiHandlerDefinition(List <IHandlerDefinition> delegates, IHandlerEnhancerDefinition handlerEnhancerDefinition) { this.handlerDefinitions = flatten(delegates); this.handlerEnhancerDefinition = handlerEnhancerDefinition; }
public static MultiHandlerDefinition Ordered(List <IHandlerDefinition> delegates, IHandlerEnhancerDefinition handlerEnhancerDefinition) { return(new MultiHandlerDefinition(delegates, handlerEnhancerDefinition)); }
public static MultiHandlerDefinition Ordered(IHandlerEnhancerDefinition handlerEnhancerDefinition, params IHandlerDefinition[] delegates) { return(ordered(Arrays.asList(delegates), handlerEnhancerDefinition)); }