🚑 Services for resource types
This commit is contained in:
parent
16dbad150a
commit
4171cc86a3
@ -1,5 +1,6 @@
|
||||
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;
|
||||
@ -20,7 +21,7 @@ import java.util.List;
|
||||
public class IngressResource
|
||||
{
|
||||
@Inject
|
||||
ClientProvider clientProvider;
|
||||
IngressService ingressService;
|
||||
|
||||
@GET
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@ -28,8 +29,8 @@ public class IngressResource
|
||||
{
|
||||
if(namespace != null)
|
||||
{
|
||||
return clientProvider.getClient().network().v1().ingresses().inNamespace(namespace).list().getItems();
|
||||
ingressService.findByNamespace(namespace);
|
||||
}
|
||||
return clientProvider.getClient().network().v1().ingresses().list().getItems();
|
||||
return ingressService.findAll();
|
||||
}
|
||||
}
|
||||
|
||||
@ -42,10 +42,8 @@ public class PodResource
|
||||
{
|
||||
if(namespace != null && !namespace.isBlank())
|
||||
{
|
||||
LOG.info("Retrieving pods from namespace {}", namespace);
|
||||
return podService.findByNamespace(namespace);
|
||||
}
|
||||
LOG.info("Retrieving all pods.");
|
||||
return podService.findAll();
|
||||
}
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package dev.dinauer;
|
||||
|
||||
import dev.dinauer.service.ServiceService;
|
||||
import dev.dinauer.utils.ClientProvider;
|
||||
import io.fabric8.kubernetes.api.model.Pod;
|
||||
import io.fabric8.kubernetes.api.model.Service;
|
||||
@ -26,16 +27,16 @@ import java.util.Optional;
|
||||
public class ServiceResource
|
||||
{
|
||||
@Inject
|
||||
ClientProvider clientProvider;
|
||||
ServiceService serviceService;
|
||||
|
||||
@GET
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public List<Service> getServices(@QueryParam("namespace") Optional<String> namespace)
|
||||
public List<Service> getServices(@QueryParam("namespace") String namespace)
|
||||
{
|
||||
if(namespace.isPresent())
|
||||
if(namespace != null && !namespace.isBlank())
|
||||
{
|
||||
return clientProvider.getClient().services().inNamespace(namespace.get()).list().getItems();
|
||||
return serviceService.findByNamespace(namespace);
|
||||
}
|
||||
return clientProvider.getClient().services().list().getItems();
|
||||
return serviceService.findAll();
|
||||
}
|
||||
}
|
||||
|
||||
34
src/main/java/dev/dinauer/service/IngressService.java
Normal file
34
src/main/java/dev/dinauer/service/IngressService.java
Normal file
@ -0,0 +1,34 @@
|
||||
package dev.dinauer.service;
|
||||
|
||||
import dev.dinauer.utils.ClientProvider;
|
||||
import io.fabric8.kubernetes.api.model.Pod;
|
||||
import io.fabric8.kubernetes.api.model.networking.v1.Ingress;
|
||||
import io.fabric8.kubernetes.client.dsl.NetworkAPIGroupDSL;
|
||||
import io.fabric8.kubernetes.client.impl.NetworkAPIGroupClient;
|
||||
import jakarta.enterprise.context.ApplicationScoped;
|
||||
import jakarta.inject.Inject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ApplicationScoped
|
||||
public class IngressService
|
||||
{
|
||||
@Inject
|
||||
ClientProvider clientProvider;
|
||||
|
||||
public List<Ingress> findByNamespace(String namespace)
|
||||
{
|
||||
try(NetworkAPIGroupDSL dsl = clientProvider.getClient().network())
|
||||
{
|
||||
return dsl.v1().ingresses().inNamespace(namespace).list().getItems();
|
||||
}
|
||||
}
|
||||
|
||||
public List<Ingress> findAll()
|
||||
{
|
||||
try(NetworkAPIGroupDSL dsl = clientProvider.getClient().network())
|
||||
{
|
||||
return dsl.v1().ingresses().inAnyNamespace().list().getItems();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,6 +1,7 @@
|
||||
package dev.dinauer.service;
|
||||
|
||||
import dev.dinauer.utils.ClientProvider;
|
||||
import io.fabric8.kubernetes.api.model.Pod;
|
||||
import io.fabric8.kubernetes.api.model.Service;
|
||||
import io.fabric8.kubernetes.client.KubernetesClient;
|
||||
import io.fabric8.kubernetes.client.KubernetesClientBuilder;
|
||||
@ -8,6 +9,7 @@ import jakarta.annotation.PostConstruct;
|
||||
import jakarta.enterprise.context.ApplicationScoped;
|
||||
import jakarta.inject.Inject;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
@ApplicationScoped
|
||||
@ -16,6 +18,16 @@ public class ServiceService
|
||||
@Inject
|
||||
ClientProvider clientProvider;
|
||||
|
||||
public List<Service> findByNamespace(String namespace)
|
||||
{
|
||||
return clientProvider.getClient().services().inNamespace(namespace).list().getItems();
|
||||
}
|
||||
|
||||
public List<Service> findAll()
|
||||
{
|
||||
return clientProvider.getClient().services().inAnyNamespace().list().getItems();
|
||||
}
|
||||
|
||||
public Optional<Service> findById(String id)
|
||||
{
|
||||
for(Service service : clientProvider.getClient().services().list().getItems())
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user