some type fixes in UApi
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?
|