/** * Copyright 2006 by Know-Center, Graz, Austria * 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 at.gv.egiz.pdfas.framework.vfilter; /** * The parameters of the VerificationFilter algorithm. * * @author wprinz */ public interface VerificationFilterParameters { /** * Tells the VerificationFilter to extract binary signatures only. * *

* Not scanning for textual signatures allows the algorithm to skip text * extraction and signature extraction, which are both time and memory * intensive processes. *

* * @return Returns true if the VerificationFilter should extract binary * signatures only. */ public boolean extractBinarySignaturesOnly(); /** * Tells the VerificationFilter to assume that there are only singatures (and * their Incremental Update blocks) younger than the original document. * *

* This is equivalent to saying that the document was not updated using an * Incremental update block other than a signature after being singed. The * incremental update blocks after the original document contain only * signatures (either text or binary). *

*

* This is equivalent to saying that there exists no Incremental Update block * that would render a text signature before it invalid. *

*

* Under this assumption, the process of finding all text signatures * simplifies to one text extraction of the whole document and one signature * extraction. This is of course a massive performance gain. *

*

* Actually the algorithm performs a text extraction of the whole document not * including trailing binary signature Incremental Update blocks. This means * that if a the last n Incremental Update blocks of a document are binary, * there is no use extract text from them. *

*

* Note that if there are Incremental Update blocks with text after a * signature thus this assumption does not hold the signatures older than this * block will break. *

* * @return Returns true if the Verification filter should assume that there * are only signature blocks after the original document. */ public boolean assumeOnlySignatureUpdateBlocks(); /** * Tells the VerificationFilter so scan for old signatures in the rest text. * *

* The rest text is the text of the oldest text signature or the original * document text if there is no text signature. *

* * @return Returns true if the VerificationFilter should scan for old text * signatures in the rest text. */ public boolean scanForOldSignatures(); /** * Return value that tell if the document has been corrected before verification. * * @return */ public boolean hasBeenCorrected(); public void setBeenCorrected(boolean corrected); }