push my ork
This commit is contained in:
@@ -1,17 +1,13 @@
|
||||
using OwnChar.Api.Packets;
|
||||
namespace OwnChar.Server.Api.Endpoint;
|
||||
|
||||
namespace OwnChar.Server.Api.Endpoint;
|
||||
|
||||
internal class ApiBuilder(WebApplication app) : IApiBuilder
|
||||
internal class ApiBuilder : IApiBuilder
|
||||
{
|
||||
public void MapRequest(string pattern, Delegate action)
|
||||
{
|
||||
Map(pattern + "/{request}", action);
|
||||
}
|
||||
private readonly Dictionary<ApiMapInfo, Delegate> handlers = [];
|
||||
|
||||
public IReadOnlyDictionary<ApiMapInfo, Delegate> Handlers => handlers;
|
||||
|
||||
public void Map(string pattern, Delegate action)
|
||||
{
|
||||
//app.Map(pattern, action);
|
||||
app.MapPost(pattern, action);
|
||||
handlers.Add(new(pattern, "POST"), action);
|
||||
}
|
||||
}
|
||||
|
||||
3
OwnChar.Server/Api/Endpoint/ApiMapInfo.cs
Normal file
3
OwnChar.Server/Api/Endpoint/ApiMapInfo.cs
Normal file
@@ -0,0 +1,3 @@
|
||||
namespace OwnChar.Server.Api.Endpoint;
|
||||
|
||||
public record struct ApiMapInfo(string Pattern, string Method);
|
||||
@@ -1,9 +1,8 @@
|
||||
using OwnChar.Api.Packets;
|
||||
|
||||
namespace OwnChar.Server.Api.Endpoint;
|
||||
namespace OwnChar.Server.Api.Endpoint;
|
||||
|
||||
public interface IApiBuilder
|
||||
{
|
||||
void MapRequest(string pattern, Delegate action);
|
||||
public IReadOnlyDictionary<ApiMapInfo, Delegate> Handlers { get; }
|
||||
|
||||
void Map(string path, Delegate action);
|
||||
}
|
||||
|
||||
@@ -13,15 +13,15 @@ internal class GroupsApi(IServer server) : IApiEndpoint
|
||||
{
|
||||
public void Initialize(IApiBuilder builder)
|
||||
{
|
||||
builder.MapRequest("/groups/get/byid", GetById);
|
||||
builder.MapRequest("/groups/get", Get);
|
||||
builder.MapRequest("/groups/create", Create);
|
||||
builder.MapRequest("/groups/update", Update);
|
||||
builder.MapRequest("/groups/delete", Delete);
|
||||
builder.MapRequest("/groups/members/get", GetMembers);
|
||||
builder.MapRequest("/groups/members/add", AddMembers);
|
||||
builder.MapRequest("/groups/members/update", UpdateMember);
|
||||
builder.MapRequest("/groups/members/remove", RemoveMembers);
|
||||
builder.Map("/groups/get/byid", GetById);
|
||||
builder.Map("/groups/get", Get);
|
||||
builder.Map("/groups/create", Create);
|
||||
builder.Map("/groups/update", Update);
|
||||
builder.Map("/groups/delete", Delete);
|
||||
builder.Map("/groups/members/get", GetMembers);
|
||||
builder.Map("/groups/members/add", AddMembers);
|
||||
builder.Map("/groups/members/update", UpdateMember);
|
||||
builder.Map("/groups/members/remove", RemoveMembers);
|
||||
}
|
||||
|
||||
private IResult GetById(GetSinlgeObjectRequest request)
|
||||
|
||||
@@ -9,8 +9,8 @@ internal class LoginApi(ServerContext server) : IApiEndpoint
|
||||
{
|
||||
public void Initialize(IApiBuilder builder)
|
||||
{
|
||||
builder.Map("/auth/login/{request}", Login);
|
||||
builder.Map("/auth/logout/{request}", Logout);
|
||||
builder.Map("/auth/login", Login);
|
||||
builder.Map("/auth/logout", Logout);
|
||||
}
|
||||
|
||||
private IResult Login(LoginRequest request)
|
||||
|
||||
Reference in New Issue
Block a user