Versions of DateConverter,java are in three (3) packages: jempbox.impl, 
pdfbox.util, and xmpbox. They have diverged as updates have been made to one or 
the other. 

Date Converter is used in these modules:
jempbox.xmp.ResourceEvent.java
jempbox.xmp.XMPSchema.java
pdfbox.cos.COSDictionary.java
pdfbox.pdmodel.fdf.FDFAnnotation.java
preflight.metadata.SynchronizedMetaDataValidation.java
xmpbox.type.DateType.java

The smallest library is xmpbox, so let's consider it as a home for 
DateConverter. Preflight already imports xmpbox. Pdfbox requires jempbox, so 
importing xmpbox into jempbox will satisfy both.  Since xmpbox defines some xmp 
features, it seems likely that jempbox could take further advantage of xmpbox.

Conclusion and recommendation:  have a single copy of DateConverter in xmpbox.

Tasks to implement the switchover:
    update xmpbox/DateConverter
    change imports in two pdfbox modules that use DateConverter
    change imports in two jempbox modules that use DateConverter
    add xmpbox to the requirements for jempbox
    remove DateConverter from jempbox.impl and pdfbox.util

At the same time, the six client modules can be updated to eliminate the 
IOExceptions and NullPointerExceptions that have emanated from the current 
DateConverter.

Fred Hansen

Reply via email to