fix: avoid service desk configuration reload
This commit is contained in:
@@ -13,7 +13,7 @@
|
||||
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
|
||||
<M42ExtensionId>6673a25d-33d6-4072-91d9-abed4be1a966</M42ExtensionId>
|
||||
<M42AssemblyPattern>C4ITF4SD*.*</M42AssemblyPattern>
|
||||
<M42PackageVersion>1.4.0.12</M42PackageVersion>
|
||||
<M42PackageVersion>1.4.0.13</M42PackageVersion>
|
||||
<M42BuildPackage>true</M42BuildPackage>
|
||||
</PropertyGroup>
|
||||
|
||||
|
||||
@@ -52,6 +52,7 @@ namespace C4IT.F4SD
|
||||
|
||||
private const string placeHolderSubject = "PARAM_SUBJECT";
|
||||
private const string placeHolderDescription = "PARAM_DESCRIPTION";
|
||||
private static bool? ticketAndServiceRequestEnabledCache;
|
||||
private const string c4itf4sdmonLinkBase = "f4sdsend://localhost";
|
||||
|
||||
private const string F4SDTicketTableName = "M42WPM-TICKETS-INFOS";
|
||||
@@ -1685,18 +1686,23 @@ namespace C4IT.F4SD
|
||||
|
||||
private static bool ticketAndServiceRequestEnabled()
|
||||
{
|
||||
var configProvider = F4SDM42WebApiController.defaultInstance._globalConfigurationProvider;
|
||||
if (ticketAndServiceRequestEnabledCache.HasValue)
|
||||
return ticketAndServiceRequestEnabledCache.Value;
|
||||
|
||||
// using reflection because signature of "ReloadSettings" changed in ESM v12
|
||||
var method = configProvider.GetType().GetMethod("ReloadSettings");
|
||||
|
||||
if (method != null)
|
||||
try
|
||||
{
|
||||
var defaultParameters = method.GetParameters().Select(p => p.HasDefaultValue ? p.DefaultValue : null).ToArray();
|
||||
method.Invoke(configProvider, defaultParameters);
|
||||
var configProvider = F4SDM42WebApiController.defaultInstance?._globalConfigurationProvider;
|
||||
var enabled = configProvider?.ServiceDeskConfiguration?.TicketAndServiceRequestEnabled ?? true;
|
||||
ticketAndServiceRequestEnabledCache = enabled;
|
||||
return enabled;
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
LogException(E);
|
||||
LogEntry("Could not read ServiceDeskConfiguration.TicketAndServiceRequestEnabled. Falling back to enabled ticket/service request mode.", LogLevels.Warning);
|
||||
ticketAndServiceRequestEnabledCache = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
return configProvider.ServiceDeskConfiguration.TicketAndServiceRequestEnabled;
|
||||
}
|
||||
|
||||
internal async Task<List<cF4SDTicket>> getTicketDetails(List<Guid> ticketObjectIds)
|
||||
|
||||
Reference in New Issue
Block a user