/**
 * 
 */
package at.gv.egiz.pdfas.api.analyze;

import at.gv.egiz.pdfas.api.commons.Constants;
import at.gv.egiz.pdfas.api.io.DataSource;

/**
 * Parameter object that holds the analyze parameters.
 * 
 * @author wprinz
 */
public class AnalyzeParameters
{

  /**
   * The document to be analyzed.
   */
  protected DataSource document = null;

  /**
   * The mode of operation how the document is analyzed.
   * 
   * <p>
   * May be {@link Constants#VERIFY_MODE_BINARY_ONLY} to check the document for
   * binary signatures only (very fast). Or may be
   * {@link Constants#VERIFY_MODE_SEMI_CONSERVATIVE} to perform a semi
   * conservative (optimized) text and binary verification (slow). Or may be
   * {@link Constants#VERIFY_MODE_FULL_CONSERVATIVE} to perform a full
   * conservative text and binary verification (very slow).
   * </p>
   */
  protected String verifyMode = Constants.VERIFY_MODE_FULL_CONSERVATIVE;

  /**
   * @return the document
   */
  public DataSource getDocument()
  {
    return this.document;
  }

  /**
   * @param document the document to set
   */
  public void setDocument(DataSource document)
  {
    this.document = document;
  }

  /**
   * @return the verifyMode
   */
  public String getVerifyMode()
  {
    return this.verifyMode;
  }

  /**
   * @param verifyMode the verifyMode to set
   */
  public void setVerifyMode(String verifyMode)
  {
    this.verifyMode = verifyMode;
  }

  
}