70 lines
3.1 KiB
C#
70 lines
3.1 KiB
C#
using Core.Annotations;
|
|
using Core.Callbacks;
|
|
using Core.DI;
|
|
using Core.Models.Eft.Common;
|
|
using Core.Models.Eft.Launcher;
|
|
using Core.Utils;
|
|
|
|
namespace Core.Routers.Static;
|
|
|
|
[Injectable(InjectableTypeOverride = typeof(StaticRouter))]
|
|
public class LauncherStaticRouter : StaticRouter
|
|
{
|
|
public LauncherStaticRouter(LauncherCallbacks launcherCallbacks, JsonUtil jsonUtil) : base(
|
|
jsonUtil,
|
|
[
|
|
new RouteAction(
|
|
"/launcher/ping",
|
|
(url, _, sessionID, _) => launcherCallbacks.Ping(url, null, sessionID)),
|
|
new RouteAction(
|
|
"/launcher/server/connect",
|
|
(_, _, _, _) => launcherCallbacks.Connect()),
|
|
new RouteAction(
|
|
"/launcher/profile/login",
|
|
(url, info, sessionID, _) => launcherCallbacks.Login(url, info as LoginRequestData, sessionID),
|
|
typeof(LoginRequestData)),
|
|
new RouteAction(
|
|
"/launcher/profile/register",
|
|
(url, info, sessionID, _) => launcherCallbacks.Register(url, info as RegisterData, sessionID),
|
|
typeof(RegisterData)),
|
|
new RouteAction(
|
|
"/launcher/profile/get",
|
|
(url, info, sessionID, _) => launcherCallbacks.Get(url, info as LoginRequestData, sessionID),
|
|
typeof(LoginRequestData)),
|
|
new RouteAction(
|
|
"/launcher/profile/change/username",
|
|
(url, info, sessionID, _) =>
|
|
launcherCallbacks.ChangeUsername(url, info as ChangeRequestData, sessionID),
|
|
typeof(ChangeRequestData)),
|
|
new RouteAction(
|
|
"/launcher/profile/change/password",
|
|
(url, info, sessionID, _) =>
|
|
launcherCallbacks.ChangePassword(url, info as ChangeRequestData, sessionID),
|
|
typeof(ChangeRequestData)),
|
|
new RouteAction(
|
|
"/launcher/profile/change/wipe",
|
|
(url, info, sessionID, _) => launcherCallbacks.Wipe(url, info as RegisterData, sessionID),
|
|
typeof(RegisterData)),
|
|
new RouteAction(
|
|
"/launcher/profile/remove",
|
|
(url, info, sessionID, _) => launcherCallbacks.RemoveProfile(url, info as RemoveProfileData, sessionID),
|
|
typeof(RemoveProfileData)),
|
|
new RouteAction(
|
|
"/launcher/profile/compatibleTarkovVersion",
|
|
(_, _, _, _) => launcherCallbacks.GetCompatibleTarkovVersion()),
|
|
new RouteAction(
|
|
"/launcher/server/version",
|
|
(_, _, _, _) => launcherCallbacks.GetServerVersion()),
|
|
new RouteAction(
|
|
"/launcher/server/loadedServerMods",
|
|
(_, _, _, _) => launcherCallbacks.GetLoadedServerMods()),
|
|
new RouteAction(
|
|
"/launcher/server/serverModsUsedByProfile",
|
|
(url, info, sessionID, _) =>
|
|
launcherCallbacks.GetServerModsProfileUsed(url, info as EmptyRequestData, sessionID),
|
|
typeof(EmptyRequestData))
|
|
])
|
|
{
|
|
}
|
|
}
|