add abstractions for controllers
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
using TorchRemote.Models.Requests;
|
||||
namespace TorchRemote.Plugin.Abstractions.Controllers;
|
||||
|
||||
public interface IChatController
|
||||
{
|
||||
Task SendMessage(ChatMessageRequest request);
|
||||
Task<Guid> InvokeCommand(ChatCommandRequest request);
|
||||
}
|
@@ -0,0 +1,13 @@
|
||||
using TorchRemote.Models.Requests;
|
||||
using TorchRemote.Models.Responses;
|
||||
using TorchRemote.Models.Shared;
|
||||
namespace TorchRemote.Plugin.Abstractions.Controllers;
|
||||
|
||||
public interface IServerController
|
||||
{
|
||||
ServerStatusResponse GetStatus();
|
||||
Task Start();
|
||||
Task Stop(StopServerRequest request);
|
||||
ServerSettings GetSettings();
|
||||
Task SetSettings(ServerSettings request);
|
||||
}
|
@@ -0,0 +1,7 @@
|
||||
using TorchRemote.Models.Responses;
|
||||
namespace TorchRemote.Plugin.Abstractions.Controllers;
|
||||
|
||||
public interface ISettingsController
|
||||
{
|
||||
SettingInfoResponse Get(Guid id);
|
||||
}
|
@@ -0,0 +1,10 @@
|
||||
using TorchRemote.Models.Responses;
|
||||
namespace TorchRemote.Plugin.Abstractions.Controllers;
|
||||
|
||||
public interface IWorldsController
|
||||
{
|
||||
IEnumerable<Guid> Get();
|
||||
Guid GetSelected();
|
||||
WorldResponse GetWorld(Guid id);
|
||||
void Select(Guid id);
|
||||
}
|
@@ -17,12 +17,13 @@ using Torch.Utils;
|
||||
using TorchRemote.Models.Requests;
|
||||
using TorchRemote.Models.Responses;
|
||||
using TorchRemote.Models.Shared;
|
||||
using TorchRemote.Plugin.Abstractions.Controllers;
|
||||
using TorchRemote.Plugin.Modules;
|
||||
using TorchRemote.Plugin.Utils;
|
||||
using VRage.Network;
|
||||
namespace TorchRemote.Plugin.Controllers;
|
||||
|
||||
public class ChatController : WebApiController
|
||||
public class ChatController : WebApiController, IChatController
|
||||
{
|
||||
private const string RootPath = "/chat";
|
||||
|
||||
|
@@ -7,11 +7,12 @@ using Torch.API.Session;
|
||||
using TorchRemote.Models.Requests;
|
||||
using TorchRemote.Models.Responses;
|
||||
using TorchRemote.Models.Shared;
|
||||
using TorchRemote.Plugin.Abstractions.Controllers;
|
||||
using TorchRemote.Plugin.Utils;
|
||||
|
||||
namespace TorchRemote.Plugin.Controllers;
|
||||
|
||||
public class ServerController : WebApiController
|
||||
public class ServerController : WebApiController, IServerController
|
||||
{
|
||||
private const string RootPath = "/server";
|
||||
|
||||
|
@@ -3,10 +3,11 @@ using EmbedIO.Routing;
|
||||
using EmbedIO.WebApi;
|
||||
using Swan;
|
||||
using TorchRemote.Models.Responses;
|
||||
using TorchRemote.Plugin.Abstractions.Controllers;
|
||||
using TorchRemote.Plugin.Utils;
|
||||
namespace TorchRemote.Plugin.Controllers;
|
||||
|
||||
public class SettingsController : WebApiController
|
||||
public class SettingsController : WebApiController, ISettingsController
|
||||
{
|
||||
private const string RootPath = "/settings";
|
||||
|
||||
|
@@ -3,10 +3,11 @@ using EmbedIO;
|
||||
using EmbedIO.Routing;
|
||||
using EmbedIO.WebApi;
|
||||
using TorchRemote.Models.Responses;
|
||||
using TorchRemote.Plugin.Abstractions.Controllers;
|
||||
using TorchRemote.Plugin.Utils;
|
||||
namespace TorchRemote.Plugin.Controllers;
|
||||
|
||||
public class WorldsController : WebApiController
|
||||
public class WorldsController : WebApiController, IWorldsController
|
||||
{
|
||||
private const string RootPath = "/worlds";
|
||||
|
||||
|
Reference in New Issue
Block a user