Console base WIP

This commit is contained in:
2023-08-07 14:55:18 +02:00
parent 2107d4f92a
commit b9adbc8272
18 changed files with 454 additions and 5 deletions

View File

@@ -0,0 +1,33 @@
using FileTime.App.CommandPalette;
using FileTime.App.ContainerSizeScanner;
using FileTime.App.DependencyInjection;
using FileTime.App.FrequencyNavigation;
using FileTime.App.Search;
using FileTime.ConsoleUI.App;
using FileTime.Providers.Local;
using FileTime.Server.Common;
using FileTime.Tools.Compression;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Serilog;
namespace FileTime.ConsoleUI;
public class DI
{
public static IServiceProvider ServiceProvider { get; set; } = null!;
public static void Initialize(IConfigurationRoot configuration)
=> ServiceProvider = DependencyInjection
.RegisterDefaultServices(configuration: configuration)
.AddConsoleServices()
.AddLocalProviderServices()
.AddServerCoreServices()
.AddFrequencyNavigation()
.AddCommandPalette()
.AddContainerSizeScanner()
.AddSearch()
.AddCompression()
.AddLogging(loggingBuilder => loggingBuilder.AddSerilog())
.BuildServiceProvider();
}

View File

@@ -12,7 +12,17 @@
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\AppCommon\FileTime.App.ContainerSizeScanner\FileTime.App.ContainerSizeScanner.csproj" />
<ProjectReference Include="..\..\AppCommon\FileTime.App.DependencyInjection\FileTime.App.DependencyInjection.csproj" />
<ProjectReference Include="..\..\AppCommon\FileTime.App.FrequencyNavigation\FileTime.App.FrequencyNavigation.csproj" />
<ProjectReference Include="..\..\Tools\FileTime.Tools.Compression\FileTime.Tools.Compression.csproj" />
<ProjectReference Include="..\FileTime.ConsoleUI.App\FileTime.ConsoleUI.App.csproj" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Configuration" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="7.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" />
</ItemGroup>
</Project>

View File

@@ -1,7 +1,14 @@
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");
using FileTime.ConsoleUI;
using FileTime.ConsoleUI.App;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
var d1 = new DirectoryInfo("C:");
var d2 = new DirectoryInfo("C:\\");
var configuration = new ConfigurationBuilder()
#if DEBUG
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
#endif
.Build();
DI.Initialize(configuration);
;
var app = DI.ServiceProvider.GetRequiredService<IApplication>();
app.Run();