示例#1
0
 /// <summary>
 ///     Initializes new instance of the <see cref="ModuleManager"/> class.
 /// </summary>
 /// <param name="moduleLoader">A module loader service, that will load individual modules. May not be <c>null</c>.</param>
 /// <param name="moduleFilter">A filter to selected modules that will actually be loaded</param>
 /// <param name="dependencyChecker">A dependency checker facility which is reposonsible for sorting the modules before loading.</param>
 /// <exception cref="ArgumentNullException">When <paramref name="moduleLoader"/> is <c>null</c></exception>
 public ModuleManager(IModuleLoader moduleLoader, IModuleFilter moduleFilter,IDependencyChecker dependencyChecker)
 {
     if (moduleLoader == null) throw new ArgumentNullException("moduleLoader");
     _moduleLoader = moduleLoader;
     _moduleFilter = moduleFilter;
     _dependencyChecker = dependencyChecker;
 }
示例#2
0
 /// <summary>
 ///     Initializes new instance of the <see cref="ModuleManager"/> class.
 /// </summary>
 /// <param name="moduleLoader">A module loader service, that will load individual modules. May not be <c>null</c>.</param>
 /// <param name="moduleFilter">A filter to selected modules that will actually be loaded</param>
 /// <param name="dependencyChecker">A dependency checker facility which is reposonsible for sorting the modules before loading.</param>
 /// <exception cref="ArgumentNullException">When <paramref name="moduleLoader"/> is <c>null</c></exception>
 public ModuleManager(IModuleLoader moduleLoader, IModuleFilter moduleFilter, IDependencyChecker dependencyChecker)
 {
     if (moduleLoader == null)
     {
         throw new ArgumentNullException("moduleLoader");
     }
     _moduleLoader      = moduleLoader;
     _moduleFilter      = moduleFilter;
     _dependencyChecker = dependencyChecker;
 }
示例#3
0
 internal AssemblyRewriter(
         Configuration configuration,
         IEnumerable<SetupTarget> targets,
         IMethodRewriter methodRewriter,
         IModuleFilter moduleFilter)
     : this(configuration,
         new SetupTargetCollection(targets),
         methodRewriter,
         moduleFilter)
 {
 }
示例#4
0
 internal AssemblyRewriter(
     Configuration configuration,
     IEnumerable <IRewriteTarget> targets,
     IMethodRewriter methodRewriter,
     IModuleFilter moduleFilter)
     : this(
         configuration,
         new RewriteTargetCollection(targets),
         methodRewriter,
         moduleFilter)
 {
 }
示例#5
0
        internal AssemblyRewriter(
            Configuration configuration,
            IRewriteTargetCollection rewriteTargetCollection,
            IMethodRewriter methodRewriter,
            IModuleFilter moduleFilter)
        {
            ArgumentChecker.NotNull(configuration, () => configuration);
            ArgumentChecker.NotNull(rewriteTargetCollection, () => rewriteTargetCollection);
            ArgumentChecker.NotNull(methodRewriter, () => methodRewriter);
            ArgumentChecker.NotNull(moduleFilter, () => moduleFilter);

            _configuration           = configuration;
            _rewriteTargetCollection = rewriteTargetCollection;
            _methodRewriter          = methodRewriter;
            _moduleFilter            = moduleFilter;
        }
示例#6
0
 internal AssemblyRewriter(
     Configuration configuration,
     IAssemblyResolver assemblyResolver,
     IEnumerable <IRewriteTarget> targets,
     IMethodRewriter methodRewriter,
     IModuleFilter moduleFilter,
     IEnumerable <IAssemblyPostProcessor> postProcessors)
     : this(
         configuration,
         assemblyResolver,
         new RewriteTargetCollection(targets),
         methodRewriter,
         moduleFilter,
         postProcessors)
 {
 }
示例#7
0
        internal AssemblyRewriter(
            Configuration configuration,
            ISetupTargetCollection setupTargetCollection,
            IMethodRewriter methodRewriter,
            IModuleFilter moduleFilter)
        {
            ArgumentChecker.NotNull(configuration, () => configuration);
            ArgumentChecker.NotNull(setupTargetCollection, () => setupTargetCollection);
            ArgumentChecker.NotNull(methodRewriter, () => methodRewriter);
            ArgumentChecker.NotNull(moduleFilter, () => moduleFilter);

            _configuration = configuration;
            _setupTargetCollection = setupTargetCollection;
            _methodRewriter = methodRewriter;
            _moduleFilter = moduleFilter;
        }
示例#8
0
        internal AssemblyRewriter(
            Configuration configuration,
            IAssemblyResolver assemblyResolver,
            IRewriteTargetCollection rewriteTargetCollection,
            IMethodRewriter methodRewriter,
            IModuleFilter moduleFilter,
            IEnumerable <IAssemblyPostProcessor> postProcessors)
        {
            ArgumentChecker.NotNull(configuration, nameof(configuration));
            ArgumentChecker.NotNull(assemblyResolver, nameof(assemblyResolver));
            ArgumentChecker.NotNull(rewriteTargetCollection, nameof(rewriteTargetCollection));
            ArgumentChecker.NotNull(methodRewriter, nameof(methodRewriter));
            ArgumentChecker.NotNull(moduleFilter, nameof(moduleFilter));
            ArgumentChecker.NotNull(moduleFilter, nameof(postProcessors));

            _configuration           = configuration;
            _assemblyResolver        = assemblyResolver;
            _rewriteTargetCollection = rewriteTargetCollection;
            _methodRewriter          = methodRewriter;
            _moduleFilter            = moduleFilter;
            _postProcessors          = postProcessors;
        }
示例#9
0
        /// <summary>
        /// Adds a module filter to the list of module filters to use when filtering modules
        /// </summary>
        /// <param name="moduleFilter">The module filter to add</param>
        public void AddModuleFilter(IModuleFilter moduleFilter)
        {
            Contract.Requires(moduleFilter != null);

            m_moduleFilters.Add(moduleFilter);
        }
示例#10
0
 internal AssemblyRewriter(IMethodRewriter methodRewriter, IModuleFilter moduleFilter)
     : this(new Configuration(), new List <SetupTarget>(), methodRewriter, moduleFilter)
 {
 }
示例#11
0
 internal AssemblyRewriter(IMethodRewriter methodRewriter, IModuleFilter moduleFilter, IEnumerable <IAssemblyPostProcessor> postProcessors)
     : this(new Configuration(), new CecilAssemblyResolver(), new List <SetupTarget>(), methodRewriter, moduleFilter, postProcessors)
 {
 }
示例#12
0
 internal AssemblyRewriter(IMethodRewriter methodRewriter, IModuleFilter moduleFilter)
     : this(methodRewriter, moduleFilter, Enumerable.Empty <IAssemblyPostProcessor>())
 {
 }
示例#13
0
 internal AssemblyRewriter(IMethodRewriter methodRewriter, IModuleFilter moduleFilter)
     : this(new Configuration(), new List<SetupTarget>(), methodRewriter, moduleFilter)
 {
 }