From 1d2aafe0cd6607a48d880c007881768079e49060 Mon Sep 17 00:00:00 2001 From: Christof Rabensteiner Date: Mon, 9 Dec 2019 10:25:02 +0100 Subject: Refactor & Fixes - Handle InterruptedExceptions as discussed in https://stackoverflow.com/questions/3976344/handling-interruptedexception-in-java - Remove unused imports. --- src/main/java/at/gv/egiz/moazs/service/MzsService.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/main/java/at/gv/egiz/moazs/service/MzsService.java') diff --git a/src/main/java/at/gv/egiz/moazs/service/MzsService.java b/src/main/java/at/gv/egiz/moazs/service/MzsService.java index caaa251..565e374 100644 --- a/src/main/java/at/gv/egiz/moazs/service/MzsService.java +++ b/src/main/java/at/gv/egiz/moazs/service/MzsService.java @@ -39,6 +39,7 @@ import org.springframework.stereotype.Service; import javax.jws.WebParam; import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import java.util.function.Consumer; @@ -46,6 +47,7 @@ import java.util.function.Consumer; import static at.gv.egiz.moazs.MoaZSException.moaZSException; import static at.gv.zustellung.app2mzs.xsd.PartialSuccessType.partialSuccessTypeBuilder; import static java.lang.String.format; +import static java.lang.Thread.currentThread; import static java.util.concurrent.CompletableFuture.supplyAsync; /** @@ -116,11 +118,15 @@ public class MzsService implements App2MzsPortType { } catch (TimeoutException e) { return applySinkHubToAsyncResponse(appDeliveryID, completeRequest, requestProcessed); - } catch (Exception e) { + } catch (InterruptedException e) { + currentThread().interrupt(); var message = format(MZS_SERVICE_ERROR_MSG, appDeliveryID); throw moaZSException(message, e); - } + } catch (ExecutionException e) { + var message = format(MZS_SERVICE_ERROR_MSG, appDeliveryID); + throw moaZSException(message, e); + } } private RequestStatusResponse process(DeliveryRequestType deliveryRequest) { -- cgit v1.2.3