Merge branch 'RED-10353-4.3' into 'release/4.423.x'

RED-10353: Fixed missing errorCode when rules are locked

See merge request redactmanager/redaction-service!551
This commit is contained in:
Dominique Eifländer 2024-11-11 11:15:56 +01:00
commit de76cb96f9

View File

@ -8,6 +8,7 @@ import static java.lang.String.format;
import java.io.IOException;
import java.time.OffsetDateTime;
import java.time.temporal.ChronoUnit;
import java.util.concurrent.CompletionException;
import org.springframework.amqp.AmqpRejectAndDontRequeueException;
import org.springframework.amqp.core.Message;
@ -171,12 +172,10 @@ public class RedactionMessageReceiver {
ErrorCode errorCode = null;
if(e instanceof DroolsTimeoutException dre){
if (!dre.isReported()){
errorCode = ErrorCode.RULES_EXECUTION_TIMEOUT;
} else {
errorCode = ErrorCode.LOCKED_RULES;
}
if(e instanceof CompletionException ce){
errorCode = computeErrorCodeFromDroolsTimeoutException(ce.getCause());
} else {
errorCode = computeErrorCodeFromDroolsTimeoutException(e);
}
fileStatusProcessingUpdateClient.analysisFailed(analyzeRequest.getDossierId(),
@ -187,6 +186,18 @@ public class RedactionMessageReceiver {
errorCode));
}
private ErrorCode computeErrorCodeFromDroolsTimeoutException(Throwable e){
ErrorCode errorCode = null;
if(e instanceof DroolsTimeoutException dre){
if (!dre.isReported()){
errorCode = ErrorCode.RULES_EXECUTION_TIMEOUT;
} else {
errorCode = ErrorCode.LOCKED_RULES;
}
}
return errorCode;
}
@RabbitHandler
@RabbitListener(queues = REDACTION_DLQ)