Deprecate user service interfaces in controllers

Added [Obsolete] attributes to _userService in AuthController,
_repository in EmailTemplateController, and _userRepository
in EnvelopeExecutor. These changes guide developers to
transition to using MediatR and IRepository.
This commit is contained in:
tekh 2025-06-30 14:05:36 +02:00
parent 532dc41004
commit b9f5ae826a
3 changed files with 8 additions and 1 deletions

View File

@ -16,6 +16,7 @@ namespace EnvelopeGenerator.GeneratorAPI.Controllers;
public partial class AuthController : ControllerBase public partial class AuthController : ControllerBase
{ {
private readonly ILogger<AuthController> _logger; private readonly ILogger<AuthController> _logger;
[Obsolete("Use MediatR")]
private readonly IUserService _userService; private readonly IUserService _userService;
private readonly IDirectorySearchService _dirSearchService; private readonly IDirectorySearchService _dirSearchService;
@ -25,6 +26,7 @@ public partial class AuthController : ControllerBase
/// <param name="logger">The logger instance.</param> /// <param name="logger">The logger instance.</param>
/// <param name="userService">The user service instance.</param> /// <param name="userService">The user service instance.</param>
/// <param name="dirSearchService">The directory search service instance.</param> /// <param name="dirSearchService">The directory search service instance.</param>
[Obsolete("Use MediatR")]
public AuthController(ILogger<AuthController> logger, IUserService userService, IDirectorySearchService dirSearchService) public AuthController(ILogger<AuthController> logger, IUserService userService, IDirectorySearchService dirSearchService)
{ {
_logger = logger; _logger = logger;

View File

@ -27,6 +27,7 @@ public class EmailTemplateController : ControllerBase
private readonly IMapper _mapper; private readonly IMapper _mapper;
[Obsolete("Use IRepository")]
private readonly IEmailTemplateRepository _repository; private readonly IEmailTemplateRepository _repository;
private readonly IMediator _mediator; private readonly IMediator _mediator;
@ -38,6 +39,7 @@ public class EmailTemplateController : ControllerBase
/// <param name="repository"> /// <param name="repository">
/// Die AutoMapper-Instanz, die zum Zuordnen von Objekten verwendet wird. /// Die AutoMapper-Instanz, die zum Zuordnen von Objekten verwendet wird.
/// </param> /// </param>
[Obsolete("Use IRepository")]
public EmailTemplateController(IMapper mapper, IEmailTemplateRepository repository, ILogger<EmailTemplateController> logger, IMediator mediator) public EmailTemplateController(IMapper mapper, IEmailTemplateRepository repository, ILogger<EmailTemplateController> logger, IMediator mediator)
{ {
_mapper = mapper; _mapper = mapper;
@ -115,4 +117,4 @@ public class EmailTemplateController : ControllerBase
return Ok(); return Ok();
} }
} }
} }

View File

@ -12,13 +12,16 @@ namespace EnvelopeGenerator.Infrastructure.Executor;
public class EnvelopeExecutor : SQLExecutor, IEnvelopeExecutor public class EnvelopeExecutor : SQLExecutor, IEnvelopeExecutor
{ {
[Obsolete("Use IRepository")]
private readonly IUserRepository _userRepository; private readonly IUserRepository _userRepository;
[Obsolete("Use IRepository")]
public EnvelopeExecutor(IServiceProvider provider, IOptions<SQLExecutorParams> sqlExecutorParamsOptions, IUserRepository userRepository) : base(provider, sqlExecutorParamsOptions) public EnvelopeExecutor(IServiceProvider provider, IOptions<SQLExecutorParams> sqlExecutorParamsOptions, IUserRepository userRepository) : base(provider, sqlExecutorParamsOptions)
{ {
_userRepository = userRepository; _userRepository = userRepository;
} }
[Obsolete("Use IRepository")]
public async Task<Envelope> CreateEnvelopeAsync(int userId, string title = "", string message = "", bool tfaEnabled = false, CancellationToken cancellation = default) public async Task<Envelope> CreateEnvelopeAsync(int userId, string title = "", string message = "", bool tfaEnabled = false, CancellationToken cancellation = default)
{ {
using var connection = new SqlConnection(Params.ConnectionString); using var connection = new SqlConnection(Params.ConnectionString);