package dev.dinauer; import dev.dinauer.service.IngressService; import dev.dinauer.utils.ClientProvider; import io.fabric8.kubernetes.api.model.networking.v1.Ingress; import io.fabric8.kubernetes.client.KubernetesClient; import io.fabric8.kubernetes.client.KubernetesClientBuilder; import io.quarkus.security.Authenticated; import io.smallrye.common.annotation.Blocking; import jakarta.annotation.PostConstruct; import jakarta.inject.Inject; import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; import jakarta.ws.rs.Produces; import jakarta.ws.rs.QueryParam; import jakarta.ws.rs.core.MediaType; import java.util.List; @Path("/ingresses") @Blocking @Authenticated public class IngressResource { @Inject IngressService ingressService; @GET @Produces(MediaType.APPLICATION_JSON) public List getIngresses(@QueryParam("namespace") String namespace) { if(namespace != null) { ingressService.findByNamespace(namespace); } return ingressService.findAll(); } }