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 |
|---|---|
static 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.
|
static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> |
compositePredicate(java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject>... predicates)
Creates composite of predicates.
|
protected static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> |
discoveryConfigurationFilter(KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration)
Creates filter predicate for Kubernetes objects based on provided
KubernetesConfiguration.KubernetesDiscoveryConfiguration. |
static boolean |
hasValidPortConfiguration(java.util.List<AbstractKubernetesServiceInstanceProvider.PortBinder> ports,
KubernetesServiceConfiguration serviceConfiguration)
Validates the necessity of having port configuration based on number of declared
ports. |
static boolean |
isMetadataSecure(io.kubernetes.client.openapi.models.V1ObjectMeta objectMeta) |
static boolean |
isPortSecure(AbstractKubernetesServiceInstanceProvider.PortBinder servicePort)
Attempts to guess whether this port should be connected to using SSL.
|
protected static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> |
serviceConfigurationDiscoveryFilter(KubernetesServiceConfiguration serviceConfiguration,
KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration)
Creates service specific filter based on
KubernetesServiceConfiguration. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetInstances, getMode, getServiceIdspublic static final java.lang.String SECURE_LABEL
protected static final org.slf4j.Logger LOG
public AbstractKubernetesServiceInstanceProvider()
protected static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> discoveryConfigurationFilter(KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration)
KubernetesConfiguration.KubernetesDiscoveryConfiguration.discoveryConfiguration - configurationprotected static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> serviceConfigurationDiscoveryFilter(KubernetesServiceConfiguration serviceConfiguration, KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration)
KubernetesServiceConfiguration.serviceConfiguration - service configurationdiscoveryConfiguration - discovery configurationpublic static 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 static boolean isPortSecure(AbstractKubernetesServiceInstanceProvider.PortBinder servicePort)
servicePort - the AbstractKubernetesServiceInstanceProvider.PortBinderpublic static boolean isMetadataSecure(io.kubernetes.client.openapi.models.V1ObjectMeta objectMeta)
objectMeta - the V1ObjectMetaV1ObjectMeta.getLabels() named SECURE_LABEL and with value "true";
false otherwisepublic static boolean hasValidPortConfiguration(@Nullable
java.util.List<AbstractKubernetesServiceInstanceProvider.PortBinder> ports,
KubernetesServiceConfiguration serviceConfiguration)
ports.ports - list of portsserviceConfiguration - service configuration@SafeVarargs public static java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject> compositePredicate(java.util.function.Predicate<io.kubernetes.client.common.KubernetesObject>... predicates)
predicates - predicates