summary refs log tree commit diff
path: root/extra/admin-api/Spacebar.UApi/Controllers
diff options
context:
space:
mode:
Diffstat (limited to 'extra/admin-api/Spacebar.UApi/Controllers')
-rw-r--r--extra/admin-api/Spacebar.UApi/Controllers/Applications/ApplicationRpcController.cs34
1 files changed, 19 insertions, 15 deletions
diff --git a/extra/admin-api/Spacebar.UApi/Controllers/Applications/ApplicationRpcController.cs b/extra/admin-api/Spacebar.UApi/Controllers/Applications/ApplicationRpcController.cs

index 08f45c62..c8dc60ca 100644 --- a/extra/admin-api/Spacebar.UApi/Controllers/Applications/ApplicationRpcController.cs +++ b/extra/admin-api/Spacebar.UApi/Controllers/Applications/ApplicationRpcController.cs
@@ -13,6 +13,7 @@ public class ApplicationRpcController : ControllerBase { // // } + // TODO: implement disclosures [HttpGet("disclosures")] public ApplicationDisclosures GetApplicationDisclosures(string applicationId) { return new ApplicationDisclosures { @@ -22,27 +23,22 @@ public class ApplicationRpcController : ControllerBase { }; } + /// <summary> + /// Marks a list of flags as acknowledged + /// </summary> + /// <param name="applicationId">ID of the application</param> + /// <param name="ack">The list of flags to mark as acknowledged</param> + /// <returns>The new list of acknowledged flags</returns> [HttpPost("disclosures")] - public ApplicationDisclosures AckApplicationDisclosures(string applicationId) { - // TODO: type is wrong, normally only `disclosures` is returned - return new ApplicationDisclosures { - Disclosures = [], - AckedDisclosures = [], - AllAcked = true - }; + public ApplicationDisclosureAck AckApplicationDisclosures(string applicationId, ApplicationDisclosureAck ack) { + return ack; } } -public class ApplicationDisclosures { +public class ApplicationDisclosureAck { [JsonPropertyName("disclosures")] public List<ApplicationDisclosureType> Disclosures { get; set; } - [JsonPropertyName("acked_disclosures")] - public List<ApplicationDisclosureType> AckedDisclosures { get; set; } - - [JsonPropertyName("all_acked")] - public bool AllAcked { get; set; } - public enum ApplicationDisclosureType { UnspecifiedDisclosure = 0, IpLocation = 1, @@ -51,6 +47,14 @@ public class ApplicationDisclosures { } } +public class ApplicationDisclosures : ApplicationDisclosureAck { + [JsonPropertyName("acked_disclosures")] + public List<ApplicationDisclosureType> AckedDisclosures { get; set; } + + [JsonPropertyName("all_acked")] + public bool AllAcked { get; set; } +} + public class RpcApplicationInfo { [JsonPropertyName("id")] public string Id { get; set; } @@ -66,7 +70,7 @@ public class RpcApplicationInfo { [JsonPropertyName("summary")] public string Summary { get; set; } - + [JsonPropertyName("type")] public ApplicationType? Type { get; set; } // what is this?