9
9
import org .slf4j .LoggerFactory ;
10
10
11
11
import io .fabric8 .kubernetes .api .model .HasMetadata ;
12
+ import io .fabric8 .kubernetes .api .model .Namespaced ;
12
13
import io .fabric8 .kubernetes .client .dsl .Resource ;
13
14
import io .javaoperatorsdk .operator .OperatorException ;
14
15
import io .javaoperatorsdk .operator .ReconcilerUtils ;
@@ -38,11 +39,11 @@ public abstract class KubernetesDependentResource<R extends HasMetadata, P exten
38
39
private static final Logger log = LoggerFactory .getLogger (KubernetesDependentResource .class );
39
40
private final ResourceUpdaterMatcher <R > updaterMatcher ;
40
41
private final boolean garbageCollected = this instanceof GarbageCollected ;
42
+ private final boolean clustered ;
41
43
private KubernetesDependentResourceConfig <R > kubernetesDependentResourceConfig ;
42
44
43
45
private final boolean usingCustomResourceUpdateMatcher ;
44
46
45
- @ SuppressWarnings ("unchecked" )
46
47
public KubernetesDependentResource (Class <R > resourceType ) {
47
48
this (resourceType , null );
48
49
}
@@ -55,6 +56,7 @@ public KubernetesDependentResource(Class<R> resourceType, String name) {
55
56
updaterMatcher = usingCustomResourceUpdateMatcher
56
57
? (ResourceUpdaterMatcher <R >) this
57
58
: GenericResourceUpdaterMatcher .updaterMatcherFor (resourceType );
59
+ clustered = !Namespaced .class .isAssignableFrom (resourceType );
58
60
}
59
61
60
62
@ SuppressWarnings ("unchecked" )
@@ -93,7 +95,7 @@ private SecondaryToPrimaryMapper<R> getSecondaryToPrimaryMapper() {
93
95
if (this instanceof SecondaryToPrimaryMapper ) {
94
96
return (SecondaryToPrimaryMapper <R >) this ;
95
97
} else if (garbageCollected ) {
96
- return Mappers .fromOwnerReferences (false );
98
+ return Mappers .fromOwnerReferences (clustered );
97
99
} else if (useNonOwnerRefBasedSecondaryToPrimaryMapping ()) {
98
100
return Mappers .fromDefaultAnnotations ();
99
101
} else {
0 commit comments