Пример #1
0
        /// <summary>
        /// Analyzes the fragmentation per file.
        /// </summary>
        public HierarchicalDataContext AnalyzeFragmentation()
        {
            LoadHistory();
            LoadMetrics();
            LoadContributions(false);

            var summary            = _history.GetArtifactSummary(Project.Filter, new HashSet <string>(_metrics.Keys));
            var fileToFractalValue = _contributions.ToDictionary(pair => pair.Key, pair => pair.Value.CalculateFractalValue());

            var builder          = new FragmentationBuilder();
            var hierarchicalData = builder.Build(summary, _metrics, fileToFractalValue);

            return(new HierarchicalDataContext(hierarchicalData));
        }
Пример #2
0
        /// <summary>
        /// Analyzes the fragmentation per file.
        /// </summary>
        public HierarchicalDataContext AnalyzeFragmentation(IAliasMapping aliasMapping)
        {
            LoadContributions(false);
            var localFileToContribution = AliasTransformContribution(_contributions, aliasMapping);

            var summary            = _history.GetArtifactSummary(_extendedDisplayFilter, aliasMapping);
            var fileToFractalValue = localFileToContribution.ToDictionary(pair => pair.Key, pair => pair.Value.CalculateFractalValue());

            var builder          = new FragmentationBuilder();
            var hierarchicalData = builder.Build(summary, _metrics, fileToFractalValue);

            var dataContext = new HierarchicalDataContext(hierarchicalData);

            dataContext.AreaSemantic   = Strings.LinesOfCode;
            dataContext.WeightSemantic = Strings.Fragmentation;
            return(dataContext);
        }