/// <summary> /// Creates new instance with <paramref name="delegateFactory"/> for property and constructor delegates. /// </summary> /// <param name="delegateFactory">The factory for delegates for fast access.</param> /// <param name="logFactory">The factory for the log to write debug information.</param> public ReflectionCompositeTypeProvider(ICompositeDelegateFactory delegateFactory, ILogFactory logFactory) { Ensure.NotNull(delegateFactory, "delegateFactory"); Ensure.NotNull(logFactory, "logFactory"); this.delegateFactory = delegateFactory; this.logFactory = logFactory.Scope("ReflectionCompositeTypeProvider").Factory; }
/// <summary> /// Creates new instance with <paramref name="delegateFactory"/> for property and constructor delegates. /// </summary> /// <param name="delegateFactory">The factory for delegates for fast access.</param> /// <param name="bindingFlags">The binding flags for accessing reflection.</param> public ReflectionCompositeTypeProvider(ICompositeDelegateFactory delegateFactory, BindingFlags bindingFlags) : this(delegateFactory, bindingFlags, new DefaultLogFactory()) { }
/// <summary> /// Creates new instance with <paramref name="delegateFactory"/> for property and constructor delegates. /// </summary> /// <param name="delegateFactory">The factory for delegates for fast access.</param> public ReflectionCompositeTypeProvider(ICompositeDelegateFactory delegateFactory) : this(delegateFactory, new DefaultLogFactory()) { }