Files
SPT-Server-Build/Libraries/SPTarkov.Server.Core/Routers/Static/LauncherStaticRouter.cs
T
Jesse aafe24eafb Move Router, Callbacks and GetResponse over to ValueTask (#325)
* Move Router, Callbacks and GetResponse over to ValueTask

* Assign empty deserializedObject for now, keep todo

* Cleanup GetResponse

* Re-add logger for request
2025-05-31 20:30:41 +01:00

84 lines
3.5 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)
)
]
)
{
}
}