aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing')
-rw-r--r--pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/CoreSignParams.java32
-rw-r--r--pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/DocumentToSign.java22
-rw-r--r--pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignRequest.java62
-rw-r--r--pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignResponse.java23
-rw-r--r--pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/SignedDocument.java25
5 files changed, 164 insertions, 0 deletions
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/CoreSignParams.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/CoreSignParams.java
new file mode 100644
index 00000000..f86e93b6
--- /dev/null
+++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/CoreSignParams.java
@@ -0,0 +1,32 @@
+package at.gv.egiz.pdfas.api.processing;
+
+import java.io.Serializable;
+import java.util.Map;
+
+import at.gv.egiz.pdfas.api.ws.PDFASSignParameters.Connector;
+import lombok.Data;
+
+@Data
+public class CoreSignParams implements Serializable {
+
+ private static final long serialVersionUID = 947480605651880556L;
+
+ String transactionId;
+
+ Connector connector;
+
+ String invokeUrl;
+
+ String invokeTarget;
+
+ String invokeErrorUrl;
+
+ String keyIdentifier;
+
+ Map<String,String> preprocessor;
+
+ Map<String,String> overrides;
+
+ Map<String,String> signatureBlockParameters;
+
+}
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/DocumentToSign.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/DocumentToSign.java
new file mode 100644
index 00000000..6cc3a933
--- /dev/null
+++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/DocumentToSign.java
@@ -0,0 +1,22 @@
+package at.gv.egiz.pdfas.api.processing;
+
+import java.io.Serializable;
+
+import lombok.Data;
+
+@Data
+public class DocumentToSign implements Serializable {
+
+ private static final long serialVersionUID = 551977730667465367L;
+
+ byte[] inputData;
+
+ String fileName;
+
+ String position;
+
+ String qrCodeContent;
+
+ String profile;
+
+}
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignRequest.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignRequest.java
new file mode 100644
index 00000000..b36b5a4c
--- /dev/null
+++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignRequest.java
@@ -0,0 +1,62 @@
+package at.gv.egiz.pdfas.api.processing;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import at.gv.egiz.pdfas.api.ws.VerificationLevel;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+public class PdfasSignRequest implements Serializable, Iterator<DocumentToSign> {
+
+ private static final long serialVersionUID = -7245405996920651806L;
+
+ @Setter
+ String requestID;
+
+ @Setter
+ CoreSignParams coreParams;
+
+ @Setter
+ VerificationLevel verificationLevel;
+
+ List<DocumentToSign> input;
+
+ /**
+ * Add single PDF for signing.
+ *
+ * @param pdf PDF to sign
+ */
+ public void addDocumentToSign(DocumentToSign pdf) {
+ if (input == null) {
+ input = new ArrayList<>();
+
+ }
+ input.add(pdf);
+
+ }
+
+
+ /**
+ * <code>true</code> if there is one or more {@link DocumentToSign}, otherwise <code>false</code>.
+ */
+ @Override
+ public boolean hasNext() {
+ return input != null && !input.isEmpty();
+
+ }
+
+ /**
+ * Get next {@link DocumentToSign}.
+ */
+ @Override
+ public synchronized DocumentToSign next() {
+ return input.remove(0);
+
+ }
+
+
+}
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignResponse.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignResponse.java
new file mode 100644
index 00000000..3618715f
--- /dev/null
+++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/PdfasSignResponse.java
@@ -0,0 +1,23 @@
+package at.gv.egiz.pdfas.api.processing;
+
+import java.io.Serializable;
+import java.util.List;
+
+import lombok.Builder;
+import lombok.Data;
+import lombok.Singular;
+
+@Data
+@Builder(toBuilder = true)
+public class PdfasSignResponse implements Serializable {
+
+ private static final long serialVersionUID = -3235466827933651452L;
+
+ String requestId;
+
+ String transactionId;
+
+ @Singular
+ List<SignedDocument> signedPdfs;
+
+}
diff --git a/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/SignedDocument.java b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/SignedDocument.java
new file mode 100644
index 00000000..348746df
--- /dev/null
+++ b/pdf-as-common/src/main/java/at/gv/egiz/pdfas/api/processing/SignedDocument.java
@@ -0,0 +1,25 @@
+package at.gv.egiz.pdfas.api.processing;
+
+import java.io.Serializable;
+
+import at.gv.egiz.pdfas.api.ws.PDFASVerificationResponse;
+import lombok.Builder;
+import lombok.Data;
+
+@Data
+@Builder
+public class SignedDocument implements Serializable {
+
+ private static final long serialVersionUID = 5409915106152807937L;
+
+ Long signingTimestamp;
+
+ byte[] outputData;
+
+ String fileName;
+
+ String signerCertificate;
+
+ PDFASVerificationResponse verificationResponse;
+
+}