|
5 | 5 | import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.getVersion;
|
6 | 6 | import static io.javaoperatorsdk.operator.processing.KubernetesResourceUtils.markedForDeletion;
|
7 | 7 |
|
| 8 | +import io.fabric8.kubernetes.api.model.KubernetesResourceList; |
8 | 9 | import io.fabric8.kubernetes.client.CustomResource;
|
9 | 10 | import io.fabric8.kubernetes.client.dsl.MixedOperation;
|
10 | 11 | import io.fabric8.kubernetes.client.dsl.Resource;
|
@@ -189,23 +190,24 @@ private void addFinalizerIfNotPresent(CustomResource resource) {
|
189 | 190 | }
|
190 | 191 |
|
191 | 192 | // created to support unit testing
|
192 |
| - public static class CustomResourceFacade { |
| 193 | + public static class CustomResourceFacade<R extends CustomResource> { |
193 | 194 |
|
194 |
| - private final MixedOperation<?, ?, Resource<CustomResource>> resourceOperation; |
| 195 | + private final MixedOperation<R, KubernetesResourceList<R>, Resource<R>> resourceOperation; |
195 | 196 |
|
196 |
| - public CustomResourceFacade(MixedOperation<?, ?, Resource<CustomResource>> resourceOperation) { |
| 197 | + public CustomResourceFacade( |
| 198 | + MixedOperation<R, KubernetesResourceList<R>, Resource<R>> resourceOperation) { |
197 | 199 | this.resourceOperation = resourceOperation;
|
198 | 200 | }
|
199 | 201 |
|
200 |
| - public CustomResource updateStatus(CustomResource resource) { |
| 202 | + public R updateStatus(R resource) { |
201 | 203 | log.trace("Updating status for resource: {}", resource);
|
202 | 204 | return resourceOperation
|
203 | 205 | .inNamespace(resource.getMetadata().getNamespace())
|
204 | 206 | .withName(resource.getMetadata().getName())
|
205 | 207 | .updateStatus(resource);
|
206 | 208 | }
|
207 | 209 |
|
208 |
| - public CustomResource replaceWithLock(CustomResource resource) { |
| 210 | + public R replaceWithLock(R resource) { |
209 | 211 | return resourceOperation
|
210 | 212 | .inNamespace(resource.getMetadata().getNamespace())
|
211 | 213 | .withName(resource.getMetadata().getName())
|
|
0 commit comments