@GET
@Produces({MediaType.APPLICATION_JSON})
public Response getAddressSpaceList(@Context SecurityContext securityContext, @HeaderParam("Accept") String acceptHeader, @PathParam("namespace") String namespace, @QueryParam("labelSelector") String labelSelector) throws Exception {
return doRequest("Error getting address space list", () -> {
verifyAuthorized(securityContext, namespace, ResourceVerb.list);
Instant now = clock.instant();
if (labelSelector != null) {
Map<String, String> labels = AddressApiHelper.parseLabelSelector(labelSelector);
return Response.ok(formatResponse(acceptHeader, now, removeSecrets(addressSpaceApi.listAddressSpacesWithLabels(namespace, labels)))).build();
} else {
return Response.ok(formatResponse(acceptHeader, now, removeSecrets(addressSpaceApi.listAddressSpaces(namespace)))).build();
}
});
}