Exemplo n.º 1
0
        public IDependencyInfo FindDependencies(IEnumerable <IAssemblyFile> files, IProgressReporter progressReporter)
        {
            using (var task = progressReporter.StartTask(LocalizedStrings.DetectingAssemblyReferences))
            {
                try
                {
                    return(ReflectionMetadataDependencyInfo.ComputeDependencies(files, _assemblyFilter, progressReporter, _objectFinder));
                }
                catch (Exception)
                {
                    task.Abort();

                    throw;
                }
            }
        }
        public IDependencyInfo FindDependencies(IEnumerable<IAssemblyFile> files, IProgressReporter _progressReporter)
        {
            var inputAssemblyPaths = files.Where(f => FilterValidFiles(f, _progressReporter)).ToList();

            using (var task = _progressReporter.StartTask(LocalizedStrings.DetectingAssemblyReferences))
            {
                try
                {
                    return ReflectionMetadataDependencyInfo.ComputeDependencies(files, _assemblyFilter, _progressReporter);
                }
                catch (Exception)
                {
                    task.Abort();

                    throw;
                }
            }
        }
        public IDependencyInfo FindDependencies(IEnumerable <FileInfo> inputAssemblies, IProgressReporter _progressReporter)
        {
            var inputAssemblyPaths = inputAssemblies.Where(f => FilterValidFiles(f, _progressReporter)).Select(i => i.FullName).ToList();

            using (var task = _progressReporter.StartTask(LocalizedStrings.DetectingAssemblyReferences, inputAssemblyPaths.Count))
            {
                try
                {
                    return(ReflectionMetadataDependencyInfo.ComputeDependencies(inputAssemblyPaths, _progressReporter));
                }
                catch (Exception e)
                {
                    task.Abort();

                    throw e;
                }
            }
        }