Skip to content

Commit af31764

Browse files
authored
improve: optional workflow result (#2639)
Signed-off-by: Attila Mészáros <[email protected]>
1 parent 5dbb4c4 commit af31764

File tree

7 files changed

+13
-10
lines changed

7 files changed

+13
-10
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/dependent/managed/DefaultManagedWorkflowAndDependentResourceContext.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -73,13 +73,13 @@ public <T> T getMandatory(Object key, Class<T> expectedType) {
7373
}
7474

7575
@Override
76-
public WorkflowReconcileResult getWorkflowReconcileResult() {
77-
return getMandatory(RECONCILE_RESULT_KEY, WorkflowReconcileResult.class);
76+
public Optional<WorkflowReconcileResult> getWorkflowReconcileResult() {
77+
return get(RECONCILE_RESULT_KEY, WorkflowReconcileResult.class);
7878
}
7979

8080
@Override
81-
public WorkflowCleanupResult getWorkflowCleanupResult() {
82-
return getMandatory(CLEANUP_RESULT_KEY, WorkflowCleanupResult.class);
81+
public Optional<WorkflowCleanupResult> getWorkflowCleanupResult() {
82+
return get(CLEANUP_RESULT_KEY, WorkflowCleanupResult.class);
8383
}
8484

8585
@Override

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/dependent/managed/ManagedWorkflowAndDependentResourceContext.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,10 @@ public interface ManagedWorkflowAndDependentResourceContext {
6161
@SuppressWarnings("unused")
6262
<T> T getMandatory(Object key, Class<T> expectedType);
6363

64-
WorkflowReconcileResult getWorkflowReconcileResult();
64+
Optional<WorkflowReconcileResult> getWorkflowReconcileResult();
6565

6666
@SuppressWarnings("unused")
67-
WorkflowCleanupResult getWorkflowCleanupResult();
67+
Optional<WorkflowCleanupResult> getWorkflowCleanupResult();
6868

6969
/**
7070
* Explicitly reconcile the declared workflow for the associated

operator-framework/src/test/java/io/javaoperatorsdk/operator/dependent/bulkdependent/condition/ManagedBulkDependentWithReadyConditionReconciler.java

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ public UpdateControl<BulkDependentTestCustomResource> reconcile(
2323
numberOfExecutions.incrementAndGet();
2424

2525
var ready = context.managedWorkflowAndDependentResourceContext().getWorkflowReconcileResult()
26+
.orElseThrow()
2627
.allDependentResourcesReady();
2728

2829

operator-framework/src/test/java/io/javaoperatorsdk/operator/dependent/bulkdependent/readonly/ReadOnlyBulkReconciler.java

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ public UpdateControl<BulkDependentTestCustomResource> reconcile(
1616

1717
var nonReadyDependents =
1818
context.managedWorkflowAndDependentResourceContext().getWorkflowReconcileResult()
19+
.orElseThrow()
1920
.getNotReadyDependents();
2021

2122

operator-framework/src/test/java/io/javaoperatorsdk/operator/workflow/complexdependent/ComplexWorkflowReconciler.java

+1
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public UpdateControl<ComplexWorkflowCustomResource> reconcile(
4545
ComplexWorkflowCustomResource resource,
4646
Context<ComplexWorkflowCustomResource> context) throws Exception {
4747
var ready = context.managedWorkflowAndDependentResourceContext().getWorkflowReconcileResult()
48+
.orElseThrow()
4849
.allDependentResourcesReady();
4950

5051
var status = Objects.requireNonNullElseGet(resource.getStatus(), ComplexWorkflowStatus::new);

operator-framework/src/test/java/io/javaoperatorsdk/operator/workflow/workflowallfeature/WorkflowAllFeatureReconciler.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,12 @@ public UpdateControl<WorkflowAllFeatureCustomResource> reconcile(
4343
}
4444
final var reconcileResult = context.managedWorkflowAndDependentResourceContext()
4545
.getWorkflowReconcileResult();
46-
final var msgFromCondition = reconcileResult.getDependentConditionResult(
46+
final var msgFromCondition = reconcileResult.orElseThrow().getDependentConditionResult(
4747
DependentResource.defaultNameFor(ConfigMapDependentResource.class),
4848
Condition.Type.RECONCILE, String.class)
4949
.orElse(ConfigMapReconcileCondition.NOT_RECONCILED_YET);
5050
resource.getStatus()
51-
.withReady(reconcileResult.allDependentResourcesReady())
51+
.withReady(reconcileResult.orElseThrow().allDependentResourcesReady())
5252
.withMsgFromCondition(msgFromCondition);
5353
return UpdateControl.patchStatus(resource);
5454
}

operator-framework/src/test/java/io/javaoperatorsdk/operator/workflow/workflowsilentexceptionhandling/HandleWorkflowExceptionsInReconcilerReconciler.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public UpdateControl<HandleWorkflowExceptionsInReconcilerCustomResource> reconci
2525
Context<HandleWorkflowExceptionsInReconcilerCustomResource> context) {
2626

2727
errorsFoundInReconcilerResult = context.managedWorkflowAndDependentResourceContext()
28-
.getWorkflowReconcileResult().erroredDependentsExist();
28+
.getWorkflowReconcileResult().orElseThrow().erroredDependentsExist();
2929

3030

3131
return UpdateControl.noUpdate();
@@ -36,7 +36,7 @@ public DeleteControl cleanup(HandleWorkflowExceptionsInReconcilerCustomResource
3636
Context<HandleWorkflowExceptionsInReconcilerCustomResource> context) {
3737

3838
errorsFoundInCleanupResult = context.managedWorkflowAndDependentResourceContext()
39-
.getWorkflowCleanupResult().erroredDependentsExist();
39+
.getWorkflowCleanupResult().orElseThrow().erroredDependentsExist();
4040
return DeleteControl.defaultDelete();
4141
}
4242

0 commit comments

Comments
 (0)