8000 Use crdName as finalizerName · rguillens/java-operator-sdk@50808bf · GitHub
[go: up one dir, main page]

Skip to content

Commit 50808bf

Browse files
author
Soroosh Sarabadani
committed
Use crdName as finalizerName
1 parent a8d8e6c commit 50808bf

File tree

4 files changed

+17
-22
lines changed

4 files changed

+17
-22
lines changed

operator-framework/src/main/java/io/javaoperatorsdk/operator/ControllerUtils.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,16 +26,11 @@ public class ControllerUtils {
2626

2727
static String getFinalizer(ResourceController controller) {
2828
final String annotationFinalizerName = getAnnotation(controller).finalizerName();
29-
final String finalizerName;
30-
if (Controller.NULL.equals(annotationFinalizerName)) {
31-
finalizerName = controller.getDefaultFinalizerName();
32-
if (finalizerName == null) {
33-
throw new IllegalStateException("Controller annotation cannot be used on Local, Anonymous or Hidden classes");
34-
}
35-
} else {
36-
finalizerName = annotationFinalizerName;
29+
if (!Controller.NULL.equals(annotationFinalizerName)) {
30+
return annotationFinalizerName;
3731
}
38-
return finalizerName;
32+
final String crdName = getAnnotation(controller).crdName();
33+
return crdName;
3934
}
4035

4136
static boolean getGenerationEventProcessing(ResourceController controller) {

operator-framework/src/test/java/io/javaoperatorsdk/operator/EventDispatcherTest.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,16 @@
2020

2121
class EventDispatcherTest {
2222

23+
public static final String FINALIZER_NAME = "finalizer";
2324
private CustomResource testCustomResource;
2425
private EventDispatcher eventDispatcher;
25-
private ResourceController<CustomResource> controller = mock(ResourceController.class);
26-
private EventDispatcher.CustomResourceFacade customResourceFacade = mock(EventDispatcher.CustomResourceFacade.class);
26+
private final ResourceController<CustomResource> controller = mock(ResourceController.class);
27+
private final EventDispatcher.CustomResourceFacade customResourceFacade = mock(EventDispatcher.CustomResourceFacade.class);
2728

2829
@BeforeEach
2930
void setup() {
3031
eventDispatcher = new EventDispatcher(controller,
31-
controller.getDefaultFinalizerName(), customResourceFacade, false);
32+
FINALIZER_NAME, customResourceFacade, false);
3233

3334
testCustomResource = getResource();
3435

@@ -45,7 +46,7 @@ void callCreateOrUpdateOnNewResource() {
4546

4647
@Test
4748
void updatesOnlyStatusSubResource() {
48-
testCustomResource.getMetadata().getFinalizers().add(controller.getDefaultFinalizerName());
49+
testCustomResource.getMetadata().getFinalizers().add(FINALIZER_NAME);
4950
when(controller.createOrUpdateResource(eq(testCustomResource), any()))
5051
.thenReturn(UpdateControl.updateStatusSubResource(testCustomResource));
5152

@@ -67,13 +68,13 @@ void adsDefaultFinalizerOnCreateIfNotThere() {
6768
eventDispatcher.handleEvent(customResourceEvent(Watcher.Action.MODIFIED, testCustomResource));
6869
verify(controller, times(1))
6970
.createOrUpdateResource(argThat(testCustomResource ->
70-
testCustomResource.getMetadata().getFinalizers().contains(controller.getDefaultFinalizerName())), any());
71+
testCustomResource.getMetadata().getFinalizers().contains(FINALIZER_NAME)), any());
7172
}
7273

7374
@Test
7475
void callsDeleteIfObjectHasFinalizerAndMarkedForDelete() {
7576
testCustomResource.getMetadata().setDeletionTimestamp("2019-8-10");
76-
testCustomResource.getMetadata().getFinalizers().add(controller.getDefaultFinalizerName());
77+
testCustomResource.getMetadata().getFinalizers().add(FINALIZER_NAME);
7778

7879
eventDispatcher.handleEvent(customResourceEvent(Watcher.Action.MODIFIED, testCustomResource));
7980

@@ -172,9 +173,8 @@ void doesNotMarkNewGenerationInCaseOfException() {
172173
.thenThrow(new IllegalStateException("Exception for testing purposes"))
173174
.thenReturn(UpdateControl.noUpdate());
174175

175-
Assertions.assertThrows(IllegalStateException.class, () -> {
176-
eventDispatcher.handleEvent(customResourceEvent(Watcher.Action.MODIFIED, testCustomResource));
177-
});
176+
Assertions.assertThrows(IllegalStateException.class, () ->
177+
eventDispatcher.handleEvent(customResourceEvent(Watcher.Action.MODIFIED, testCustomResource)));
178178
eventDispatcher.handleEvent(customResourceEvent(Watcher.Action.MODIFIED, testCustomResource));
179179

180180
verify(controller, times(2)).createOrUpdateResource(eq(testCustomResource), any());
@@ -183,7 +183,7 @@ void doesNotMarkNewGenerationInCaseOfException() {
183183

184184
void generationAwareMode() {
185185
eventDispatcher = new EventDispatcher(controller,
186-
controller.getDefaultFinalizerName(), customResourceFacade, true);
186+
FINALIZER_NAME, customResourceFacade, true);
187187
}
188188

189189
private void markForDeletion(CustomResource customResource) {
@@ -202,7 +202,7 @@ CustomResource getResource() {
202202
.withDeletionGracePeriodSeconds(10L)
203203
.withGeneration(10L)
204204
.withName("name")
205-
.withFinalizers(controller.getDefaultFinalizerName())
205+
.withFinalizers(FINALIZER_NAME)
206206
.withNamespace("namespace")
207207
.withResourceVersion("resourceVersion")
208208< 629A /td>
.withSelfLink("selfLink")

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/TestCustomResourceController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public boolean deleteResource(TestCustomResource resource, Context<TestCustomRes
5555
public UpdateControl<TestCustomResource> createOrUpdateResource(TestCustomResource resource,
5656
Context<TestCustomResource> context) {
5757
numberOfExecutions.addAndGet(1);
58-
if (!resource.getMetadata().getFinalizers().contains(this.getDefaultFinalizerName())) {
58+
if (!resource.getMetadata().getFinalizers().contains(CRD_NAME)) {
5959
throw new IllegalStateException("Finalizer is not present.");
6060
}
6161

operator-framework/src/test/java/io/javaoperatorsdk/operator/sample/subresource/SubResourceTestCustomResourceController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public boolean deleteResource(SubResourceTestCustomResource resource, Context<Su
3030
public UpdateControl<SubResourceTestCustomResource> createOrUpdateResource(SubResourceTestCustomResource resource,
3131
Context<SubResourceTestCustomResource> context) {
3232
numberOfExecutions.addAndGet(1);
33-
if (!resource.getMetadata().getFinalizers().contains(this.getDefaultFinalizerName())) {
33+
if (!resource.getMetadata().getFinalizers().contains(CRD_NAME)) {
3434
throw new IllegalStateException("Finalizer is not present.");
3535
}
3636
log.info("Value: " + resource.getSpec().getValue());

0 commit comments

Comments
 (0)
0