Labels { static String getOrValidInstanceLabelValue(String instance) { if (instance == null) { return ""; } int i = Math.min(instance.length(), 63); while (i > 0) { char lastChar = instance.charAt(i - 1); if (lastChar == '.' || lastChar == '-' || lastChar == '_') { i--; } else { break; } } return instance.substring(0, i); } private  Labels(Map<String, String> labels); static String cluster(HasMetadata resource); static String name(HasMetadata resource); Labels withAdditionalLabels(Map<String, String> additionalLabels); static Labels fromResource(HasMetadata resource); static Labels fromMap(Map<String, String> labels); static Labels fromString(String stringLabels); Labels withStrimziKind(String kind); Labels withStrimziCluster(String cluster); Labels withKubernetesName(String name); Labels withKubernetesInstance(String instanceName); Labels withKubernetesPartOf(String instanceName); Labels withKubernetesManagedBy(String operatorName); Labels withStrimziName(String name); Labels withStrimziDiscovery(); Labels withStatefulSetPod(String name); Map<String, String> toMap(); String toSelectorString(); static Labels forStrimziCluster(String cluster); static Labels forStrimziKind(String kind); Labels strimziSelectorLabels(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); static Labels generateDefaultLabels(HasMetadata resource, String applicationName, String managedBy); static final String STRIMZI_DOMAIN; static final String KUBERNETES_DOMAIN; static final String STRIMZI_KIND_LABEL; static final String STRIMZI_CLUSTER_LABEL; static final String STRIMZI_NAME_LABEL; static final String STRIMZI_DISCOVERY_LABEL; static final String KUBERNETES_NAME_LABEL; static final String KUBERNETES_INSTANCE_LABEL; static final String KUBERNETES_PART_OF_LABEL; static final String APPLICATION_NAME; static final String KUBERNETES_MANAGED_BY_LABEL; static final String KUBERNETES_STATEFULSET_POD_LABEL; static final Labels EMPTY; }
@Test public void testValidInstanceNamesAsLabelValues() { assertThat(Labels.getOrValidInstanceLabelValue(null), is("")); assertThat(Labels.getOrValidInstanceLabelValue(""), is("")); assertThat(Labels.getOrValidInstanceLabelValue("valid-label-value"), is("valid-label-value")); assertThat(Labels.getOrValidInstanceLabelValue("too-long-012345678901234567890123456789012345678901234567890123456789"), is("too-long-012345678901234567890123456789012345678901234567890123")); assertThat(Labels.getOrValidInstanceLabelValue("too-long-01234567890123456789012345678901234567890123456789012-456789"), is("too-long-01234567890123456789012345678901234567890123456789012")); assertThat(Labels.getOrValidInstanceLabelValue("too-long-01234567890123456789012345678901234567890123456789.---456789"), is("too-long-01234567890123456789012345678901234567890123456789")); }