From 01e8719365e1395eea15d76295f73219c49d2b56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=80lex=20Magaz=20Gra=C3=A7a?= Date: Wed, 18 Jun 2014 14:30:27 +0200 Subject: [PATCH] DS-2063 SWORD keep-package-on-fail doesn't work for RuntimeExceptions. https://jira.duraspace.org/browse/DS-2063 --- .../java/org/dspace/sword/DepositManager.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/dspace-sword/src/main/java/org/dspace/sword/DepositManager.java b/dspace-sword/src/main/java/org/dspace/sword/DepositManager.java index 00836a3da2..a33f23e817 100644 --- a/dspace-sword/src/main/java/org/dspace/sword/DepositManager.java +++ b/dspace-sword/src/main/java/org/dspace/sword/DepositManager.java @@ -163,6 +163,21 @@ public class DepositManager throw e; } catch(SWORDErrorException e) + { + if (swordService.getSwordConfig().isKeepPackageOnFailedIngest()) + { + try + { + storePackageAsFile(deposit); + } + catch(IOException e2) + { + log.warn("Unable to store SWORD package as file: " + e); + } + } + throw e; + } + catch(RuntimeException e) { if (swordService.getSwordConfig().isKeepPackageOnFailedIngest()) {