UpdateAccessPointUseCase.cs 684 B

12345678910111213141516171819202122232425
  1. using RackPeek.Domain.Resources.Hardware.Models;
  2. namespace RackPeek.Domain.Resources.Hardware.AccessPoints;
  3. public class UpdateAccessPointUseCase(IHardwareRepository repository)
  4. {
  5. public async Task ExecuteAsync(
  6. string name,
  7. string? model = null,
  8. double? speed = null
  9. )
  10. {
  11. var ap = await repository.GetByNameAsync(name) as AccessPoint;
  12. if (ap == null)
  13. throw new InvalidOperationException($"Access point '{name}' not found.");
  14. if (!string.IsNullOrWhiteSpace(model))
  15. ap.Model = model;
  16. if (speed.HasValue)
  17. ap.Speed = speed.Value;
  18. await repository.UpdateAsync(ap);
  19. }
  20. }