This commit is contained in:
meelstorm
2025-10-13 14:59:28 +02:00
parent 44748f2855
commit 97ac18eac6
22 changed files with 645 additions and 21 deletions

View File

@@ -34,13 +34,15 @@ public static class Extensions
return priorityAttribute?.Priority ?? 0;
}
private static List<Type> _initializedModules = new List<Type>();
static Dictionary<IKernel,List<Type>> _initializedModules = new Dictionary<IKernel, List<Type>>();
public static void InitializeModules(this IKernel self)
{
if (!_initializedModules.ContainsKey(self)) _initializedModules[self] = new List<Type>();
var serviceTypes = self.GetAll(typeof(IVisionBuilderModule)).Select(x => (IVisionBuilderModule)x)
.Where(x => !_initializedModules.Contains(x.GetType()))
.Where(x => !_initializedModules[self].Contains(x.GetType()))
.OrderByDescending(GetModulePriority)
.ToList();
foreach (var service in serviceTypes)
@@ -58,7 +60,7 @@ public static class Extensions
Log.Error($"Error initializing module {service.GetType().Name}: {e}", e);
}
_initializedModules.Add(service.GetType());
_initializedModules[self].Add(service.GetType());
}
}