From bd4c360a4f1d0b1caa0e2c00d19eed7bd209d931 Mon Sep 17 00:00:00 2001 From: rootdarkarchon Date: Wed, 11 Jan 2023 12:23:03 +0100 Subject: [PATCH] Add API for FileServiceRequests (#8) * add paths to api * add queue request dto * update api for pathing * update pathing again * update api Co-authored-by: rootdarkarchon Co-authored-by: Stanley Dimant --- MareSynchronosAPI/IMareHub.cs | 10 +-------- MareSynchronosAPI/MareAuth.cs | 12 +++++++++++ MareSynchronosAPI/MareFiles.cs | 24 +++++++++++++++++++++ MareSynchronosAPI/MareSynchronos.API.csproj | 2 +- MareSynchronosAPI/QueueRequestDto.cs | 15 +++++++++++++ 5 files changed, 53 insertions(+), 10 deletions(-) create mode 100644 MareSynchronosAPI/MareAuth.cs create mode 100644 MareSynchronosAPI/MareFiles.cs create mode 100644 MareSynchronosAPI/QueueRequestDto.cs diff --git a/MareSynchronosAPI/IMareHub.cs b/MareSynchronosAPI/IMareHub.cs index d0d97b8..3266bd6 100644 --- a/MareSynchronosAPI/IMareHub.cs +++ b/MareSynchronosAPI/IMareHub.cs @@ -10,17 +10,9 @@ namespace MareSynchronos.API Warning, Error } - - public class MareAuth - { - public const string Auth = "/auth"; - public const string AuthCreate = "create"; - public const string AuthCreateIdent = "createWithIdent"; - public static string AuthFullPath = Auth + "/" + AuthCreateIdent; - } public interface IMareHub { - const int ApiVersion = 17; + const int ApiVersion = 18; const string Path = "/mare"; Task FilesAbortUpload(); diff --git a/MareSynchronosAPI/MareAuth.cs b/MareSynchronosAPI/MareAuth.cs new file mode 100644 index 0000000..e228a9d --- /dev/null +++ b/MareSynchronosAPI/MareAuth.cs @@ -0,0 +1,12 @@ +using System; + +namespace MareSynchronos.API +{ + public class MareAuth + { + + public const string Auth = "/auth"; + public const string Auth_CreateIdent = "createWithIdent"; + public static Uri AuthFullPath(Uri baseUri) => new Uri(baseUri, Auth + "/" + Auth_CreateIdent); + } +} \ No newline at end of file diff --git a/MareSynchronosAPI/MareFiles.cs b/MareSynchronosAPI/MareFiles.cs new file mode 100644 index 0000000..d8b8411 --- /dev/null +++ b/MareSynchronosAPI/MareFiles.cs @@ -0,0 +1,24 @@ +using System; + +namespace MareSynchronos.API +{ + public class MareFiles + { + public const string Cache = "/cache"; + public const string Cache_Get = "get"; + public static Uri CacheGetFullPath(Uri baseUri, Guid requestId) => new(baseUri, Cache + "/" + Cache_Get + "?requestId=" + requestId.ToString()); + + public const string ServerFiles = "/files"; + public const string ServerFiles_Get = "get"; + public static Uri ServerFilesGetFullPath(Uri baseUri, string hash) => new(baseUri, ServerFiles + "/" + ServerFiles_Get + "/" + hash); + + public const string Request = "/request"; + public const string Request_Enqueue = "enqueue"; + public const string Request_RequestFile = "file"; + public const string Request_CheckQueue = "status"; + + public static Uri RequestEnqueueFullPath(Uri baseUri) => new(baseUri, Request + "/" + Request_Enqueue); + public static Uri RequestRequestFileFullPath(Uri baseUri, string hash) => new(baseUri, Request + "/" + Request_RequestFile + "?file=" + hash); + public static Uri RequestCheckQueueFullPath(Uri baseUri, Guid requestId) => new(baseUri, Request + "/" + Request_CheckQueue + "?requestId=" + requestId.ToString()); + } +} \ No newline at end of file diff --git a/MareSynchronosAPI/MareSynchronos.API.csproj b/MareSynchronosAPI/MareSynchronos.API.csproj index 024230b..acf7461 100644 --- a/MareSynchronosAPI/MareSynchronos.API.csproj +++ b/MareSynchronosAPI/MareSynchronos.API.csproj @@ -1,7 +1,7 @@ - net6.0 + net7.0 diff --git a/MareSynchronosAPI/QueueRequestDto.cs b/MareSynchronosAPI/QueueRequestDto.cs new file mode 100644 index 0000000..ed88f92 --- /dev/null +++ b/MareSynchronosAPI/QueueRequestDto.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace MareSynchronos.API; + +public record QueueRequestDto(Guid RequestId, QueueStatus QueueStatus); + +public enum QueueStatus +{ + Ready, + Waiting +}