Updataes to spreadsheet processing
added npe check
modified file name column
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
index c080a95..584b18f 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
@@ -505,7 +505,6 @@
}
static String getValueAsString(Section section, CD cd) {
-
StringBuffer sb = new StringBuffer();
if (cd != null) {
@@ -513,17 +512,17 @@
if (!StringUtils.isEmpty(cd.getDisplayName())) {
sb.append(cd.getDisplayName());
} else if (cd.getOriginalText() != null && cd.getOriginalText().getReference() != null) {
- String s = cd.getOriginalText().getReference().getValue();
-
- String result = section.getText() != null
- ? section.getText().getText(s.substring(1))
- : "";
- if (!StringUtils.isEmpty(result)) {
- sb.append(result);
+ String reference = cd.getOriginalText().getReference().getValue();
+ if (!StringUtils.isEmpty(reference) && section.getText() != null) {
+ String result = section.getText().getText(reference.substring(1));
+ if (!StringUtils.isEmpty(result)) {
+ sb.append(result);
+ } else {
+ sb.append("Missing in narrative " + reference);
+ }
} else {
- sb.append("Missing in narrative " + s);
+ sb.append("Reference Value Missing.");
}
-
} else if (cd.getOriginalText() != null && !StringUtils.isEmpty(cd.getOriginalText().getText())) {
sb.append(cd.getOriginalText().getText());
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
index 916de1c..159e184 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
@@ -424,9 +424,12 @@
ILog log = Activator.getDefault().getLog();
log.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error generating report", e));
throw new InvocationTargetException(e);
- } catch (Exception e) {
+ } catch (NullPointerException e) {
ILog log = Activator.getDefault().getLog();
log.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error generating report", e));
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
}
}
}
@@ -557,11 +560,14 @@
for (Object element : treeSelection.toList()) {
// IStructuredSelection aslection = (IStructuredSelection) element;
-
- pd.run(
- true, true,
- new ProcessSelection(element, splitOption, filterOption, theSections, theSectionCache));
-
+ try {
+ pd.run(
+ true, true,
+ new ProcessSelection(element, splitOption, filterOption, theSections, theSectionCache));
+ } catch (Throwable e) {
+ ILog log = Activator.getDefault().getLog();
+ log.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error generating report", e));
+ }
}
if (completed) {
@@ -601,14 +607,11 @@
}
}
- } catch (IOException e) {
- ILog log = Activator.getDefault().getLog();
- log.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error generating report", e));
- throw new InvocationTargetException(e);
- } catch (Exception e) {
+ } catch (Throwable e) {
ILog log = Activator.getDefault().getLog();
log.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error generating report", e));
}
+
}
});
} catch (InvocationTargetException e) {
@@ -1147,10 +1150,14 @@
String filesFilter;
+ String fileName;
+
/**
+ * @param fileName
* @param zipInputStream
*/
- public ZIPIterator(ZipInputStream zipInputStream, String filesFilter) {
+ public ZIPIterator(String fileName, ZipInputStream zipInputStream, String filesFilter) {
+ this.fileName = fileName;
zipInputStreams.push(zipInputStream);
if (!StringUtils.isEmpty(filesFilter)) {
@@ -1186,7 +1193,7 @@
// zipInputStream is now the input stream for the xml document
byte[] buffer = ByteStreams.toByteArray(zipInputStream);
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(buffer);
- wrapper = new WrapperForZipEnty("", entry, byteArrayInputStream);
+ wrapper = new WrapperForZipEnty(fileName, entry, byteArrayInputStream);
return true;
}
if ("ZIP".equalsIgnoreCase(FilenameUtils.getExtension(entry.getName()))) {
@@ -1315,7 +1322,8 @@
if (selectedFile != null) {
folder = (IFolder) selectedFile.getParent();
- documentsIterator = new ZIPIterator(new ZipInputStream(selectedFile.getContents()), fileNameFilters);
+ documentsIterator = new ZIPIterator(
+ selectedFile.getName(), new ZipInputStream(selectedFile.getContents()), fileNameFilters);
}
fileCount = documents.size() + 50;
@@ -1568,7 +1576,10 @@
*/
clinicalDocument = null;
} catch (Exception exception) {
- exception.printStackTrace();
+ ILog log = Activator.getDefault().getLog();
+ log.log(
+ new Status(
+ IStatus.ERROR, Activator.PLUGIN_ID, "Error processing file " + file.getName(), exception));
errors.put(file, exception);
}
@@ -1796,7 +1807,7 @@
}
public WrapperForZipEnty(String prefix, ZipEntry zipEntry, InputStream inputStream) {
- this.prefix = prefix;
+ this.prefix = FilenameUtils.getBaseName(prefix);
this.zipEntry = zipEntry;
this.inputStream = inputStream;
}
@@ -2808,7 +2819,7 @@
*/
@Override
public String getName() {
- return FilenameUtils.getName(zipEntry.getName());
+ return prefix + " " + FilenameUtils.getName(zipEntry.getName());
}
/*