aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2013-10-03 13:38:33 +0200
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2013-10-03 13:38:33 +0200
commit62434d4f7d4bf80b4c236c4153bffab703916ee3 (patch)
treed98ce0cd92e7e772e27d667a8b67cfcdc1d94db6 /pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java
parentf076fe1f5f9c10b1f1c304956eb305987d48591a (diff)
downloadpdf-as-4-62434d4f7d4bf80b4c236c4153bffab703916ee3.tar.gz
pdf-as-4-62434d4f7d4bf80b4c236c4153bffab703916ee3.tar.bz2
pdf-as-4-62434d4f7d4bf80b4c236c4153bffab703916ee3.zip
no callback API implemted
Diffstat (limited to 'pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java')
-rw-r--r--pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java70
1 files changed, 70 insertions, 0 deletions
diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java
new file mode 100644
index 00000000..4b7afa6c
--- /dev/null
+++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/sig_interface/SignatureDataExtractor.java
@@ -0,0 +1,70 @@
+package at.gv.egiz.pdfas.lib.impl.signing.sig_interface;
+
+import iaik.x509.X509Certificate;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Calendar;
+
+import org.apache.pdfbox.exceptions.SignatureException;
+import org.apache.pdfbox.pdmodel.interactive.digitalsignature.PDSignature;
+
+import at.gv.egiz.pdfas.common.utils.StreamUtils;
+
+public class SignatureDataExtractor implements PDFASSignatureInterface {
+
+ protected X509Certificate certificate;
+ protected byte[] signatureData;
+
+ protected String pdfSubFilter;
+ protected String pdfFilter;
+ protected PDSignature signature;
+ protected int[] byteRange;
+ protected Calendar date;
+
+ public SignatureDataExtractor(X509Certificate certificate,
+ String filter, String subfilter, Calendar date) {
+ this.certificate = certificate;
+ this.pdfFilter = filter;
+ this.pdfSubFilter = subfilter;
+ this.date = date;
+ }
+
+ public X509Certificate getCertificate() {
+ return certificate;
+ }
+
+ public String getPDFSubFilter() {
+ return this.pdfSubFilter;
+ }
+
+ public String getPDFFilter() {
+ return this.pdfFilter;
+ }
+
+ public byte[] getSignatureData() {
+ return this.signatureData;
+ }
+
+ public byte[] sign(InputStream content) throws SignatureException,
+ IOException {
+ signatureData = StreamUtils.inputStreamToByteArray(content);
+ byteRange = this.signature.getByteRange();
+ return new byte[] { 0 };
+ }
+
+ public void setPDSignature(PDSignature signature) {
+ this.signature = signature;
+ }
+
+ public int[] getByteRange() {
+ return byteRange;
+ }
+
+ public Calendar getSigningDate() {
+ return this.date;
+ }
+
+
+
+}