Example #1
0
        private static void SetAnalysisTaskSettingsInfo(XElement settingsBundleRoot, AnalysisTaskSettingsInfo analysisSettings)
        {
            foreach (var settingsBundle in settingsBundleRoot.Elements())
            {
                if (string.Compare(settingsBundle.Name.LocalName, "SettingsBundle", StringComparison.InvariantCultureIgnoreCase) == 0)
                {
                    foreach (var settingsGroup in settingsBundle.Elements())
                    {
                        if (string.Compare(settingsGroup.Name.LocalName, "SettingsGroup", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            if (!settingsGroup.HasAttributes)
                            {
                                continue;
                            }

                            var settingsBundleId = GetSettingsBundleAttributeValue(settingsGroup, "Id");
                            if (settingsBundleId != "AnalysisTaskSettings")
                            {
                                continue;
                            }

                            SetAnalysisTaskSettingsAttributes(settingsGroup, analysisSettings);
                        }
                    }
                }
            }
        }
Example #2
0
        private static void SetAnalysisTaskSettingsAttributes(XElement settingsGroup, AnalysisTaskSettingsInfo analysisSettings)
        {
            foreach (var setting in settingsGroup.Elements())
            {
                if (string.Compare(setting.Name.LocalName, "Setting", StringComparison.InvariantCultureIgnoreCase) == 0)
                {
                    if (!setting.HasAttributes)
                    {
                        continue;
                    }

                    foreach (var attribute in setting.Attributes())
                    {
                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ReportCrossFileRepetitions", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ReportCrossFileRepetitions = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ReportInternalFuzzyMatchLeverage", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ReportInternalFuzzyMatchLeverage = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ReportLockedSegmentsSeparately", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ReportLockedSegmentsSeparately = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ExcludeLockedSegments", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ExcludeLockedSegments = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ExportFrequentSegments", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ExportFrequentSegments = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "ExportUnknownSegments", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            bool.TryParse(setting.Value, out var value);
                            analysisSettings.ExportUnknownSegments = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "UnknownSegmentsMaximumMatchValue", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            int.TryParse(setting.Value, out var value);
                            analysisSettings.UnknownSegmentsMaximumMatchValue = value;
                        }

                        if (string.Compare(attribute.Name.LocalName, "Id", StringComparison.InvariantCultureIgnoreCase) == 0 &&
                            string.Compare(attribute.Value, "FrequentSegmentsNoOfOccurrences", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            int.TryParse(setting.Value, out var value);
                            analysisSettings.FrequentSegmentsNoOfOccurrences = value;
                        }
                    }
                }
            }
        }
Example #3
0
        private static void AssignGeneralAnalysisTaskSettings(XElement project, string generalSettingsBundleGuid, AnalysisTaskSettingsInfo analysisSettings)
        {
            foreach (var element in project.Elements())
            {
                if (string.Compare(element.Name.LocalName, "SettingsBundles", StringComparison.InvariantCultureIgnoreCase) == 0)
                {
                    foreach (var settingsBundle in element.Elements())
                    {
                        if (string.Compare(settingsBundle.Name.LocalName, "SettingsBundle", StringComparison.InvariantCultureIgnoreCase) == 0)
                        {
                            var bundleGuid = GetSettingsBundleAttributeValue(settingsBundle, "Guid");

                            if (string.Compare(bundleGuid, generalSettingsBundleGuid, StringComparison.InvariantCultureIgnoreCase) == 0)
                            {
                                SetAnalysisTaskSettingsInfo(settingsBundle, analysisSettings);
                            }
                        }
                    }
                }
            }
        }