diff options
author | Alexander Marsalek <amarsalek@iaik.tugraz.at> | 2021-04-20 21:12:16 +0200 |
---|---|---|
committer | Alexander Marsalek <amarsalek@iaik.tugraz.at> | 2021-04-20 21:23:59 +0200 |
commit | aa45585a4cb9e7aff0ef3da3c6a6fe43b9ace98c (patch) | |
tree | adbd5148432a702578c36fbf0bf5bf7a0a5409a3 /pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java | |
parent | 649b3cd196987eac24a519d987676a0ba09e2432 (diff) | |
download | pdf-as-4-aa45585a4cb9e7aff0ef3da3c6a6fe43b9ace98c.tar.gz pdf-as-4-aa45585a4cb9e7aff0ef3da3c6a6fe43b9ace98c.tar.bz2 pdf-as-4-aa45585a4cb9e7aff0ef3da3c6a6fe43b9ace98c.zip |
fix?
Diffstat (limited to 'pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java')
-rw-r--r-- | pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java b/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java index 256400a0..63b006bf 100644 --- a/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java +++ b/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/pdfbox2/placeholder/PDFBoxPlaceholderExtractor.java @@ -1,19 +1,47 @@ package at.gv.egiz.pdfas.lib.impl.pdfbox2.placeholder; +import at.gv.egiz.pdfas.common.exceptions.PDFIOException; import at.gv.egiz.pdfas.common.exceptions.PdfAsException; import at.gv.egiz.pdfas.lib.impl.pdfbox2.PDFBOXObject; import at.gv.egiz.pdfas.lib.impl.placeholder.PlaceholderExtractor; import at.gv.egiz.pdfas.lib.impl.placeholder.SignaturePlaceholderData; import at.gv.egiz.pdfas.lib.impl.status.PDFObject; +import java.io.IOException; +import java.util.List; + public class PDFBoxPlaceholderExtractor implements PlaceholderExtractor { + @Override public SignaturePlaceholderData extract(PDFObject doc, String placeholderId, int matchMode) throws PdfAsException { if (doc instanceof PDFBOXObject) { PDFBOXObject object = (PDFBOXObject) doc; - return SignaturePlaceholderExtractor.extract(object.getDocument(), - placeholderId, matchMode); + try { + SignaturePlaceholderExtractor extractor = new SignaturePlaceholderExtractor(placeholderId, + matchMode, object.getDocument()); + return extractor.extract(object.getDocument(), + placeholderId, matchMode); + } catch (IOException | ClassNotFoundException | InstantiationException | IllegalAccessException e2) { + throw new PDFIOException("error.pdf.io.04", e2); + } + + } + throw new PdfAsException("INVALID STATE"); + } + + @Override + public List<SignaturePlaceholderData> extractList(PDFObject doc, String placeholderId, int matchMode) throws PdfAsException { + if (doc instanceof PDFBOXObject) { + PDFBOXObject object = (PDFBOXObject) doc; + try { + SignaturePlaceholderExtractor extractor = new SignaturePlaceholderExtractor(placeholderId, + matchMode, object.getDocument()); + return extractor.extractList(object.getDocument(), + placeholderId, matchMode); + } catch (IOException | ClassNotFoundException | InstantiationException | IllegalAccessException e2) { + throw new PDFIOException("error.pdf.io.04", e2); + } } throw new PdfAsException("INVALID STATE"); } |