99import org .slf4j .LoggerFactory ;
1010
1111import io .fabric8 .kubernetes .api .model .HasMetadata ;
12+ import io .fabric8 .kubernetes .api .model .Namespaced ;
1213import io .fabric8 .kubernetes .client .dsl .Resource ;
1314import io .javaoperatorsdk .operator .OperatorException ;
1415import io .javaoperatorsdk .operator .ReconcilerUtils ;
@@ -38,11 +39,11 @@ public abstract class KubernetesDependentResource<R extends HasMetadata, P exten
3839 private static final Logger log = LoggerFactory .getLogger (KubernetesDependentResource .class );
3940 private final ResourceUpdaterMatcher <R > updaterMatcher ;
4041 private final boolean garbageCollected = this instanceof GarbageCollected ;
42+ private final boolean clustered ;
4143 private KubernetesDependentResourceConfig <R > kubernetesDependentResourceConfig ;
4244
4345 private final boolean usingCustomResourceUpdateMatcher ;
4446
45- @ SuppressWarnings ("unchecked" )
4647 public KubernetesDependentResource (Class <R > resourceType ) {
4748 this (resourceType , null );
4849 }
@@ -55,6 +56,7 @@ public KubernetesDependentResource(Class<R> resourceType, String name) {
5556 updaterMatcher = usingCustomResourceUpdateMatcher
5657 ? (ResourceUpdaterMatcher <R >) this
5758 : GenericResourceUpdaterMatcher .updaterMatcherFor (resourceType );
59+ clustered = Namespaced .class .isAssignableFrom (resourceType );
5860 }
5961
6062 @ SuppressWarnings ("unchecked" )
@@ -93,7 +95,7 @@ private SecondaryToPrimaryMapper<R> getSecondaryToPrimaryMapper() {
9395 if (this instanceof SecondaryToPrimaryMapper ) {
9496 return (SecondaryToPrimaryMapper <R >) this ;
9597 } else if (garbageCollected ) {
96- return Mappers .fromOwnerReferences (false );
98+ return Mappers .fromOwnerReferences (clustered );
9799 } else if (useNonOwnerRefBasedSecondaryToPrimaryMapping ()) {
98100 return Mappers .fromDefaultAnnotations ();
99101 } else {
0 commit comments