Exemple #1
0
        public DependencyFinderEngineHelper(IDependencyFilter assemblyFilter, MetadataReader metadataReader, IAssemblyFile file, SystemObjectFinder objectFinder)
        {
            _assemblyFilter = assemblyFilter;
            _reader         = metadataReader;
            _objectFinder   = objectFinder;

            MemberDependency = new List <MemberDependency>();
            CallingAssembly  = new AssemblyInfo
            {
                Location               = file.Name,
                AssemblyIdentity       = metadataReader.FormatAssemblyInfo().ToString(),
                FileVersion            = file.Version ?? string.Empty,
                TargetFrameworkMoniker = metadataReader.GetTargetFrameworkMoniker() ?? string.Empty
            };

            // Get assembly info
            var assemblyDefinition = _reader.GetAssemblyDefinition();

            _currentAssemblyInfo = _reader.FormatAssemblyInfo(assemblyDefinition);
            _currentAssemblyName = _reader.GetString(assemblyDefinition.Name);
        }
Exemple #2
0
        public static ReflectionMetadataDependencyInfo ComputeDependencies(IEnumerable <IAssemblyFile> inputAssemblies, IDependencyFilter assemblyFilter, IProgressReporter progressReport, SystemObjectFinder objectFinder)
        {
            var engine = new ReflectionMetadataDependencyInfo(inputAssemblies, assemblyFilter, objectFinder);

            engine.FindDependencies(progressReport);

            return(engine);
        }
Exemple #3
0
 private ReflectionMetadataDependencyInfo(IEnumerable <IAssemblyFile> inputAssemblies, IDependencyFilter assemblyFilter, SystemObjectFinder objectFinder)
 {
     _inputAssemblies = inputAssemblies;
     _assemblyFilter  = assemblyFilter;
     _objectFinder    = objectFinder;
 }
Exemple #4
0
 public ReflectionMetadataDependencyFinder(IDependencyFilter assemblyFilter, SystemObjectFinder objectFinder)
 {
     _assemblyFilter = assemblyFilter ?? throw new ArgumentNullException(nameof(assemblyFilter));
     _objectFinder   = objectFinder;
 }