6
6
import io .javaoperatorsdk .operator .api .reconciler .dependent .Deleter ;
7
7
import io .javaoperatorsdk .operator .glue .Utils ;
8
8
import io .javaoperatorsdk .operator .glue .customresource .glue .Glue ;
9
+ import io .javaoperatorsdk .operator .glue .customresource .glue .Matcher ;
9
10
import io .javaoperatorsdk .operator .glue .reconciler .glue .GlueReconciler ;
10
11
import io .javaoperatorsdk .operator .glue .templating .GenericTemplateHandler ;
11
12
import io .javaoperatorsdk .operator .processing .GroupVersionKind ;
@@ -23,28 +24,31 @@ public class GenericDependentResource
23
24
private final String desiredTemplate ;
24
25
private final String name ;
25
26
private final boolean clusterScoped ;
27
+ private final Matcher matcher ;
26
28
27
29
// optimize share between instances
28
30
private final GenericTemplateHandler genericTemplateHandler ;
29
31
30
32
public GenericDependentResource (GenericTemplateHandler genericTemplateHandler ,
31
33
GenericKubernetesResource desired , String name ,
32
- boolean clusterScoped ) {
34
+ boolean clusterScoped , Matcher matcher ) {
33
35
super (new GroupVersionKind (desired .getApiVersion (), desired .getKind ()));
34
36
this .desired = desired ;
37
+ this .matcher = matcher ;
35
38
this .desiredTemplate = null ;
36
39
this .name = name ;
37
40
this .clusterScoped = clusterScoped ;
38
41
this .genericTemplateHandler = genericTemplateHandler ;
39
42
}
40
43
41
44
public GenericDependentResource (GenericTemplateHandler genericTemplateHandler ,
42
- String desiredTemplate , String name , boolean clusterScoped ) {
45
+ String desiredTemplate , String name , boolean clusterScoped , Matcher matcher ) {
43
46
super (new GroupVersionKind (Utils .getApiVersionFromTemplate (desiredTemplate ),
44
47
Utils .getKindFromTemplate (desiredTemplate )));
45
48
this .genericTemplateHandler = genericTemplateHandler ;
46
49
this .name = name ;
47
50
this .desiredTemplate = desiredTemplate ;
51
+ this .matcher = matcher ;
48
52
this .desired = null ;
49
53
this .clusterScoped = clusterScoped ;
50
54
}
@@ -75,6 +79,10 @@ public Result<GenericKubernetesResource> match(GenericKubernetesResource actualR
75
79
&& actualResource .getApiVersion ().equals ("apps/v1" )) {
76
80
return super .match (actualResource , primary , context );
77
81
}
78
- return Result .nonComputed (false );
82
+ if (Matcher .SSA .equals (matcher )) {
83
+ return super .match (actualResource , primary , context );
84
+ } else {
85
+ return Result .nonComputed (false );
86
+ }
79
87
}
80
88
}
0 commit comments