Cleanup ApiManager.Register
This commit is contained in:
parent
cfd6d7d83b
commit
4e381d944b
|
@ -17,28 +17,10 @@ namespace BizHawk.Client.EmuHawk
|
||||||
private static ApiContainer container;
|
private static ApiContainer container;
|
||||||
private static void Register(IEmulatorServiceProvider serviceProvider)
|
private static void Register(IEmulatorServiceProvider serviceProvider)
|
||||||
{
|
{
|
||||||
// Register external apis
|
foreach (var api in Assembly.Load("BizHawk.Client.Common").GetTypes()
|
||||||
var apis = Assembly
|
.Concat(Assembly.Load("BizHawk.Client.ApiHawk").GetTypes())
|
||||||
.Load("BizHawk.Client.ApiHawk")
|
.Concat(Assembly.GetAssembly(typeof(ApiContainer)).GetTypes())
|
||||||
.GetTypes()
|
.Where(t => typeof(IExternalApi).IsAssignableFrom(t) && t.IsSealed && ServiceInjector.IsAvailable(serviceProvider, t)))
|
||||||
.Where(t => typeof(IExternalApi).IsAssignableFrom(t))
|
|
||||||
.Where(t => t.IsSealed)
|
|
||||||
.Where(t => ServiceInjector.IsAvailable(serviceProvider, t))
|
|
||||||
.Concat(Assembly
|
|
||||||
.GetAssembly(typeof(ApiContainer))
|
|
||||||
.GetTypes()
|
|
||||||
.Where(t => typeof(IExternalApi).IsAssignableFrom(t))
|
|
||||||
.Where(t => t.IsSealed)
|
|
||||||
.Where(t => ServiceInjector.IsAvailable(serviceProvider, t)))
|
|
||||||
.Concat(Assembly
|
|
||||||
.Load("BizHawk.Client.Common")
|
|
||||||
.GetTypes()
|
|
||||||
.Where(t => typeof(IExternalApi).IsAssignableFrom(t))
|
|
||||||
.Where(t => t.IsSealed)
|
|
||||||
.Where(t => ServiceInjector.IsAvailable(serviceProvider, t)));
|
|
||||||
|
|
||||||
|
|
||||||
foreach (var api in apis)
|
|
||||||
{
|
{
|
||||||
var instance = (IExternalApi)Activator.CreateInstance(api);
|
var instance = (IExternalApi)Activator.CreateInstance(api);
|
||||||
ServiceInjector.UpdateServices(serviceProvider, instance);
|
ServiceInjector.UpdateServices(serviceProvider, instance);
|
||||||
|
|
Loading…
Reference in New Issue