LANCommander/LANCommander.SDK/Extensions/IServiceCollectionExtensions.cs
2025-09-27 16:39:54 -05:00

44 lines
No EOL
1.7 KiB
C#

using LANCommander.SDK.Abstractions;
using LANCommander.SDK.Factories;
using LANCommander.SDK.Providers;
using LANCommander.SDK.Rpc;
using LANCommander.SDK.Rpc.Client;
using LANCommander.SDK.Services;
using Microsoft.Extensions.DependencyInjection;
namespace LANCommander.SDK.Extensions;
public static class IServiceCollectionExtensions
{
public static IServiceCollection AddLANCommanderClient(this IServiceCollection services)
{
services.AddSingleton<ITokenProvider, TokenProvider>();
services.AddSingleton<INetworkInformationProvider, NetworkInformationProvider>();
services.AddSingleton<IRpcClient, RpcClient>();
services.AddSingleton<ApiRequestFactory>();
services.AddSingleton<ProcessExecutionContextFactory>();
services.AddSingleton<AuthenticationClient>();
services.AddSingleton<BeaconClient>();
services.AddSingleton<ChatClient>();
services.AddSingleton<IConnectionClient, ConnectionClient>();
services.AddSingleton<DepotClient>();
services.AddSingleton<GameClient>();
services.AddSingleton<IssueClient>();
services.AddSingleton<LauncherClient>();
services.AddSingleton<LibraryClient>();
services.AddSingleton<LobbyClient>();
services.AddSingleton<MediaClient>();
services.AddSingleton<PlaySessionClient>();
services.AddSingleton<ProfileClient>();
services.AddSingleton<RedistributableClient>();
services.AddSingleton<SaveClient>();
services.AddSingleton<ScriptClient>();
services.AddSingleton<ServerClient>();
services.AddSingleton<TagClient>();
services.AddSingleton<Client>();
return services;
}
}