Skip to content

Commit bd18204

Browse files
committed
remove getPrimaryResourceType
Signed-off-by: Attila Mészáros <csviri@gmail.com>
1 parent f7497ff commit bd18204

File tree

7 files changed

+18
-108
lines changed

7 files changed

+18
-108
lines changed

docs/documentation/v5-0-migration.md

Lines changed: 0 additions & 65 deletions
This file was deleted.

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/dependent/kubernetes/GenericKubernetesDependentResource.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
import io.fabric8.kubernetes.api.model.GenericKubernetesResource;
44
import io.fabric8.kubernetes.api.model.HasMetadata;
5-
import io.javaoperatorsdk.operator.api.config.Utils;
65
import io.javaoperatorsdk.operator.api.config.informer.InformerConfiguration;
6+
import io.javaoperatorsdk.operator.api.reconciler.EventSourceContext;
77
import io.javaoperatorsdk.operator.processing.GroupVersionKind;
88

99
public class GenericKubernetesDependentResource<P extends HasMetadata>
@@ -16,15 +16,12 @@ public GenericKubernetesDependentResource(GroupVersionKind groupVersionKind) {
1616
this.groupVersionKind = groupVersionKind;
1717
}
1818

19-
protected InformerConfiguration.InformerConfigurationBuilder<GenericKubernetesResource> informerConfigurationBuilder() {
20-
return InformerConfiguration.from(groupVersionKind, getPrimaryResourceType());
19+
protected InformerConfiguration.InformerConfigurationBuilder<GenericKubernetesResource> informerConfigurationBuilder(
20+
EventSourceContext<P> context) {
21+
return InformerConfiguration.from(groupVersionKind, context.getPrimaryResourceClass());
2122
}
2223

23-
@SuppressWarnings("unchecked")
24-
@Override
25-
public Class<P> getPrimaryResourceType() {
26-
return (Class<P>) Utils.getFirstTypeArgumentFromExtendedClass(getClass());
27-
}
24+
2825

2926
@SuppressWarnings("unused")
3027
public GroupVersionKind getGroupVersionKind() {

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

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import io.fabric8.kubernetes.api.model.Namespaced;
1313
import io.fabric8.kubernetes.client.dsl.Resource;
1414
import io.javaoperatorsdk.operator.ReconcilerUtils;
15-
import io.javaoperatorsdk.operator.api.config.Utils;
1615
import io.javaoperatorsdk.operator.api.config.dependent.Configured;
1716
import io.javaoperatorsdk.operator.api.config.informer.InformerConfiguration;
1817
import io.javaoperatorsdk.operator.api.reconciler.Context;
@@ -53,11 +52,6 @@ public KubernetesDependentResource(Class<R> resourceType, String name) {
5352
super(resourceType, name);
5453
}
5554

56-
@SuppressWarnings("unchecked")
57-
public Class<P> getPrimaryResourceType() {
58-
return (Class<P>) Utils.getTypeArgumentFromExtendedClassByIndex(getClass(), 1);
59-
}
60-
6155
@Override
6256
public void configureWith(KubernetesDependentResourceConfig<R> config) {
6357
this.kubernetesDependentResourceConfig = config;
@@ -210,21 +204,22 @@ protected InformerEventSource<R, P> createEventSource(EventSourceContext<P> cont
210204
if (kubernetesDependentResourceConfig != null
211205
&& kubernetesDependentResourceConfig.informerConfig() != null) {
212206

213-
var configBuilder = informerConfigurationBuilder();
207+
var configBuilder = informerConfigurationBuilder(context);
214208
kubernetesDependentResourceConfig.informerConfig().updateInformerConfigBuilder(configBuilder);
215209

216210
if (kubernetesDependentResourceConfig.informerConfig().getName() == null) {
217211
configBuilder.withName(name());
218212
} else {
219213
configBuilder.withName(kubernetesDependentResourceConfig.informerConfig().getName());
220214
}
221-
configBuilder.withSecondaryToPrimaryMapper(getSecondaryToPrimaryMapper().orElseThrow());
215+
configBuilder
216+
.withSecondaryToPrimaryMapper(getSecondaryToPrimaryMapper(context).orElseThrow());
222217
config = configBuilder.build();
223218
} else {
224-
config = informerConfigurationBuilder()
219+
config = informerConfigurationBuilder(context)
225220
.withName(name())
226221
.withSecondaryToPrimaryMapper(
227-
getSecondaryToPrimaryMapper().orElseThrow())
222+
getSecondaryToPrimaryMapper(context).orElseThrow())
228223
.build();
229224
}
230225
var es = new InformerEventSource<>(config, context);
@@ -235,8 +230,9 @@ protected InformerEventSource<R, P> createEventSource(EventSourceContext<P> cont
235230
/**
236231
* To handle {@link io.fabric8.kubernetes.api.model.GenericKubernetesResource} based dependents.
237232
*/
238-
protected InformerConfiguration.InformerConfigurationBuilder<R> informerConfigurationBuilder() {
239-
return InformerConfiguration.from(resourceType(), getPrimaryResourceType());
233+
protected InformerConfiguration.InformerConfigurationBuilder<R> informerConfigurationBuilder(
234+
EventSourceContext<P> context) {
235+
return InformerConfiguration.from(resourceType(), context.getPrimaryResourceClass());
240236
}
241237

242238
private boolean useNonOwnerRefBasedSecondaryToPrimaryMapping() {
@@ -301,13 +297,15 @@ public boolean isDeletable() {
301297
}
302298

303299
@SuppressWarnings("unchecked")
304-
protected Optional<SecondaryToPrimaryMapper<R>> getSecondaryToPrimaryMapper() {
300+
protected Optional<SecondaryToPrimaryMapper<R>> getSecondaryToPrimaryMapper(
301+
EventSourceContext<P> context) {
305302
if (this instanceof SecondaryToPrimaryMapper<?>) {
306303
return Optional.of((SecondaryToPrimaryMapper<R>) this);
307304
} else {
308-
var clustered = !Namespaced.class.isAssignableFrom(getPrimaryResourceType());
305+
var clustered = !Namespaced.class.isAssignableFrom(context.getPrimaryResourceClass());
309306
if (garbageCollected) {
310-
return Optional.of(Mappers.fromOwnerReferences(getPrimaryResourceType(), clustered));
307+
return Optional
308+
.of(Mappers.fromOwnerReferences(context.getPrimaryResourceClass(), clustered));
311309
} else if (isCreatable()) {
312310
return Optional.of(Mappers.fromDefaultAnnotations());
313311
}

operator-framework-core/src/test/java/io/javaoperatorsdk/operator/processing/dependent/workflow/AbstractWorkflowExecutorTest.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,6 @@ public TestDependent(String name) {
4545
super(ConfigMap.class, name);
4646
}
4747

48-
@Override
49-
public Class<TestCustomResource> getPrimaryResourceType() {
50-
return TestCustomResource.class;
51-
}
52-
5348
@Override
5449
public ReconcileResult<ConfigMap> reconcile(TestCustomResource primary,
5550
Context<TestCustomResource> context) {

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/bulkdependent/ConfigMapDeleterBulkDependentResource.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,6 @@ public ConfigMapDeleterBulkDependentResource() {
2828
super(ConfigMap.class);
2929
}
3030

31-
@Override
32-
public Class<BulkDependentTestCustomResource> getPrimaryResourceType() {
33-
return BulkDependentTestCustomResource.class;
34-
}
35-
3631
@Override
3732
public Map<String, ConfigMap> desiredResources(BulkDependentTestCustomResource primary,
3833
Context<BulkDependentTestCustomResource> context) {

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/bulkdependent/readonly/ReadOnlyBulkDependentResource.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,6 @@ public ReadOnlyBulkDependentResource() {
2929
super(ConfigMap.class);
3030
}
3131

32-
@Override
33-
public Class<BulkDependentTestCustomResource> getPrimaryResourceType() {
34-
return BulkDependentTestCustomResource.class;
35-
}
36-
3732
@Override
3833
public Map<String, ConfigMap> getSecondaryResources(BulkDependentTestCustomResource primary,
3934
Context<BulkDependentTestCustomResource> context) {

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/complexdependent/dependent/BaseDependentResource.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,6 @@ public BaseDependentResource(Class<R> resourceType, String component) {
1616
this.component = component;
1717
}
1818

19-
@Override
20-
public Class<ComplexDependentCustomResource> getPrimaryResourceType() {
21-
return ComplexDependentCustomResource.class;
22-
}
23-
2419
protected String name(ComplexDependentCustomResource primary) {
2520
return String.format("%s-%s", component, primary.getSpec().getProjectId());
2621
}

0 commit comments

Comments
 (0)