AddNicUseCase.cs 609 B

123456789101112131415161718192021222324252627
  1. namespace RackPeek.Domain.Resources.Hardware.Server.Nic;
  2. public class AddNicUseCase(IHardwareRepository repository)
  3. {
  4. public async Task ExecuteAsync(
  5. string serverName,
  6. string type,
  7. int speed,
  8. int ports)
  9. {
  10. var hardware = await repository.GetByNameAsync(serverName);
  11. if (hardware is not Models.Server server)
  12. return;
  13. server.Nics ??= [];
  14. server.Nics.Add(new Models.Nic
  15. {
  16. Type = type,
  17. Speed = speed,
  18. Ports = ports
  19. });
  20. await repository.UpdateAsync(server);
  21. }
  22. }