Skip to content

Commit 28a133d

Browse files
fix: invoke ConfigurationServiceOverrider consumer only once in Operator constructor (#3353)
Signed-off-by: Dennis-Mircea Ciupitu <dennis.mircea.ciupitu@gmail.com>
1 parent 4258c20 commit 28a133d

1 file changed

Lines changed: 3 additions & 14 deletions

File tree

  • operator-framework-core/src/main/java/io/javaoperatorsdk/operator

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/Operator.java

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -122,21 +122,10 @@ private void init(ConfigurationService configurationService, boolean allowDeferr
122122
*/
123123
protected ConfigurationService initConfigurationService(
124124
KubernetesClient client, Consumer<ConfigurationServiceOverrider> overrider) {
125-
// initialize the client if the user didn't provide one
126-
if (client == null) {
127-
var configurationService = ConfigurationService.newOverriddenConfigurationService(overrider);
128-
client = configurationService.getKubernetesClient();
125+
if (client != null) {
126+
Consumer<ConfigurationServiceOverrider> bindClient = o -> o.withKubernetesClient(client);
127+
overrider = overrider == null ? bindClient : overrider.andThen(bindClient);
129128
}
130-
131-
final var kubernetesClient = client;
132-
133-
// override the configuration service to use the same client
134-
if (overrider != null) {
135-
overrider = overrider.andThen(o -> o.withKubernetesClient(kubernetesClient));
136-
} else {
137-
overrider = o -> o.withKubernetesClient(kubernetesClient);
138-
}
139-
140129
return ConfigurationService.newOverriddenConfigurationService(overrider);
141130
}
142131

0 commit comments

Comments
 (0)