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 9471d52cc4..8b03a74807 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 @@ -112,7 +112,6 @@ protected ReconcileResult reconcile(P primary, R actualResource, Context

c @Override public Optional getSecondaryResource(P primary, Context

context) { - var secondaryResources = context.getSecondaryResources(resourceType()); if (secondaryResources.isEmpty()) { return Optional.empty(); diff --git a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentResource.java b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentResource.java index ebd6089aa7..f25ca7def3 100644 --- a/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentResource.java +++ b/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentResource.java @@ -1,9 +1,7 @@ package io.javaoperatorsdk.operator.processing.dependent.kubernetes; import java.util.Map; -import java.util.Objects; import java.util.Optional; -import java.util.Set; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -264,17 +262,9 @@ protected void addSecondaryToPrimaryMapperAnnotations( } @Override - protected Optional selectTargetSecondaryResource( - Set secondaryResources, P primary, Context

context) { - ResourceID managedResourceID = targetSecondaryResourceID(primary, context); - return secondaryResources.stream() - .filter( - r -> - r.getMetadata().getName().equals(managedResourceID.getName()) - && Objects.equals( - r.getMetadata().getNamespace(), - managedResourceID.getNamespace().orElse(null))) - .findFirst(); + public Optional getSecondaryResource(P primary, Context

context) { + final var targetResourceID = targetSecondaryResourceID(primary, context); + return eventSource().flatMap(informer -> informer.get(targetResourceID)); } /**