Updated mooncore versions. Removed unused imports and legacy configuration loading

This commit is contained in:
2025-02-28 09:55:47 +01:00
parent 6c5e4c2a1e
commit b1092985ff
4 changed files with 24 additions and 51 deletions

View File

@@ -24,7 +24,7 @@
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="MoonCore" Version="1.8.3" />
<PackageReference Include="MoonCore" Version="1.8.4" />
<PackageReference Include="MoonCore.Extended" Version="1.3.0" />
<PackageReference Include="MoonCore.PluginFramework" Version="1.0.5" />
<PackageReference Include="SharpZipLib" Version="1.4.2" />

View File

@@ -6,23 +6,20 @@ using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.EntityFrameworkCore;
using Microsoft.IdentityModel.Tokens;
using MoonCore.Configuration;
using MoonCore.EnvConfiguration;
using MoonCore.Extended.Abstractions;
using MoonCore.Extended.Extensions;
using MoonCore.Extended.Helpers;
using MoonCore.Extended.JwtInvalidation;
using MoonCore.Extensions;
using MoonCore.Helpers;
using MoonCore.PluginFramework.Extensions;
using MoonCore.Plugins;
using MoonCore.Services;
using Moonlight.ApiServer.Configuration;
using Moonlight.ApiServer.Database.Entities;
using Moonlight.ApiServer.Helpers;
using Moonlight.ApiServer.Interfaces.OAuth2;
using Moonlight.ApiServer.Interfaces.Startup;
using Moonlight.ApiServer.Models;
using Moonlight.ApiServer.Services;
using Moonlight.Client.Services;
namespace Moonlight.ApiServer;
@@ -42,8 +39,7 @@ public class Startup
// Configuration
private AppConfiguration Configuration;
private ConfigurationService ConfigurationService;
private ConfigurationOptions ConfigurationOptions;
private IConfigurationRoot ConfigurationRoot;
// WebApplication Stuff
private WebApplication WebApplication;
@@ -80,7 +76,6 @@ public class Startup
await RegisterBase();
await RegisterDatabase();
await RegisterAuth();
await RegisterCaching();
await HookPluginBuild();
await RegisterPluginAssets();
@@ -121,7 +116,6 @@ public class Startup
private Task CreateStorage()
{
Directory.CreateDirectory("storage");
Directory.CreateDirectory(PathBuilder.Dir("storage", "logs"));
Directory.CreateDirectory(PathBuilder.Dir("storage", "plugins"));
return Task.CompletedTask;
@@ -374,43 +368,32 @@ public class Startup
#region Configurations
private Task SetupAppConfiguration()
private async Task SetupAppConfiguration()
{
ConfigurationService = new ConfigurationService();
// Configure configuration (wow)
var configurationBuilder = new ConfigurationBuilder();
// Ensure configuration file exists
var jsonFilePath = PathBuilder.File(Directory.GetCurrentDirectory(), "storage", "app.json");
// Setup options
ConfigurationOptions = new ConfigurationOptions();
if (!File.Exists(jsonFilePath))
await File.WriteAllTextAsync(jsonFilePath, JsonSerializer.Serialize(new AppConfiguration()));
ConfigurationOptions.AddConfiguration<AppConfiguration>("app");
ConfigurationOptions.Path = PathBuilder.Dir("storage");
ConfigurationOptions.EnvironmentPrefix = "MOONLIGHT";
// Create minimal logger
var loggerFactory = new LoggerFactory();
loggerFactory.AddMoonCore(configuration =>
{
configuration.Console.Enable = true;
configuration.Console.EnableAnsiMode = true;
configuration.FileLogging.Enable = false;
});
var logger = loggerFactory.CreateLogger<ConfigurationService>();
// Retrieve configuration
Configuration = ConfigurationService.GetConfiguration<AppConfiguration>(
ConfigurationOptions,
logger
configurationBuilder.AddJsonFile(
jsonFilePath
);
return Task.CompletedTask;
configurationBuilder.AddEnvironmentVariables(prefix: "MOONLIGHT_", separator: "_");
ConfigurationRoot = configurationBuilder.Build();
// Retrieve configuration
Configuration = ConfigurationRoot.Get<AppConfiguration>()!;
}
private Task RegisterAppConfiguration()
{
ConfigurationService.RegisterInDi(ConfigurationOptions, WebApplicationBuilder.Services);
WebApplicationBuilder.Services.AddSingleton(ConfigurationService);
WebApplicationBuilder.Services.AddSingleton(Configuration);
return Task.CompletedTask;
}
@@ -497,13 +480,15 @@ public class Startup
#region Database
private async Task RegisterDatabase()
private Task RegisterDatabase()
{
WebApplicationBuilder.Services.AddDatabaseMappings();
WebApplicationBuilder.Services.AddServiceCollectionAccessor();
WebApplicationBuilder.Services.AddScoped(typeof(DatabaseRepository<>));
WebApplicationBuilder.Services.AddScoped(typeof(CrudHelper<,>));
return Task.CompletedTask;
}
private async Task PrepareDatabase()
@@ -572,14 +557,4 @@ public class Startup
}
#endregion
#region Caching
private Task RegisterCaching()
{
WebApplicationBuilder.Services.AddMemoryCache();
return Task.CompletedTask;
}
#endregion
}

View File

@@ -24,7 +24,7 @@
<PackageReference Include="Blazor-ApexCharts" Version="4.0.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="8.0.10"/>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="8.0.10" PrivateAssets="all"/>
<PackageReference Include="MoonCore" Version="1.8.3" />
<PackageReference Include="MoonCore" Version="1.8.4" />
<PackageReference Include="MoonCore.Blazor" Version="1.2.9" />
<PackageReference Include="MoonCore.PluginFramework" Version="1.0.5"/>
<PackageReference Include="MoonCore.Blazor.Tailwind" Version="1.3.2" />

View File

@@ -9,8 +9,6 @@ using MoonCore.Blazor.Tailwind.Extensions;
using MoonCore.Blazor.Tailwind.Auth;
using MoonCore.Extensions;
using MoonCore.Helpers;
using MoonCore.Plugins;
using Moonlight.Client.Implementations;
using Moonlight.Client.Interfaces;
using Moonlight.Client.Services;
using Moonlight.Shared.Misc;