Skip to content

Commit 67c232b

Browse files
committed
refactor: encapsulate Boolean conversion logic
1 parent 3266dd2 commit 67c232b

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

Diff for: operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/BooleanWithUndefined.java

+12-1
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,16 @@
44
* A replacement for {@link Boolean}, which can't be used in annotations.
55
*/
66
public enum BooleanWithUndefined {
7-
TRUE, FALSE, UNDEFINED
7+
TRUE, FALSE, UNDEFINED;
8+
9+
Boolean asBoolean() {
10+
switch (this) {
11+
case TRUE:
12+
return Boolean.TRUE;
13+
case FALSE:
14+
return Boolean.FALSE;
15+
default:
16+
return null;
17+
}
18+
}
819
}

Diff for: operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentConverter.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,7 @@ public KubernetesDependentResourceConfig<R> configFrom(KubernetesDependent confi
5959
context);
6060
createResourceOnlyIfNotExistingWithSSA =
6161
configAnnotation.createResourceOnlyIfNotExistingWithSSA();
62-
useSSA = configAnnotation.useSSA() == BooleanWithUndefined.UNDEFINED ? null
63-
: configAnnotation.useSSA() == BooleanWithUndefined.TRUE;
62+
useSSA = configAnnotation.useSSA().asBoolean();
6463
}
6564

6665
return new KubernetesDependentResourceConfig(namespaces, labelSelector, configuredNS,

Diff for: operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/KubernetesDependentResource.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,8 @@ protected void addMetadata(boolean forMatch, R actualResource, final R target, P
190190
}
191191

192192
private boolean useSSA(Context<P> context) {
193-
Optional<Boolean> useSSAConfig = configuration().flatMap(KubernetesDependentResourceConfig::useSSA);
193+
Optional<Boolean> useSSAConfig =
194+
configuration().flatMap(KubernetesDependentResourceConfig::useSSA);
194195
return useSSAConfig.orElse(context.getControllerConfiguration().getConfigurationService()
195196
.ssaBasedCreateUpdateMatchForDependentResources());
196197
}
@@ -207,6 +208,7 @@ public void deleteTargetResource(P primary, R resource, String key, Context<P> c
207208
client.resource(resource).delete();
208209
}
209210

211+
@SuppressWarnings("unused")
210212
protected Resource<R> prepare(R desired, P primary, String actionName) {
211213
log.debug("{} target resource with type: {}, with id: {}",
212214
actionName,

0 commit comments

Comments
 (0)