From 1456e5bb43c2ca54311a04bc6b88f0da6c18ac5d Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Sat, 12 Dec 2020 20:17:40 +0330 Subject: [PATCH] #45 adding audio-upload-enabled header to reduce the need for a separate query --- RMuseum/Controllers/RecitationController.cs | 10 ++++++++++ RMuseum/RMuseum.xml | 4 ++++ RMuseum/Startup.cs | 2 +- 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/RMuseum/Controllers/RecitationController.cs b/RMuseum/Controllers/RecitationController.cs index 20948c49..5c811169 100644 --- a/RMuseum/Controllers/RecitationController.cs +++ b/RMuseum/Controllers/RecitationController.cs @@ -102,6 +102,7 @@ namespace RMuseum.Controllers /// default: false, user must have recitation::moderate permission to be able to see all users narrations /// default: -1, unfiltered /// + /// additional headers: paging-headers, audio-upload-enabled /// [HttpGet] [Authorize] @@ -138,6 +139,9 @@ namespace RMuseum.Controllers // Paging Header HttpContext.Response.Headers.Add("paging-headers", JsonConvert.SerializeObject(res.Result.PagingMeta)); + //adding audio upload enabled header to reduce need for a separate query + HttpContext.Response.Headers.Add("audio-upload-enabled", JsonConvert.SerializeObject(_audioService.UploadEnabled)); + return Ok(res.Result.Items); } @@ -371,6 +375,7 @@ namespace RMuseum.Controllers /// /// default: false, user must have recitation::moderate permission to be able to see all users uploads /// + /// additional headers: paging-headers, audio-upload-enabled [HttpGet("uploads")] [Authorize] [ProducesResponseType((int)HttpStatusCode.OK, Type = typeof(IEnumerable))] @@ -407,12 +412,17 @@ namespace RMuseum.Controllers // Paging Header HttpContext.Response.Headers.Add("paging-headers", JsonConvert.SerializeObject(res.Result.PagingMeta)); + //adding audio upload enabled header to reduce need for a separate query + HttpContext.Response.Headers.Add("audio-upload-enabled", JsonConvert.SerializeObject(_audioService.UploadEnabled)); + return Ok(res.Result.Items); } /// /// upload, update, moderate and delete operations on recitations might temporarily become disabled, /// this method gets the current status + /// remarks: the value of this flag is provided as a custom header called audio-upload-enabled in some common GET methods + /// in order to reduce the need for a separate query /// /// diff --git a/RMuseum/RMuseum.xml b/RMuseum/RMuseum.xml index 9c57e864..9ce820ea 100644 --- a/RMuseum/RMuseum.xml +++ b/RMuseum/RMuseum.xml @@ -754,6 +754,7 @@ default: false, user must have recitation::moderate permission to be able to see all users narrations default: -1, unfiltered + additional headers: paging-headers, audio-upload-enabled @@ -820,11 +821,14 @@ default: false, user must have recitation::moderate permission to be able to see all users uploads + additional headers: paging-headers, audio-upload-enabled upload, update, moderate and delete operations on recitations might temporarily become disabled, this method gets the current status + remarks: the value of this flag is provided as a custom header called audio-upload-enabled in some common GET methods + in order to reduce the need for a separate query diff --git a/RMuseum/Startup.cs b/RMuseum/Startup.cs index 813e5304..0c71ff5d 100644 --- a/RMuseum/Startup.cs +++ b/RMuseum/Startup.cs @@ -56,7 +56,7 @@ namespace RMuseum builder => builder.SetIsOriginAllowed(_ => true) .AllowAnyMethod() .AllowAnyHeader() - .WithExposedHeaders("paging-headers") + .WithExposedHeaders("paging-headers", "audio-upload-enabled") .AllowCredentials() ); });