]> git.aero2k.de Git - tmp/jakarta-migration.git/commitdiff
CSPACE-4814: More minor changes to improve reporting of import results, so as to...
authorAron Roberts <aron@socrates.berkeley.edu>
Wed, 4 Apr 2012 20:35:23 +0000 (13:35 -0700)
committerAron Roberts <aron@socrates.berkeley.edu>
Wed, 4 Apr 2012 20:35:23 +0000 (13:35 -0700)
services/imports/service/src/main/java/org/collectionspace/services/imports/nuxeo/ImportCommand.java

index 9204102fedd10993fe67082e79e41aa15808b0e0..b68ef11a3fe438447c8e41d440b7cd1a226d9171 100644 (file)
@@ -44,7 +44,8 @@ public class ImportCommand {
         DocumentReader reader = null;\r
         DocumentWriter writer = null;\r
         DocumentModel docModel = null;\r
-        ServiceContext<PoxPayloadIn, PoxPayloadOut> ctx = null;\r
+        DocumentRef keyDocRef, valueDocRef;\r
+        String docType;\r
         StringBuffer dump = new StringBuffer("NO RESULTS");\r
         try {\r
             System.out.println("importTree reading file: "+file+(file!=null ? " exists? "+file.exists() : " file param is null"));\r
@@ -54,12 +55,17 @@ public class ImportCommand {
             // pipe.addTransformer(transformer);\r
             pipe.setReader(reader);\r
             pipe.setWriter(writer);\r
+            // FIXME: pipe.run() appears to return at least one type\r
+            // of Exception that is logged but not thrown; this is a\r
+            // potential workaround\r
             DocumentTranslationMap dtm = pipe.run();\r
-            DocumentRef keyDocRef, valueDocRef;\r
-            String docType;\r
             Map<DocumentRef,DocumentRef> documentRefs = dtm.getDocRefMap();\r
             if (documentRefs.size() > 0) {\r
                 dump.setLength(0);\r
+                // Assumes that every import request must necessarily\r
+                // be attempting to import at least one record.\r
+            } else {\r
+                throw new Exception("No records were successfully imported");\r
             }\r
             dump.append("<importedRecords>");\r
             for (Map.Entry entry: documentRefs.entrySet()) {\r
@@ -89,7 +95,7 @@ public class ImportCommand {
             throw e;\r
         } finally {\r
             if (reader != null) {\r
-                dump.append("<fullReport>"+(((LoggedXMLDirectoryReader)reader).report())+"</fullReport>");\r
+                dump.append("<report>"+(((LoggedXMLDirectoryReader)reader).report())+"</report>");\r
                 reader.close();\r
             }\r
             if (writer != null) {\r