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