Refactor: Rely on a list when checking service URL availability
Extracted from !517 (closed)
Previously in serviceCatalogToEndpoints
we have been converting
a list of service names and computed URLs into a Dict
and performing
various computations on that Dict
to determine if all are availabe,
and if not, which are missing.
This accidentally created an abstraction overload where we were doing
more work than is required by the initial data structure, the List
.
In this patch we're removing the Dict
and relying on list operations,
importantly List.filterMap
, which maps values and if they are Nothing
will remove them from the resulting list. This simplifies the logic and
avoids a superfluous level of abstraction.