aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
diff options
context:
space:
mode:
authorChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-12-02 14:26:42 +0100
committerChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-12-03 09:08:44 +0100
commit8799a27e8d73c5e079d549f6d76abf861d75ee9e (patch)
tree5c8d5201be097654155d9ad69f3af12ebd8d749a /src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
parent6dbe979e0b6bd6236db304b034ad592a4aeacabc (diff)
downloadmoa-zs-8799a27e8d73c5e079d549f6d76abf861d75ee9e.tar.gz
moa-zs-8799a27e8d73c5e079d549f6d76abf861d75ee9e.tar.bz2
moa-zs-8799a27e8d73c5e079d549f6d76abf861d75ee9e.zip
Finalize "Removal of JAXB Class Not Found Fix"
- Problem: I fixed CompletableFuture.*async within the DeliveryRequest flow, but forgot to do the same for the DeliveryRequestStatus / DeliveryNotification flow. - Solution: Ensure that all CompletableFuture.*async() invocations have Spring's task executor attached.
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java')
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
index 0da9c92..81398da 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
@@ -31,6 +31,7 @@ import at.gv.zustellung.app2mzs.xsd.DeliveryRequestType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.task.TaskExecutor;
import org.springframework.stereotype.Component;
import java.util.Map;
@@ -64,18 +65,21 @@ public class MsgResponseBackend implements Consumer<String> {
private final MsgResponseSinkHub hub;
private final Map<String, ConfigType> deliveryRequestConfigs;
private final MzsDeliveryRequestValidator validator;
+ private final TaskExecutor taskExecutor;
@Autowired
public MsgResponseBackend(DeliveryRepository repository,
Consumer<byte[]> signatureVerifier,
MsgResponseSinkHub hub,
Map<String, ConfigType> deliveryRequestConfigs,
- MzsDeliveryRequestValidator validator) {
+ MzsDeliveryRequestValidator validator,
+ TaskExecutor taskExecutor) {
this.repository = repository;
this.signatureVerifier = signatureVerifier;
this.hub = hub;
this.deliveryRequestConfigs = deliveryRequestConfigs;
this.validator = validator;
+ this.taskExecutor = taskExecutor;
}
/**
@@ -91,8 +95,8 @@ public class MsgResponseBackend implements Consumer<String> {
@Override
public void accept(String responseID) {
log.info("Backend accepts MsgResponse with responseID={}.", responseID);
- supplyAsync(() -> verifySignature(responseID))
- .thenAcceptAsync(msgResponse -> applySinks(msgResponse))
+ supplyAsync(() -> verifySignature(responseID), taskExecutor)
+ .thenAcceptAsync(msgResponse -> applySinks(msgResponse), taskExecutor)
.exceptionally(ex -> {
log.error(ex.getMessage(), ex);
return null;