From 1149a5ba2bb213a4747b095f0d3e41a9709b0383 Mon Sep 17 00:00:00 2001 From: Aron Roberts Date: Fri, 17 Dec 2010 00:40:15 +0000 Subject: [PATCH] CSPACE-3338: 'ant import' target now fails with exit code 1 if an Exception is thrown that prevents the import from succeeding. A more concise and specific error message is also now printed. --- .../java/org/collectionspace/ImportAuthz.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/services/authorization-mgt/import/src/main/java/org/collectionspace/ImportAuthz.java b/services/authorization-mgt/import/src/main/java/org/collectionspace/ImportAuthz.java index 9f7730b39..3d53943ca 100644 --- a/services/authorization-mgt/import/src/main/java/org/collectionspace/ImportAuthz.java +++ b/services/authorization-mgt/import/src/main/java/org/collectionspace/ImportAuthz.java @@ -27,6 +27,7 @@ */ package org.collectionspace; +import net.sf.ehcache.CacheException; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.CommandLineParser; import org.apache.commons.cli.GnuParser; @@ -47,6 +48,8 @@ public class ImportAuthz { final private static String OPTIONS_EXPORT_DIR = "exportdir"; final private static String OPTIONS_HELP = "help"; + final private static String MSG_SEPARATOR = "--"; + public static void main(String[] args) { Options options = createOptions(); @@ -76,11 +79,26 @@ public class ImportAuthz { System.err.println("Parsing failed. Reason: " + exp.getMessage()); } catch (Exception e) { System.out.println("Error : " + e.getMessage()); + System.out.println(MSG_SEPARATOR); printUsage(); + System.out.println(MSG_SEPARATOR); + System.out.println("Import failed: "); + printInitialErrorCauseMsg(e); + System.exit(1); } } + private static void printInitialErrorCauseMsg(Throwable t) { + if (t != null) { + if (t.getCause() != null) { + printInitialErrorCauseMsg(t.getCause()); + } else { + System.out.println(t.getMessage()); + } + } + } + private static Options createOptions() { Options options = new Options(); options.addOption("u", true, OPTIONS_USERNAME); -- 2.47.3