8000 fix: unwrap CDI proxies to get the proper class name · Sgitario/java-operator-sdk@7dc1c23 · GitHub
[go: up one dir, main page]

Skip to content

Commit 7dc1c23

Browse files
committed
fix: unwrap CDI proxies to get the proper class name
1 parent ae27837 commit 7dc1c23

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

operator-framework-quarkus-extension/runtime/src/main/java/io/javaoperatorsdk/quarkus/extension/QuarkusConfigurationService.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
11
package io.javaoperatorsdk.quarkus.extension;
22

33
import io.fabric8.kubernetes.client.Config;
4+
import io.fabric8.kubernetes.client.CustomResource;
45
import io.fabric8.kubernetes.client.KubernetesClient;
6+
import io.javaoperatorsdk.operator.api.ResourceController;
57
import io.javaoperatorsdk.operator.api.config.AbstractConfigurationService;
68
import io.javaoperatorsdk.operator.api.config.ControllerConfiguration;
9+
import io.quarkus.arc.runtime.ClientProxyUnwrapper;
710
import java.util.List;
811
import javax.inject.Inject;
912

1013
public class QuarkusConfigurationService extends AbstractConfigurationService {
1114
@Inject KubernetesClient client;
15+
private static final ClientProxyUnwrapper unwrapper = new ClientProxyUnwrapper();
1216

1317
public QuarkusConfigurationService(List<ControllerConfiguration> configurations) {
1418
if (configurations != null && !configurations.isEmpty()) {
@@ -20,4 +24,16 @@ public QuarkusConfigurationService(List<ControllerConfiguration> configurations)
2024
public Config getClientConfiguration() {
2125
return client.getConfiguration();
2226
}
27+
28+
@Override
29+
public <R extends CustomResource> ControllerConfiguration<R> getConfigurationFor(
30+
ResourceController<R> controller) {
31+
final var unwrapped = unwrap(controller);
32+
return super.getConfigurationFor(unwrapped);
33+
}
34+
35+
private static <R extends CustomResource> ResourceController<R> unwrap(
36+
ResourceController<R> controller) {
37+
return (ResourceController<R>) unwrapper.apply(controller);
38+
}
2339
}

0 commit comments

Comments
 (0)
0