diff --git a/server/AyaNova/Controllers/NotifyController.cs b/server/AyaNova/Controllers/NotifyController.cs index 0063f643..cd2ed46e 100644 --- a/server/AyaNova/Controllers/NotifyController.cs +++ b/server/AyaNova/Controllers/NotifyController.cs @@ -104,6 +104,35 @@ namespace AyaNova.Api.Controllers return NoContent(); } + + /// + /// Get Notify Event object list from queue + /// + /// Notify Event objects awaiting delivery + [HttpGet("queue")] + public async Task GetQueue() + { + if (serverState.IsClosed) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + + if (!Authorized.HasReadFullRole(HttpContext.Items, AyaType.OpsNotificationSettings)) + { + return StatusCode(403, new ApiNotAuthorizedResponse()); + } + + if (!ModelState.IsValid) + { + return BadRequest(new ApiErrorResponse(ModelState)); + } + + //Instantiate the business object handler + JobOperationsBiz biz = new JobOperationsBiz(ct, UserIdFromContext.Id(HttpContext.Items), UserRolesFromContext.Roles(HttpContext.Items)); + + List l = await biz.GetAllJobsLogsListAsync(); + return Ok(ApiOkResponse.Response(l)); + } + + //------------