diff --git a/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xml b/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xml index 437d50f..2efe121 100644 --- a/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xml +++ b/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xml @@ -24,7 +24,7 @@ - + @@ -39,7 +39,7 @@ - + diff --git a/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xsd b/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xsd index dda5729..624a126 100644 --- a/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xsd +++ b/C4IT_DataHistoryProvider_Test/Config/F4SD-Global-Configuration.xsd @@ -132,14 +132,14 @@ - + - + @@ -197,7 +197,7 @@ - + @@ -213,8 +213,8 @@ - - + + diff --git a/F4SD-Cockpit-ServerCore/DataHistoryCollector.cs b/F4SD-Cockpit-ServerCore/DataHistoryCollector.cs index e044a39..755452e 100644 --- a/F4SD-Cockpit-ServerCore/DataHistoryCollector.cs +++ b/F4SD-Cockpit-ServerCore/DataHistoryCollector.cs @@ -413,8 +413,8 @@ namespace C4IT.DataHistoryProvider GlobalConfig = new cF4sdGlobalConfig(regPath: null); if (GlobalParametersConfigFile.Parameters != null) GlobalConfig.Load(CentralParameters: GlobalParametersConfigFile.Parameters); - GlobalConfig.TicketConfiguration.ActivityFilters = - GlobalParametersConfigFile.ActivityFilters ?? new cActivityFilterPolicy(); + GlobalConfig.TicketConfiguration.TicketFilters = + GlobalParametersConfigFile.TicketFilters ?? new cTicketFilterPolicy(); } return true; @@ -508,7 +508,7 @@ namespace C4IT.DataHistoryProvider // load the global parameters if (!RefreshGlobalConfigurationParameters()) return false; - InfrastructureConfig.RemoveLegacyActivityFilterConfiguration(); + InfrastructureConfig.RemoveLegacyTicketFilterConfiguration(); mainDbConnection = InfrastructureConfig.HistoryDB.Connection; diff --git a/F4SD-Cockpit-ServerCore/DataHistoryCollectorM42Wpm.cs b/F4SD-Cockpit-ServerCore/DataHistoryCollectorM42Wpm.cs index b9462b5..9c7244a 100644 --- a/F4SD-Cockpit-ServerCore/DataHistoryCollectorM42Wpm.cs +++ b/F4SD-Cockpit-ServerCore/DataHistoryCollectorM42Wpm.cs @@ -694,18 +694,18 @@ namespace C4IT.DataHistoryProvider var objSid = new SecurityIdentifier(UserId.sid, 0); var strSid = objSid.ToString(); var _wc = await GetWebClient(requestInfo, Token); - var request = new cTicketActivityListRequest + var request = new cTicketListFilterRequest { Sid = strSid, Hours = Collector.InfrastructureConfig.M42Wpm.ClosedTicketHistory, - Filters = GetActivityFilters() + Filters = GetTicketFilters() }; var res = await PostJsonAsync(_wc, constUrlGetTicketsV2, request, Token); if (res?.StatusCode == HttpStatusCode.NotFound) { if (!TryGetLegacyQueueFilter(out var queueOption, out var encodedQueues)) { - LogEntry("The activity filter policy requires the v2 ticket API; legacy fallback was rejected (fail closed).", LogLevels.Warning); + LogEntry("The ticket filter policy requires the v2 ticket API; legacy fallback was rejected (fail closed).", LogLevels.Warning); return null; } var strUrl = string.Format( @@ -1111,17 +1111,17 @@ namespace C4IT.DataHistoryProvider return (int)Collector.InfrastructureConfig.M42Wpm.ActivityQueueFilterOption; } - private cActivityFilterPolicy GetActivityFilters() + private cTicketFilterPolicy GetTicketFilters() { - return Collector?.GetGlobalConfig()?.TicketConfiguration?.ActivityFilters - ?? new cActivityFilterPolicy(); + return Collector?.GetGlobalConfig()?.TicketConfiguration?.TicketFilters + ?? new cTicketFilterPolicy(); } private bool TryGetLegacyQueueFilter(out int queueOption, out string encodedQueues) { queueOption = 0; encodedQueues = null; - var activeFilters = (GetActivityFilters()?.Filters ?? new List()) + var activeFilters = (GetTicketFilters()?.Filters ?? new List()) .Where(entry => entry?.Enabled == true) .ToList(); if (activeFilters.Count == 0) @@ -1129,17 +1129,17 @@ namespace C4IT.DataHistoryProvider if (activeFilters.Count != 1) return false; - var activityFilter = activeFilters[0]; - if (!string.Equals(activityFilter.Provider, "Matrix42", StringComparison.OrdinalIgnoreCase) - || !string.Equals(activityFilter.Field, "Queue", StringComparison.OrdinalIgnoreCase) - || activityFilter.Match != enumActivityFilterMatch.include - || activityFilter.EmptyHandling == enumActivityFilterEmptyHandling.only) + var ticketFilter = activeFilters[0]; + if (!string.Equals(ticketFilter.Provider, "Matrix42", StringComparison.OrdinalIgnoreCase) + || !string.Equals(ticketFilter.Field, "Queue", StringComparison.OrdinalIgnoreCase) + || ticketFilter.Match != enumTicketFilterMatch.include + || ticketFilter.EmptyHandling == enumTicketFilterEmptyHandling.only) { return false; } - queueOption = activityFilter.EmptyHandling == enumActivityFilterEmptyHandling.include ? 1 : 2; - var values = (activityFilter.Values ?? new List()) + queueOption = ticketFilter.EmptyHandling == enumTicketFilterEmptyHandling.include ? 1 : 2; + var values = (ticketFilter.Values ?? new List()) .Where(value => value != null) .Select(value => { @@ -1227,14 +1227,14 @@ namespace C4IT.DataHistoryProvider Sid = sid, Scope = scope, Keys = requestedKeys?.ToList() ?? new List(), - Filters = GetActivityFilters() + Filters = GetTicketFilters() }; var res = await PostJsonAsync(wc, constUrlGetTicketOverviewCountsV2, request, token); if (res?.StatusCode == HttpStatusCode.NotFound) { if (!TryGetLegacyQueueFilter(out var queueOption, out var encodedQueues)) { - LogEntry("The activity filter policy requires the v2 overview API; legacy fallback was rejected (fail closed).", LogLevels.Warning); + LogEntry("The ticket filter policy requires the v2 overview API; legacy fallback was rejected (fail closed).", LogLevels.Warning); return new Dictionary(StringComparer.OrdinalIgnoreCase); } var urlBuilder = new StringBuilder(constUrlGetTicketOverviewCounts); @@ -1358,14 +1358,14 @@ namespace C4IT.DataHistoryProvider Scope = scope, Key = key, Count = Math.Max(0, count), - Filters = GetActivityFilters() + Filters = GetTicketFilters() }; var res = await PostJsonAsync(wc, constUrlGetTicketOverviewRelationsV2, request, Token); if (res?.StatusCode == HttpStatusCode.NotFound) { if (!TryGetLegacyQueueFilter(out var queueOption, out var encodedQueues)) { - LogEntry("The activity filter policy requires the v2 relation API; legacy fallback was rejected (fail closed).", LogLevels.Warning); + LogEntry("The ticket filter policy requires the v2 relation API; legacy fallback was rejected (fail closed).", LogLevels.Warning); return new List(); } var urlBuilder = new StringBuilder(constUrlGetTicketOverviewRelations); diff --git a/F4SD-Cockpit-ServerCore/DataHistoryConfigGolabalParameters.cs b/F4SD-Cockpit-ServerCore/DataHistoryConfigGolabalParameters.cs index d4252ef..c9b6020 100644 --- a/F4SD-Cockpit-ServerCore/DataHistoryConfigGolabalParameters.cs +++ b/F4SD-Cockpit-ServerCore/DataHistoryConfigGolabalParameters.cs @@ -25,7 +25,7 @@ namespace C4IT.DataHistoryProvider private const string constConfigRootElement = "F4SD-Global-Configuration"; public cConfigHelperParameterList Parameters { get; private set; } = null; - public cActivityFilterPolicy ActivityFilters { get; private set; } = new cActivityFilterPolicy(); + public cTicketFilterPolicy TicketFilters { get; private set; } = new cTicketFilterPolicy(); private cDataHistoryConfigInfrastructure InfrastructureConfig = null; @@ -111,8 +111,8 @@ namespace C4IT.DataHistoryProvider if (_ticketProcessingEntry != null) _result.Items[_ticketProcessingEntry.Name] = _ticketProcessingEntry; continue; - case "ActivityFilters": - ActivityFilters = getActivityFilters(_item, Parser); + case "TicketFilters": + TicketFilters = getTicketFilters(_item, Parser); continue; } @@ -166,20 +166,20 @@ namespace C4IT.DataHistoryProvider return _result; } - private static cActivityFilterPolicy getActivityFilters(XmlElement node, cXmlParser parser) + private static cTicketFilterPolicy getTicketFilters(XmlElement node, cXmlParser parser) { - var result = new cActivityFilterPolicy(); + var result = new cTicketFilterPolicy(); foreach (XmlElement filterNode in node.SelectNodes("Filter").OfType()) { parser.EnterElement(filterNode.Name); try { - if (!Enum.TryParse(filterNode.GetAttribute("Match"), true, out enumActivityFilterMatch match)) - match = enumActivityFilterMatch.exclude; - if (!Enum.TryParse(filterNode.GetAttribute("EmptyHandling"), true, out enumActivityFilterEmptyHandling emptyHandling)) - emptyHandling = enumActivityFilterEmptyHandling.include; + if (!Enum.TryParse(filterNode.GetAttribute("Match"), true, out enumTicketFilterMatch match)) + match = enumTicketFilterMatch.exclude; + if (!Enum.TryParse(filterNode.GetAttribute("EmptyHandling"), true, out enumTicketFilterEmptyHandling emptyHandling)) + emptyHandling = enumTicketFilterEmptyHandling.include; - var filter = new cActivityFilter + var filter = new cTicketFilter { Provider = filterNode.GetAttribute("Provider"), Field = filterNode.GetAttribute("Field"), @@ -190,7 +190,7 @@ namespace C4IT.DataHistoryProvider foreach (XmlElement valueNode in filterNode.SelectNodes("Value").OfType()) { - filter.Values.Add(new cActivityFilterValue + filter.Values.Add(new cTicketFilterValue { ID = valueNode.GetAttribute("ID"), Name = valueNode.GetAttribute("Name") @@ -208,7 +208,7 @@ namespace C4IT.DataHistoryProvider return result; } - private string getDefaultActivityFiltersXml() + private string getDefaultTicketFiltersXml() { var queueOption = InfrastructureConfig?.M42Wpm?.ActivityQueueFilterOption ?? enumActivityQueueFilterOptions.showAll; @@ -216,11 +216,11 @@ namespace C4IT.DataHistoryProvider ?? new List(); var enableQueueFilter = queueOption != enumActivityQueueFilterOptions.showAll && queues.Count > 0; var emptyHandling = queueOption == enumActivityQueueFilterOptions.onlyListedQueues - ? enumActivityFilterEmptyHandling.exclude - : enumActivityFilterEmptyHandling.include; + ? enumTicketFilterEmptyHandling.exclude + : enumTicketFilterEmptyHandling.include; var xml = new StringBuilder(); - xml.Append(""); + xml.Append(""); xml.AppendFormat( "", enableQueueFilter.ToString().ToLowerInvariant(), @@ -243,7 +243,7 @@ namespace C4IT.DataHistoryProvider xml.Append(""); xml.Append(""); xml.Append(""); - xml.Append(""); + xml.Append(""); return xml.ToString(); } @@ -582,12 +582,16 @@ namespace C4IT.DataHistoryProvider ); RetVal |= DoXmlInsertElement(XmlRoot , "TicketConfiguration" - , "ActivityFilters" - , getDefaultActivityFiltersXml() + , "TicketFilters" + , getDefaultTicketFiltersXml() ); - RetVal |= DoXmlRemoveElement(XmlRoot - , "TicketConfiguration" - , "OpenActivitiesExternally" + RetVal |= DoXmlRemoveElement(XmlRoot + , "TicketConfiguration" + , "ActivityFilters" + ); + RetVal |= DoXmlRemoveElement(XmlRoot + , "TicketConfiguration" + , "OpenActivitiesExternally" ); RetVal |= DoXmlInsertElement(XmlRoot , "TicketConfiguration" diff --git a/F4SD-Cockpit-ServerCore/DataHistoryConfigInfrastructure.cs b/F4SD-Cockpit-ServerCore/DataHistoryConfigInfrastructure.cs index 434be48..700d5f6 100644 --- a/F4SD-Cockpit-ServerCore/DataHistoryConfigInfrastructure.cs +++ b/F4SD-Cockpit-ServerCore/DataHistoryConfigInfrastructure.cs @@ -121,9 +121,9 @@ namespace C4IT.DataHistoryProvider return false; } - internal bool RemoveLegacyActivityFilterConfiguration() + internal bool RemoveLegacyTicketFilterConfiguration() { - // Queue filtering moved to the provider-neutral global ActivityFilters policy. + // Queue filtering moved to the provider-neutral global TicketFilters policy. // This intentionally runs only after the global configuration was loaded: // DoXmlUpdates runs before InstantiateProperties and would otherwise erase // the values before the one-time migration can read them. diff --git a/F4SDwebService/Config/F4SD-Global-Configuration.xml b/F4SDwebService/Config/F4SD-Global-Configuration.xml index 437d50f..2efe121 100644 --- a/F4SDwebService/Config/F4SD-Global-Configuration.xml +++ b/F4SDwebService/Config/F4SD-Global-Configuration.xml @@ -24,7 +24,7 @@ - + @@ -39,7 +39,7 @@ - + diff --git a/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xml b/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xml index 437d50f..2efe121 100644 --- a/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xml +++ b/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xml @@ -24,7 +24,7 @@ - + @@ -39,7 +39,7 @@ - + diff --git a/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xsd b/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xsd index dda5729..624a126 100644 --- a/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xsd +++ b/F4SDwebService/Publish/Config/F4SD-Global-Configuration.xsd @@ -132,14 +132,14 @@ - + - + @@ -197,7 +197,7 @@ - + @@ -213,8 +213,8 @@ - - + +