|
@@ -8,13 +8,15 @@ public class GetSystemServiceTreeUseCase(
|
|
|
ISystemRepository systemRepository,
|
|
ISystemRepository systemRepository,
|
|
|
IServiceRepository serviceRepository) : IUseCase
|
|
IServiceRepository serviceRepository) : IUseCase
|
|
|
{
|
|
{
|
|
|
- public async Task<SystemDependencyTree?> ExecuteAsync(string name)
|
|
|
|
|
|
|
+ public async Task<SystemDependencyTree> ExecuteAsync(string name)
|
|
|
{
|
|
{
|
|
|
name = Normalize.SystemName(name);
|
|
name = Normalize.SystemName(name);
|
|
|
ThrowIfInvalid.ResourceName(name);
|
|
ThrowIfInvalid.ResourceName(name);
|
|
|
var system = await systemRepository.GetByNameAsync(name);
|
|
var system = await systemRepository.GetByNameAsync(name);
|
|
|
- if (system is null) return null;
|
|
|
|
|
-
|
|
|
|
|
|
|
+ if (system is null)
|
|
|
|
|
+ {
|
|
|
|
|
+ throw new NotFoundException($"System '{name}' not found.");
|
|
|
|
|
+ }
|
|
|
var services = await serviceRepository.GetBySystemHostAsync(system.Name);
|
|
var services = await serviceRepository.GetBySystemHostAsync(system.Name);
|
|
|
|
|
|
|
|
return new SystemDependencyTree(system, services);
|
|
return new SystemDependencyTree(system, services);
|