From 9901726f5ac7b512237d74a58fbccea6e5e1796d Mon Sep 17 00:00:00 2001 From: TekH Date: Thu, 4 Dec 2025 14:01:47 +0100 Subject: [PATCH] Add CancellationToken support to OutResController methods Updated `Get` methods in `OutResController` to include a `CancellationToken` parameter, enabling support for request cancellation during asynchronous operations. Updated all `mediator.Send` calls to propagate the `CancellationToken`. Simplified the "fake/{actionId}" route by removing the explicit assignment of `HttpContext.Response.ContentType` for non- `ResultType.Full` cases. --- src/ReC.API/Controllers/OutResController.cs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/ReC.API/Controllers/OutResController.cs b/src/ReC.API/Controllers/OutResController.cs index 7c81d09..bef2d26 100644 --- a/src/ReC.API/Controllers/OutResController.cs +++ b/src/ReC.API/Controllers/OutResController.cs @@ -2,7 +2,6 @@ using Microsoft.AspNetCore.Mvc; using ReC.API.Extensions; using ReC.Application.OutResults.Queries; -using System.Net.Mime; namespace ReC.API.Controllers; @@ -11,25 +10,22 @@ namespace ReC.API.Controllers; public class OutResController(IMediator mediator, IConfiguration config) : ControllerBase { [HttpGet] - public async Task Get([FromQuery] ReadOutResQuery query) => Ok(await mediator.Send(query)); + public async Task Get([FromQuery] ReadOutResQuery query, CancellationToken cancel) => Ok(await mediator.Send(query, cancel)); [HttpGet("fake")] - public async Task Get() => Ok(await mediator.Send(new ReadOutResQuery() + public async Task Get(CancellationToken cancel) => Ok(await mediator.Send(new ReadOutResQuery() { ProfileId = config.GetFakeProfileId() - })); + }, cancel)); [HttpGet("fake/{actionId}")] - public async Task Get([FromRoute] long actionId, ResultType resultType = ResultType.Full) + public async Task Get([FromRoute] long actionId, CancellationToken cancel, ResultType resultType = ResultType.Full) { var res = (await mediator.Send(new ReadOutResQuery() { ProfileId = config.GetFakeProfileId(), ActionId = actionId - })).First(); - - if (resultType is not ResultType.Full) - HttpContext.Response.ContentType = MediaTypeNames.Application.Json; + }, cancel)).First(); return resultType switch {