aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/gv/egiz/moazs/backend
diff options
context:
space:
mode:
authorChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-08-28 10:27:36 +0200
committerChristof Rabensteiner <christof.rabensteiner@iaik.tugraz.at>2019-08-28 11:02:18 +0200
commitd31538c3d0694c3d2cb5d65c6670b84b2e6fb0f4 (patch)
tree1d8f77bf3f748c6a39e42dee7964cffb173707a2 /src/main/java/at/gv/egiz/moazs/backend
parent0a2e84daf88b908f1580168c3d6fdc28ba904a33 (diff)
downloadmoa-zs-d31538c3d0694c3d2cb5d65c6670b84b2e6fb0f4.tar.gz
moa-zs-d31538c3d0694c3d2cb5d65c6670b84b2e6fb0f4.tar.bz2
moa-zs-d31538c3d0694c3d2cb5d65c6670b84b2e6fb0f4.zip
Ensure that Each Step of Each Backend Process is Logged
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/backend')
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/DeliveryRequestBackend.java5
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/ForwardResponseToServiceSink.java6
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/LogResponseSink.java3
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java6
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java7
-rw-r--r--src/main/java/at/gv/egiz/moazs/backend/SaveResponseToFileSink.java2
6 files changed, 26 insertions, 3 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/backend/DeliveryRequestBackend.java b/src/main/java/at/gv/egiz/moazs/backend/DeliveryRequestBackend.java
index 178e26c..c4207f0 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/DeliveryRequestBackend.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/DeliveryRequestBackend.java
@@ -37,6 +37,9 @@ public class DeliveryRequestBackend implements Consumer<String> {
"DeliveryRequest for AppDeliveryID=%s is not in repository. " ;
private static final String BINARY_RESPONSE_MISSING_ERROR_MSG =
"Binary DeliveryRequestStatus for AppDeliveryID=%s is not in repository. " ;
+ private static final String BACKEND_ACCEPT_MSG =
+ "Backend accepts mzs:DeliveryRequest with AppDeliveryID={}.";
+
private static final at.gv.zustellung.app2mzs.xsd.ObjectFactory mzsOF = new at.gv.zustellung.app2mzs.xsd.ObjectFactory();
private static final at.gv.zustellung.msg.xsd.ObjectFactory msgOF = new at.gv.zustellung.msg.xsd.ObjectFactory();
@@ -79,12 +82,12 @@ public class DeliveryRequestBackend implements Consumer<String> {
@Override
public void accept(String appDeliveryID) {
+ log.info(BACKEND_ACCEPT_MSG, appDeliveryID);
DeliveryRequestStatusType status = null;
var fallbackAnswerBuilder = errorBuilder().withAppDeliveryID(appDeliveryID);
try {
- log.trace("Fetch mzs:DeliveryRequest wiht AppDeliveryID={} from repository.", appDeliveryID);
var mzsRequest = repository.retrieveDeliveryRequest(appDeliveryID).orElseThrow(
() -> moaZSException(format(DELIVERY_REQUEST_MISSING_ERROR_MSG, appDeliveryID)));
traceMzsRequest(mzsRequest);
diff --git a/src/main/java/at/gv/egiz/moazs/backend/ForwardResponseToServiceSink.java b/src/main/java/at/gv/egiz/moazs/backend/ForwardResponseToServiceSink.java
index 4b3c085..b64c186 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/ForwardResponseToServiceSink.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/ForwardResponseToServiceSink.java
@@ -6,6 +6,8 @@ import at.gv.egiz.moazs.scheme.Msg2MzsConverter;
import at.gv.egiz.moazs.scheme.MsgResponse;
import at.gv.zustellung.app2mzs.xsd.ClientType;
import at.gv.zustellung.app2mzs.xsd.Mzs2AppPortType;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -14,6 +16,8 @@ import java.util.concurrent.CompletableFuture;
@Component
public class ForwardResponseToServiceSink {
+ private static final Logger log = LoggerFactory.getLogger(ForwardResponseToServiceSink.class);
+
private final ClientFactory factory;
private final DeliveryRepository repository;
private final Msg2MzsConverter converter;
@@ -26,6 +30,8 @@ public class ForwardResponseToServiceSink {
}
public CompletableFuture<Void> send(MsgResponse msgResponse, ClientType params) {
+ log.info("Forward msg:{} with AppDeliveryID={} to service at {}.",
+ msgResponse.getRootElementLocalPart(), msgResponse.getAppDeliveryID(), params.getURL());
var binaryResponse = repository.retrieveBinaryResponse(msgResponse.getResponseID());
Mzs2AppPortType client = factory.create(params, Mzs2AppPortType.class);
return msgResponse.sendToMzsClient(converter, binaryResponse, client);
diff --git a/src/main/java/at/gv/egiz/moazs/backend/LogResponseSink.java b/src/main/java/at/gv/egiz/moazs/backend/LogResponseSink.java
index d419944..bf2e615 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/LogResponseSink.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/LogResponseSink.java
@@ -14,7 +14,6 @@ import static java.util.concurrent.CompletableFuture.completedFuture;
public class LogResponseSink {
private static final Logger log = LoggerFactory.getLogger(LogResponseSink.class);
- private static final String LOG_LEVEL_WARN_MESSAGE = "Will not log response because INFO level is disabled.";
private final Marshaller msgMarshaller;
@@ -35,7 +34,7 @@ public class LogResponseSink {
builder.append(msgMarshaller.marshallXml(msgResponse.getResponseAsJAXBElement()));
log.info(builder.toString());
} else {
- log.warn(LOG_LEVEL_WARN_MESSAGE);
+ log.warn("Will not log response because INFO level is disabled.");
}
return completedFuture(null);
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 df0f83e..844a559 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseBackend.java
@@ -51,6 +51,7 @@ 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))
.exceptionally(ex -> {
@@ -67,6 +68,10 @@ public class MsgResponseBackend implements Consumer<String> {
try {
var binaryResponse = repository.retrieveBinaryResponse(responseID).orElseThrow(
() -> moaZSException(BINARY_RESPONSE_MISSING_ERROR_MSG, MoaZSException.ERROR_MZS_BINARY_RESPONSE_MISSING));
+
+ log.info("Verify Signature of msg:{} with AppDeliveryID={}.",
+ response.getRootElementLocalPart(), response.getAppDeliveryID());
+
signatureVerifier.accept(binaryResponse);
return response;
} catch (MoaZSException ex) {
@@ -80,6 +85,7 @@ public class MsgResponseBackend implements Consumer<String> {
private void applySinks(MsgResponse msgResponse) {
var appDeliveryID = msgResponse.getAppDeliveryID();
+
var request = repository.retrieveDeliveryRequest(appDeliveryID).orElseThrow(
()-> moaZSException(format(REQUEST_MISSING_ERROR_MSG, appDeliveryID)));
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 0df5c68..46b0101 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/MsgResponseSinkHub.java
@@ -2,6 +2,8 @@ package at.gv.egiz.moazs.backend;
import at.gv.egiz.moazs.scheme.MsgResponse;
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.stereotype.Component;
@@ -10,6 +12,8 @@ import static java.util.concurrent.CompletableFuture.supplyAsync;
@Component
public class MsgResponseSinkHub {
+ private static final Logger log = LoggerFactory.getLogger(MsgResponseSinkHub.class);
+
private final SaveResponseToFileSink saveResponseSink;
private final LogResponseSink logResponseSink;
private final ForwardResponseToServiceSink forwardResponseSink;
@@ -27,6 +31,9 @@ public class MsgResponseSinkHub {
*/
public void applySinks(MsgResponse msgResponse, MsgResponseSinksType sinkParams) {
+ log.info("Apply Sinks to msg:{} with appDeliveryID={}.",
+ msgResponse.getRootElementLocalPart(), msgResponse.getAppDeliveryID());
+
if (sinkParams.getSaveResponseToFile().isActive()) {
supplyAsync(() -> saveResponseSink.save(msgResponse, sinkParams.getSaveResponseToFile().getPath()));
}
diff --git a/src/main/java/at/gv/egiz/moazs/backend/SaveResponseToFileSink.java b/src/main/java/at/gv/egiz/moazs/backend/SaveResponseToFileSink.java
index c58e1a5..38eef2e 100644
--- a/src/main/java/at/gv/egiz/moazs/backend/SaveResponseToFileSink.java
+++ b/src/main/java/at/gv/egiz/moazs/backend/SaveResponseToFileSink.java
@@ -48,6 +48,8 @@ public class SaveResponseToFileSink {
public CompletableFuture<Void> save(MsgResponse response, String rootPath) {
var responseID = response.getResponseID();
+ log.info("Save msg:{} with AppDeliveryID={}.",
+ response.getRootElementLocalPart(), response.getAppDeliveryID());
var responsePath = generatePath(rootPath, responseID, "xml");
var storeResponseToFileSystemFuture = supplyAsync(() -> msgMarshaller.marshallXml(response.getResponseAsJAXBElement()))