aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/demo/SignatureCreationDemo.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/demo/SignatureCreationDemo.java')
-rw-r--r--src/main/java/demo/SignatureCreationDemo.java130
1 files changed, 0 insertions, 130 deletions
diff --git a/src/main/java/demo/SignatureCreationDemo.java b/src/main/java/demo/SignatureCreationDemo.java
deleted file mode 100644
index 06e454e..0000000
--- a/src/main/java/demo/SignatureCreationDemo.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/**
- * <copyright> Copyright 2006 by Know-Center, Graz, Austria </copyright>
- * PDF-AS has been contracted by the E-Government Innovation Center EGIZ, a
- * joint initiative of the Federal Chancellery Austria and Graz University of
- * Technology.
- *
- * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by
- * the European Commission - subsequent versions of the EUPL (the "Licence");
- * You may not use this work except in compliance with the Licence.
- * You may obtain a copy of the Licence at:
- * http://www.osor.eu/eupl/
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the Licence is distributed on an "AS IS" basis,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the Licence for the specific language governing permissions and
- * limitations under the Licence.
- *
- * This product combines work with different licenses. See the "NOTICE" text
- * file for details on the various modules and licenses.
- * The "NOTICE" text file is part of the distribution. Any derivative works
- * that you distribute must include a readable copy of the "NOTICE" text file.
- */
-package demo;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Iterator;
-
-import at.gv.egiz.pdfas.PdfAsFactory;
-import at.gv.egiz.pdfas.api.PdfAs;
-import at.gv.egiz.pdfas.api.analyze.NonTextObjectInfo;
-import at.gv.egiz.pdfas.api.commons.Constants;
-import at.gv.egiz.pdfas.api.exceptions.PdfAsException;
-import at.gv.egiz.pdfas.api.io.DataSource;
-import at.gv.egiz.pdfas.api.sign.SignParameters;
-import at.gv.egiz.pdfas.api.sign.SignResult;
-import at.gv.egiz.pdfas.api.sign.pos.SignaturePositioning;
-import at.gv.egiz.pdfas.io.FileBasedDataSink;
-import at.gv.egiz.pdfas.io.FileBasedDataSource;
-
-public class SignatureCreationDemo {
-
- /**
- * Disable instantiation.
- */
- private SignatureCreationDemo() {
- }
-
- /**
- * Starts a demo that signs a document.
- *
- * @param args
- * The parameter(s).
- */
- public static void main(String[] args) {
-
- if (args == null || args.length == 0) {
- System.err.println("Please provide path of file to be signed.");
- System.exit(1);
- }
-
- File configdir = new File("./work");
- File unsignedFile = new File(args[0]);
- File signedFile = new File(args[0] + "_signed.pdf");
-
- try {
-
- // instantiate api
- PdfAs pdfasAPI = PdfAsFactory.createPdfAs(configdir);
-
- // set source
- DataSource dataSource = new FileBasedDataSource(unsignedFile, "application/pdf");
-
- // set output
- FileBasedDataSink dataSink = new FileBasedDataSink(signedFile);
-
- // configure signature
- SignParameters signParameters = new SignParameters();
- signParameters.setDocument(dataSource);
- signParameters.setOutput(dataSink);
- signParameters.setSignatureDevice(Constants.SIGNATURE_DEVICE_MOA); // Constants.SIGNATURE_DEVICE_BKU
- signParameters.setSignaturePositioning(new SignaturePositioning("x:100;y:200;w:500;p:1;f:80"));
- signParameters.setCheckForPlaceholder(true);
- // standard signature
- signParameters.setSignatureType(Constants.SIGNATURE_TYPE_TEXTUAL);
- signParameters.setSignatureProfileId("SIGNATURBLOCK_DE");
-
- // --- enable in case of BAIK SIGNATURE ---
- /*
- signParameters.setSignatureType(Constants.SIGNATURE_TYPE_BINARY);
- // signParameters.setSignatureProfileId("BAIK_URKUNDE_SIGNATUR");
- signParameters.setSignatureProfileId("BAIK_ARCHIV_SIGNATUR");
- // use BAIK TimeStamp
- signParameters.setTimeStamperImpl(new DummyTimeStamper());
- */
-
- // dynamic adjustment of signature profile values
- // warning: inconsiderate modifications might lead to signatures that can't be validated
- // based on default configuration
- // note: any modifications are bound to the SignParameters object instance.
- // It is not possible to permanently change profile configuration.
- signParameters.setProfileOverrideValue("SIG_NAME", "Max Mustermann"); // you may use expressions here like ${subject.EMAIL}
- signParameters.setProfileOverrideValue("SIG_META", "This is a modified note.");
-
- // sign
- System.out.println("Signing...");
- SignResult signResult = pdfasAPI.sign(signParameters);
- System.out.println("Successfully signed.");
-
- // check if non textual elements have been detected
- if (signResult.hasNonTextualObjects()) {
- System.out.println("\nWARNING: " + signResult.getNonTextualObjects().size() + " non textual object(s) detected.");
- Iterator noit = signResult.getNonTextualObjects().iterator();
- while (noit.hasNext()) {
- NonTextObjectInfo info = (NonTextObjectInfo) noit.next();
- System.out.println(" -> " + info.toString());
- }
- System.out.println();
- }
-
- } catch (PdfAsException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
-}