Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 8E6C9200B4A for ; Wed, 20 Jul 2016 19:23:57 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 8CEE4160A86; Wed, 20 Jul 2016 17:23:57 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id B965F160A5B for ; Wed, 20 Jul 2016 19:23:56 +0200 (CEST) Received: (qmail 46271 invoked by uid 500); 20 Jul 2016 17:23:56 -0000 Mailing-List: contact commits-help@pdfbox.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@pdfbox.apache.org Delivered-To: mailing list commits@pdfbox.apache.org Received: (qmail 46262 invoked by uid 99); 20 Jul 2016 17:23:55 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 20 Jul 2016 17:23:55 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 76BC0C0B66 for ; Wed, 20 Jul 2016 17:23:55 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.374 X-Spam-Level: X-Spam-Status: No, score=0.374 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id LNyLFIcR-2WV for ; Wed, 20 Jul 2016 17:23:54 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with ESMTP id 8798D60E5B for ; Wed, 20 Jul 2016 17:23:53 +0000 (UTC) Received: from svn01-us-west.apache.org (svn.apache.org [10.41.0.6]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id A3144E02E4 for ; Wed, 20 Jul 2016 17:23:52 +0000 (UTC) Received: from svn01-us-west.apache.org (localhost [127.0.0.1]) by svn01-us-west.apache.org (ASF Mail Server at svn01-us-west.apache.org) with ESMTP id A084F3A06A1 for ; Wed, 20 Jul 2016 17:23:52 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1753579 - in /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible: PDFTemplateCreator.java PDFTemplateStructure.java Date: Wed, 20 Jul 2016 17:23:52 -0000 To: commits@pdfbox.apache.org From: tilman@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20160720172352.A084F3A06A1@svn01-us-west.apache.org> archived-at: Wed, 20 Jul 2016 17:23:57 -0000 Author: tilman Date: Wed Jul 20 17:23:52 2016 New Revision: 1753579 URL: http://svn.apache.org/viewvc?rev=1753579&view=rev Log: PDFBOX-3017: deprecate / remove poorly named method "getTemplateAppearanceStream" Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateCreator.java pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateStructure.java Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateCreator.java URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateCreator.java?rev=1753579&r1=1753578&r2=1753579&view=diff ============================================================================== --- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateCreator.java (original) +++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateCreator.java Wed Jul 20 17:23:52 2016 @@ -18,12 +18,15 @@ package org.apache.pdfbox.pdmodel.intera import java.awt.geom.AffineTransform; import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.pdfbox.cos.COSDocument; import org.apache.pdfbox.cos.COSName; +import org.apache.pdfbox.pdfwriter.COSWriter; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; import org.apache.pdfbox.pdmodel.PDResources; @@ -152,7 +155,7 @@ public class PDFTemplateCreator pdfBuilder.createVisualSignature(template); pdfBuilder.createWidgetDictionary(pdSignatureField, holderFormResources); - ByteArrayInputStream in = pdfStructure.getTemplateAppearanceStream(); + InputStream in = getVisualSignatureAsStream(pdfStructure.getVisualSignature()); logger.info("stream returning started, size= " + in.available()); // we must close the document @@ -161,4 +164,13 @@ public class PDFTemplateCreator // return result of the stream return in; } + + private InputStream getVisualSignatureAsStream(COSDocument visualSignature) throws IOException + { + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + COSWriter writer = new COSWriter(baos); + writer.write(visualSignature); + writer.close(); + return new ByteArrayInputStream(baos.toByteArray()); + } } Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateStructure.java URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateStructure.java?rev=1753579&r1=1753578&r2=1753579&view=diff ============================================================================== --- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateStructure.java (original) +++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/digitalsignature/visible/PDFTemplateStructure.java Wed Jul 20 17:23:52 2016 @@ -61,7 +61,7 @@ public class PDFTemplateStructure private PDResources holderFormResources; private PDFormXObject holderForm; private PDAppearanceDictionary appearanceDictionary; - private PDStream innterFormStream; + private PDStream innerFormStream; private PDResources innerFormResources; private PDFormXObject innerForm; private PDStream imageFormStream; @@ -362,7 +362,7 @@ public class PDFTemplateStructure */ public PDStream getInnerFormStream() { - return innterFormStream; + return innerFormStream; } /** @@ -371,7 +371,7 @@ public class PDFTemplateStructure */ public void setInnterFormStream(PDStream innerFormStream) { - this.innterFormStream = innerFormStream; + this.innerFormStream = innerFormStream; } /** @@ -567,12 +567,27 @@ public class PDFTemplateStructure { this.acroFormFields = acroFormFields; } - - /** - * Gets AP of the created template - * @return the templates Appearance Stream - * @throws IOException - */ + + /** + * Returns the visual signature COSDocument as a stream and closes the template field + * PDDocument. + * + * @return the visual signature COSDocument as a stream + * @throws IOException + * @deprecated This will be removed in 2.1 because the method name is misleading and confusing, + * and the work done rather belongs into the calling class: + *
+     * {@code
+     * COSDocument visualSignature = structure.getVisualSignature();
+     *  ByteArrayOutputStream baos = new ByteArrayOutputStream();
+     *  COSWriter writer = new COSWriter(baos);
+     *  writer.write(visualSignature);
+     *  writer.close();
+     *  structure.getTemplate().close();
+     *  ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
+     * } 
+ */ + @Deprecated public ByteArrayInputStream getTemplateAppearanceStream() throws IOException { COSDocument visualSignature = getVisualSignature();