DeleteDesktopUseCase.cs 539 B

1234567891011121314151617181920
  1. namespace RackPeek.Domain.Resources.Hardware.Desktops;
  2. public class DeleteDesktopUseCase
  3. {
  4. private readonly IHardwareRepository _repository;
  5. public DeleteDesktopUseCase(IHardwareRepository repository)
  6. {
  7. _repository = repository;
  8. }
  9. public async Task ExecuteAsync(string name)
  10. {
  11. var hardware = await _repository.GetByNameAsync(name);
  12. if (hardware == null)
  13. throw new InvalidOperationException($"Desktop '{name}' not found.");
  14. await _repository.DeleteAsync(name);
  15. }
  16. }