public abstract class AbstractKubernetesServiceInstanceProvider extends java.lang.Object implements KubernetesServiceInstanceProvider
Modifier and Type | Class and Description |
---|---|
static class |
AbstractKubernetesServiceInstanceProvider.PortBinder
Utility class for transparent access to
V1EndpointPort and V1ServicePort . |
Modifier and Type | Field and Description |
---|---|
protected static org.slf4j.Logger |
LOG |
static java.lang.String |
SECURE_LABEL |
Constructor and Description |
---|
AbstractKubernetesServiceInstanceProvider() |
Modifier and Type | Method and Description |
---|---|
io.micronaut.discovery.ServiceInstance |
buildServiceInstance(java.lang.String serviceId,
AbstractKubernetesServiceInstanceProvider.PortBinder servicePort,
java.lang.String address,
io.kubernetes.client.openapi.models.V1ObjectMeta metadata)
Builds service instance.
|
java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> |
compositePredicate(java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject>... predicates)
Creates composite of predicates.
|
boolean |
hasValidPortConfiguration(java.util.List<AbstractKubernetesServiceInstanceProvider.PortBinder> ports,
KubernetesServiceConfiguration serviceConfiguration)
Validates the necessity of having port configuration based on number of declared
ports . |
boolean |
isMetadataSecure(io.kubernetes.client.openapi.models.V1ObjectMeta objectMeta) |
boolean |
isPortSecure(AbstractKubernetesServiceInstanceProvider.PortBinder servicePort)
Attempts to guess whether this port should be connected to using SSL.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getInstances, getMode
public static final java.lang.String SECURE_LABEL
protected static final org.slf4j.Logger LOG
public AbstractKubernetesServiceInstanceProvider()
public io.micronaut.discovery.ServiceInstance buildServiceInstance(java.lang.String serviceId, @Nullable AbstractKubernetesServiceInstanceProvider.PortBinder servicePort, java.lang.String address, io.kubernetes.client.openapi.models.V1ObjectMeta metadata)
serviceId
- service idservicePort
- servicePortaddress
- addressmetadata
- metadatapublic boolean isPortSecure(AbstractKubernetesServiceInstanceProvider.PortBinder servicePort)
servicePort
- the AbstractKubernetesServiceInstanceProvider.PortBinder
public boolean isMetadataSecure(io.kubernetes.client.openapi.models.V1ObjectMeta objectMeta)
objectMeta
- the V1ObjectMeta
V1ObjectMeta.getLabels()
named SECURE_LABEL
and with value "true";
false otherwisepublic boolean hasValidPortConfiguration(@Nullable java.util.List<AbstractKubernetesServiceInstanceProvider.PortBinder> ports, KubernetesServiceConfiguration serviceConfiguration)
ports
.ports
- list of portsserviceConfiguration
- service configuration@SafeVarargs public final java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> compositePredicate(java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject>... predicates)
predicates
- predicates