Esempio n. 1
0
        public IEnumerable <TypeDependency> AnalyzeProject(IEnumerable <string> sourceFilePaths, IEnumerable <string> referencedAssemblyPaths)
        {
            var illegalDependencies = GetIllegalDependencies(_typeDependencyEnumerator.GetTypeDependencies(sourceFilePaths, referencedAssemblyPaths));

            _traceMessageHandler?.Invoke(GetCacheStatisticsMessage());
            return(illegalDependencies);
        }
Esempio n. 2
0
        public override IEnumerable <AnalyzerMessageBase> AnalyzeProject(
            IEnumerable <string> sourceFilePaths,
            IEnumerable <string> referencedAssemblyPaths)
        {
            if (sourceFilePaths == null)
            {
                throw new ArgumentNullException(nameof(sourceFilePaths));
            }
            if (referencedAssemblyPaths == null)
            {
                throw new ArgumentNullException(nameof(referencedAssemblyPaths));
            }

            if (GlobalSettings.IsToolDisabled())
            {
                return new[] { new ToolDisabledMessage() }
            }
            ;

            lock (_configRefreshLock)
            {
                return(AnalyzeCore(
                           () => GetIllegalTypeDependencies(
                               () => _typeDependencyEnumerator.GetTypeDependencies(
                                   sourceFilePaths,
                                   referencedAssemblyPaths,
                                   _sourcePathExclusionGlobs)),
                           isProjectScope: true));
            }
        }
Esempio n. 3
0
        public IEnumerable <TypeDependency> AnalyzeProject(IEnumerable <string> sourceFilePaths, IEnumerable <string> referencedAssemblyPaths)
        {
            _configRefreshLock.EnterReadLock();

            try
            {
                EnsureValidStateForAnalysis();
                return(GetIllegalDependencies(_typeDependencyEnumerator.GetTypeDependencies(sourceFilePaths, referencedAssemblyPaths)));
            }
            finally
            {
                _configRefreshLock.ExitReadLock();
            }
        }
Esempio n. 4
0
        public IEnumerable <TypeDependency> AnalyzeProject(IEnumerable <string> sourceFilePaths, IEnumerable <string> referencedAssemblyPaths)
        {
            var typeDependencies = _typeDependencyEnumerator.GetTypeDependencies(sourceFilePaths, referencedAssemblyPaths);

            return(GetIllegalDependencies(typeDependencies));
        }