Skip to content

Commit 1d0518e

Browse files
fix: Add sourceCheckId field to prevent issues looking up DMN for Custom Checks. (#364)
1 parent 1379297 commit 1d0518e

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

builder-api/src/main/java/org/acme/controller/CustomBenefitResource.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,7 @@ public Response addCheckToBenefit(
303303
String newCheckConfigId = UUID.randomUUID().toString();
304304
CheckConfig checkConfig = new CheckConfig(
305305
newCheckConfigId,
306+
check.getId(),
306307
check.getName(),
307308
check.getVersion(),
308309
check.getModule(),

builder-api/src/main/java/org/acme/controller/DecisionResource.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,6 @@ private Map<String, Object> evaluateBenefit(Benefit benefit, Map<String, Object>
135135

136136
int checkNum = 0;
137137
for (CheckConfig checkConfig : benefit.getChecks()) {
138-
String dmnFilepath = storageService.getCheckDmnModelPath(checkConfig.getCheckId());
139138
EvaluationResult evaluationResult;
140139
if (isLibraryCheck(checkConfig)){
141140
evaluationResult = libraryApi.evaluateCheck(checkConfig, formData);
@@ -144,6 +143,8 @@ private Map<String, Object> evaluateBenefit(Benefit benefit, Map<String, Object>
144143
if (customFormValues == null) {
145144
customFormValues = new HashMap<String, Object>();
146145
}
146+
String sourceCheckId = checkConfig.getSourceCheckId() != null ? checkConfig.getSourceCheckId() : checkConfig.getCheckId();
147+
String dmnFilepath = storageService.getCheckDmnModelPath(sourceCheckId);
147148
evaluationResult = dmnService.evaluateDmn(
148149
dmnFilepath, checkConfig.getCheckName(), customFormValues, checkConfig.getParameters()
149150
);

builder-api/src/main/java/org/acme/model/domain/CheckConfig.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
@JsonIgnoreProperties(ignoreUnknown = true)
1010
public class CheckConfig {
1111
private String checkId;
12+
// original checkId of the check this was cloned from
13+
private String sourceCheckId;
1214
private String checkName;
1315
private String checkVersion;
1416
private String checkModule;
@@ -23,6 +25,7 @@ public CheckConfig() {
2325

2426
public CheckConfig(
2527
String checkId,
28+
String sourceCheckId,
2629
String checkName,
2730
String checkVersion,
2831
String checkModule,
@@ -32,6 +35,7 @@ public CheckConfig(
3235
Map<String, Object> parameters
3336
) {
3437
this.checkId = checkId;
38+
this.sourceCheckId = sourceCheckId;
3539
this.checkName = checkName;
3640
this.checkVersion = checkVersion;
3741
this.checkModule = checkModule;
@@ -104,4 +108,12 @@ public String getCheckModule() {
104108
public void setCheckModule(String checkModule) {
105109
this.checkModule = checkModule;
106110
}
111+
112+
public String getSourceCheckId() {
113+
return sourceCheckId;
114+
}
115+
116+
public void setSourceCheckId(String sourceCheckId) {
117+
this.sourceCheckId = sourceCheckId;
118+
}
107119
}

0 commit comments

Comments
 (0)