diff options
author | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-07-09 14:11:47 +0200 |
---|---|---|
committer | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-07-09 14:11:47 +0200 |
commit | 8aba1b4f18f5fbfebdf239b4b4945b628e439905 (patch) | |
tree | 0004115e44b8d6ddf48542b7413d4f54fa76dc27 /src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java | |
parent | 65163646205b6e05139485fe957bceabe531f447 (diff) | |
download | moa-zs-8aba1b4f18f5fbfebdf239b4b4945b628e439905.tar.gz moa-zs-8aba1b4f18f5fbfebdf239b4b4945b628e439905.tar.bz2 moa-zs-8aba1b4f18f5fbfebdf239b4b4945b628e439905.zip |
Refactor Needles Interfaces and Rename "process" to "backend"
Reason:
- Interfaces with a single method can be replaced with
interfaces from java.util.function.
- Less interfaces = less code = less maintenance!
- Spring can inject beans by name so we name dependencies correctly
to prevent ambiguity.
Others:
- Rename process to backend since backend gives a better description
of its components.
Diffstat (limited to 'src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java')
-rw-r--r-- | src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java b/src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java deleted file mode 100644 index 9c8b17c..0000000 --- a/src/main/java/at/gv/egiz/moazs/verify/MsgResponseVerifier.java +++ /dev/null @@ -1,54 +0,0 @@ -package at.gv.egiz.moazs.verify; - -import at.gv.egiz.moazs.MoaZSException; -import at.gv.egiz.moazs.repository.DeliveryRepository; -import at.gv.egiz.moazs.scheme.MsgResponse; -import at.gv.egiz.moazs.service.MsgService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import static at.gv.egiz.moazs.MoaZSException.moaZSExceptionBuilder; -import static java.lang.String.format; - -@Component -public class MsgResponseVerifier { - - private static final Logger log = LoggerFactory.getLogger(MsgService.class); - public static final String MOASP_SIGNATURE_INVALID_ERROR_MSG = "Signature of Msg Response " + - "with AppDeliveryID=%s is not valid."; - - private final DeliveryRepository repository; - private final SignatureVerifier verifier; - - @Autowired - public MsgResponseVerifier(DeliveryRepository repository, SignatureVerifier verifier) { - this.repository = repository; - this.verifier = verifier; - } - - public MsgResponse verify(String responseID) { - - var response = repository.retrieveResponse(responseID).get(); - var builder = moaZSExceptionBuilder().withAllParametersInAnswer(response.getAnswer()); - - var binaryResponse = repository.retrieveBinaryResponse(responseID).get(); - - try { - verifier.verify(binaryResponse); - return response; - } catch (MoaZSException ex) { - log.error(ex.getMessage(), ex); - var wrappingEx = builder - .withMessage(format(MOASP_SIGNATURE_INVALID_ERROR_MSG, response.getAppDeliveryID())) - .withErrorCode(MoaZSException.ERROR_MOASP_SIGNATURE_INVALID) - .withCause(ex) - .build(); - - return response.generateError(wrappingEx); - } - - } - -} |