Skip to content

Commit c0a86ec

Browse files
Merge pull request #25 from TheEightBot/feature/updated-builders
2 parents f433dde + 3cc6b80 commit c0a86ec

File tree

5 files changed

+27
-24
lines changed

5 files changed

+27
-24
lines changed

Stellar.Avalonia/Extensions/AppBuilderExtensions.cs

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,27 +8,13 @@ namespace Stellar.Avalonia;
88

99
public static class AppBuilderExtensions
1010
{
11-
public static AppBuilder UseStellarComponents<TStellarAssembly>(this AppBuilder appBuilder)
11+
public static AppBuilder UseStellarComponents(this AppBuilder appBuilder)
1212
{
1313
PlatformRegistrationManager.SetRegistrationNamespaces(RegistrationNamespace.Avalonia);
1414
Locator.CurrentMutable.InitializeSplat();
1515
Locator.CurrentMutable.InitializeReactiveUI();
1616
RxApp.TaskpoolScheduler = Schedulers.ShortTermThreadPoolScheduler;
1717

18-
/*
19-
services.ConfigureStellarComponents(typeof(TStellarAssembly).GetTypeInfo().Assembly);
20-
21-
services
22-
.AddSingleton(
23-
sp =>
24-
{
25-
var instance = StellarDependencyResolver.Instance;
26-
27-
instance.RegisterResolver((Type type) => sp.GetService(type));
28-
29-
return instance;
30-
});
31-
*/
3218
return appBuilder;
3319
}
3420

Stellar.AvaloniaSample/Program.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ public static AppBuilder BuildAvaloniaApp() =>
2121
.UsePlatformDetect()
2222
.WithInterFont()
2323
.LogToTrace()
24-
.UseStellarComponents<App>()
24+
.UseStellarComponents()
2525
#if DEBUG
2626
.EnableHotReload()
2727
#endif
2828
.UseReactiveUI();
29-
}
29+
}

Stellar.Blazor/Extensions/BuilderExtensions.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,21 @@ namespace Stellar.Blazor;
77
public static class BuilderExtensions
88
{
99
public static IServiceCollection UseStellarComponents<TStellarAssembly>(this IServiceCollection services)
10+
{
11+
UseStellarComponents(services);
12+
13+
services.ConfigureStellarComponents(typeof(TStellarAssembly).GetTypeInfo().Assembly);
14+
15+
return services;
16+
}
17+
18+
public static IServiceCollection UseStellarComponents(this IServiceCollection services)
1019
{
1120
PlatformRegistrationManager.SetRegistrationNamespaces(RegistrationNamespace.Blazor);
1221
Locator.CurrentMutable.InitializeSplat();
1322
Locator.CurrentMutable.InitializeReactiveUI();
1423
RxApp.TaskpoolScheduler = Schedulers.ShortTermThreadPoolScheduler;
1524

16-
services.ConfigureStellarComponents(typeof(TStellarAssembly).GetTypeInfo().Assembly);
17-
1825
return services;
1926
}
2027
}

Stellar.Maui/Extensions/MauiAppBuilderExtensions.cs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,17 @@ public static MauiAppBuilder PreCacheComponents<TStellarAssembly>(this MauiAppBu
1818
}
1919

2020
public static MauiAppBuilder UseStellarComponents<TStellarAssembly>(this MauiAppBuilder mauiAppBuilder, bool useCustomMauiScheduler = true, bool useShortTermThreadPoolScheduler = true)
21+
{
22+
UseStellarComponents(mauiAppBuilder, useCustomMauiScheduler, useShortTermThreadPoolScheduler);
23+
24+
mauiAppBuilder
25+
.Services
26+
.ConfigureStellarComponents(typeof(TStellarAssembly).GetTypeInfo().Assembly);
27+
28+
return mauiAppBuilder;
29+
}
30+
31+
public static MauiAppBuilder UseStellarComponents(this MauiAppBuilder mauiAppBuilder, bool useCustomMauiScheduler = true, bool useShortTermThreadPoolScheduler = true)
2132
{
2233
UseCustomMauiScheduler = useCustomMauiScheduler;
2334
UseShortTermThreadPoolScheduler = useShortTermThreadPoolScheduler;
@@ -26,12 +37,11 @@ public static MauiAppBuilder UseStellarComponents<TStellarAssembly>(this MauiApp
2637
Locator.CurrentMutable.InitializeSplat();
2738
Locator.CurrentMutable.InitializeReactiveUI();
2839

40+
mauiAppBuilder.Services.TryAddEnumerable(ServiceDescriptor.Singleton<IMauiInitializeScopedService, MauiSchedulerInitializer>());
41+
2942
mauiAppBuilder
3043
.Services
31-
.AddSingleton(serviceProvider => new MauiScheduler(serviceProvider.GetRequiredService<IDispatcher>()))
32-
.ConfigureStellarComponents(typeof(TStellarAssembly).GetTypeInfo().Assembly);
33-
34-
mauiAppBuilder.Services.TryAddEnumerable(ServiceDescriptor.Singleton<IMauiInitializeScopedService, MauiSchedulerInitializer>());
44+
.AddSingleton(serviceProvider => new MauiScheduler(serviceProvider.GetRequiredService<IDispatcher>()));
3545

3646
return mauiAppBuilder;
3747
}

Stellar.MauiSample/MauiProgram.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static MauiApp CreateMauiApp()
2424
#if DEBUG
2525
.EnableHotReload()
2626
#endif
27-
.UseStellarComponents<App>();
27+
.UseStellarComponents();
2828

2929
appBuilder.Services.AddRegisteredServicesForStellarMauiSample();
3030

0 commit comments

Comments
 (0)