diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/MDCUtils.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/MDCUtils.java index 2a9f878f26..e26df4d5a9 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/MDCUtils.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/MDCUtils.java @@ -14,10 +14,11 @@ public class MDCUtils { private static final String RESOURCE_VERSION = "resource.resourceVersion"; private static final String GENERATION = "resource.generation"; private static final String UID = "resource.uid"; + private static final String NO_NAMESPACE = "no namespace"; public static void addResourceIDInfo(ResourceID resourceID) { MDC.put(NAME, resourceID.getName()); - MDC.put(NAMESPACE, resourceID.getNamespace().orElse("no namespace")); + MDC.put(NAMESPACE, resourceID.getNamespace().orElse(NO_NAMESPACE)); } public static void removeResourceIDInfo() { diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/AbstractDependentResource.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/AbstractDependentResource.java index 7a32938403..64d877a563 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/AbstractDependentResource.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/AbstractDependentResource.java @@ -66,7 +66,7 @@ protected ReconcileResult reconcile(P primary, R actualResource, Context

c if (updatable) { final Matcher.Result match = match(actualResource, primary, context); if (!match.matched()) { - final var desired = match.computedDesired().orElse(desired(primary, context)); + final var desired = match.computedDesired().orElseGet(() -> desired(primary, context)); throwIfNull(desired, primary, "Desired"); logForOperation("Updating", primary, desired); var updatedResource = handleUpdate(actualResource, desired, primary, context); @@ -125,7 +125,7 @@ protected R handleCreate(R desired, P primary, Context

context) { * @param primary the {@link ResourceID} of the primary resource associated with the newly created * resource * @param created the newly created resource - * @param context + * @param context the context in which this operation is called */ protected abstract void onCreated(P primary, R created, Context

context); @@ -136,7 +136,7 @@ protected R handleCreate(R desired, P primary, Context

context) { * resource * @param updated the updated resource * @param actual the resource as it was before the update - * @param context + * @param context the context in which this operation is called */ protected abstract void onUpdated(P primary, R updated, R actual, Context

context); diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/EventProcessor.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/EventProcessor.java index a75f51f981..8709589c66 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/EventProcessor.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/EventProcessor.java @@ -89,7 +89,7 @@ private EventProcessor( .map(c -> Map.of( Constants.RESOURCE_GVK_KEY, c.getAssociatedGroupVersionKind(), Constants.CONTROLLER_NAME, controllerConfiguration.getName())) - .orElse(new HashMap<>()); + .orElseGet(HashMap::new); } @Override diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/source/informer/Mappers.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/source/informer/Mappers.java index a37f404f94..5764e5f888 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/source/informer/Mappers.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/event/source/informer/Mappers.java @@ -20,13 +20,14 @@ public static SecondaryToPrimaryMapper fromAnnotation return fromMetadata(nameKey, null, false); } + @SuppressWarnings("unused") public static SecondaryToPrimaryMapper fromAnnotation( String nameKey, String namespaceKey) { return fromMetadata(nameKey, namespaceKey, false); } - public static SecondaryToPrimaryMapper fromLabel( - String nameKey) { + @SuppressWarnings("unused") + public static SecondaryToPrimaryMapper fromLabel(String nameKey) { return fromMetadata(nameKey, null, true); } @@ -34,6 +35,7 @@ public static SecondaryToPrimaryMapper fromDefaultAnn return fromMetadata(DEFAULT_ANNOTATION_FOR_NAME, DEFAULT_ANNOTATION_FOR_NAMESPACE, false); } + @SuppressWarnings("unused") public static SecondaryToPrimaryMapper fromLabel( String nameKey, String namespaceKey) { return fromMetadata(nameKey, namespaceKey, true); @@ -41,7 +43,7 @@ public static SecondaryToPrimaryMapper fromLabel( public static SecondaryToPrimaryMapper fromOwnerReference() { return resource -> ResourceID.fromFirstOwnerReference(resource).map(Set::of) - .orElse(Collections.emptySet()); + .orElseGet(Collections::emptySet); } private static SecondaryToPrimaryMapper fromMetadata( diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalStateReconciler.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalStateReconciler.java index 333522eb99..e2efb32999 100644 --- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalStateReconciler.java +++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalStateReconciler.java @@ -10,7 +10,14 @@ import io.fabric8.kubernetes.api.model.ObjectMetaBuilder; import io.fabric8.kubernetes.client.KubernetesClient; import io.javaoperatorsdk.operator.api.config.informer.InformerConfiguration; -import io.javaoperatorsdk.operator.api.reconciler.*; +import io.javaoperatorsdk.operator.api.reconciler.Cleaner; +import io.javaoperatorsdk.operator.api.reconciler.Context; +import io.javaoperatorsdk.operator.api.reconciler.ControllerConfiguration; +import io.javaoperatorsdk.operator.api.reconciler.DeleteControl; +import io.javaoperatorsdk.operator.api.reconciler.EventSourceContext; +import io.javaoperatorsdk.operator.api.reconciler.EventSourceInitializer; +import io.javaoperatorsdk.operator.api.reconciler.Reconciler; +import io.javaoperatorsdk.operator.api.reconciler.UpdateControl; import io.javaoperatorsdk.operator.junit.KubernetesClientAware; import io.javaoperatorsdk.operator.processing.event.ResourceID; import io.javaoperatorsdk.operator.processing.event.source.EventSource; @@ -89,9 +96,7 @@ private void createExternalResource(ExternalStateCustomResource resource) { public DeleteControl cleanup(ExternalStateCustomResource resource, Context context) { var externalResource = context.getSecondaryResource(ExternalResource.class); - externalResource.ifPresent(er -> { - externalService.delete(er.getId()); - }); + externalResource.ifPresent(er -> externalService.delete(er.getId())); client.configMaps().inNamespace(resource.getMetadata().getNamespace()) .withName(resource.getMetadata().getName()).delete(); return DeleteControl.defaultDelete(); @@ -116,7 +121,7 @@ public Map prepareEventSources( } var id = configMap.getData().get(ID_KEY); var externalResource = externalService.read(id); - return externalResource.map(Set::of).orElse(Collections.emptySet()); + return externalResource.map(Set::of).orElseGet(Collections::emptySet); }, context.getPrimaryCache(), 300L, ExternalResource.class); return EventSourceInitializer.nameEventSources(configMapEventSource, diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalWithStateDependentResource.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalWithStateDependentResource.java index 6d2aa79ab3..c25113b406 100644 --- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalWithStateDependentResource.java +++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/externalstate/ExternalWithStateDependentResource.java @@ -40,8 +40,8 @@ public Set fetchResources( return configMapOptional.map(configMap -> { var id = configMap.getData().get(ID_KEY); var externalResource = externalService.read(id); - return externalResource.map(Set::of).orElse(Collections.emptySet()); - }).orElse(Collections.emptySet()); + return externalResource.map(Set::of).orElseGet(Collections::emptySet); + }).orElseGet(Collections::emptySet); } @Override diff --git a/sample-operators/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/dependent/SchemaDependentResource.java b/sample-operators/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/dependent/SchemaDependentResource.java index d7ee5d368f..77d8932e58 100644 --- a/sample-operators/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/dependent/SchemaDependentResource.java +++ b/sample-operators/mysql-schema/src/main/java/io/javaoperatorsdk/operator/sample/dependent/SchemaDependentResource.java @@ -108,7 +108,7 @@ public static String decode(String value) { public Set fetchResources(MySQLSchema primaryResource) { try (Connection connection = getConnection()) { return SchemaService.getSchema(connection, primaryResource.getMetadata().getName()) - .map(Set::of).orElse(Collections.emptySet()); + .map(Set::of).orElseGet(Collections::emptySet); } catch (SQLException e) { throw new RuntimeException("Error while trying read Schema", e); } @@ -123,7 +123,7 @@ public ResourcePollerConfig configFrom(SchemaConfig configAnnotation, Class originatingClass) { if (configAnnotation != null) { return new ResourcePollerConfig(configAnnotation.pollPeriod(), - new MySQLDbConfig(configAnnotation.host(), "" + configAnnotation.port(), + new MySQLDbConfig(configAnnotation.host(), String.valueOf(configAnnotation.port()), configAnnotation.user(), configAnnotation.password())); } return new ResourcePollerConfig(SchemaConfig.DEFAULT_POLL_PERIOD,