aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java')
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
index 61df4b2..3927055 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
@@ -26,6 +26,7 @@ import at.gv.zustellung.app2mzs.xsd.MsgResponseSinksType;
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 static java.util.concurrent.CompletableFuture.supplyAsync;
@@ -42,13 +43,15 @@ public class MsgResponseSinkHub {
private final SaveResponseToFileSink saveResponseSink;
private final LogResponseSink logResponseSink;
private final ForwardResponseToServiceSink forwardResponseSink;
+ private final TaskExecutor taskExecutor;
@Autowired
public MsgResponseSinkHub(SaveResponseToFileSink saveResponseSink, LogResponseSink logResponseSink,
- ForwardResponseToServiceSink forwardResponseSink) {
+ ForwardResponseToServiceSink forwardResponseSink, TaskExecutor taskExecutor) {
this.saveResponseSink = saveResponseSink;
this.logResponseSink = logResponseSink;
this.forwardResponseSink = forwardResponseSink;
+ this.taskExecutor = taskExecutor;
}
/**
@@ -60,16 +63,16 @@ public class MsgResponseSinkHub {
msgResponse.getRootElementLocalPart(), msgResponse.getAppDeliveryID());
if (sinkParams.getSaveResponseToFile().isActive()) {
- supplyAsync(() -> saveResponseSink.save(msgResponse, sinkParams.getSaveResponseToFile().getPath()));
+ supplyAsync(() -> saveResponseSink.save(msgResponse, sinkParams.getSaveResponseToFile().getPath()), taskExecutor);
}
if (sinkParams.isLogResponse()) {
- supplyAsync(() -> logResponseSink.log(msgResponse));
+ supplyAsync(() -> logResponseSink.log(msgResponse), taskExecutor);
}
if (sinkParams.getForwardResponseToService().isActive()) {
supplyAsync(() -> forwardResponseSink.send(
- msgResponse, sinkParams.getForwardResponseToService().getAppClient()));
+ msgResponse, sinkParams.getForwardResponseToService().getAppClient()), taskExecutor);
}
}