/** * */ package at.gv.egiz.pdfas; import java.io.File; import at.gv.egiz.pdfas.api.PdfAs; import at.gv.egiz.pdfas.api.exceptions.PdfAsException; import at.gv.egiz.pdfas.impl.api.PdfAsObject; import at.knowcenter.wag.egov.egiz.PdfAS; /** * Main factory for creating a PDF-AS API Instance (PdfAs Interface). * * @see PdfAs * * @author wprinz */ public class PdfAsFactory { /** * Creates a PDF-AS API instance for the given work directory. * * @param workDirectory * The work directory. If null the configuration is assumed to be located * within the user's home directory. * * @return Returns an instance of the PDF-AS API. * @throws IllegalArgumentException * Thrown, if the workDirectory doesn't exist. * @throws PdfAsException * Thrown, if the work directory does not meet its requirements, or * if the config file is invalid. * @see PdfAS#USERHOME_CONFIG_FOLDER */ public static PdfAs createPdfAs(File workDirectory) throws PdfAsException { return new PdfAsObject(workDirectory); } /** * Creates a PDF-AS API instance assuming that the configuration is located within the user's * home directory. * * @return Returns an instance of the PDF-AS API. * @throws IllegalArgumentException * Thrown, if the work directory doesn't exist within the user's home directory. * @throws PdfAsException * Thrown, if the work directory does not meet its requirements, or * if the config file is invalid. * @see PdfAS#USERHOME_CONFIG_FOLDER */ public static PdfAs createPdfAs() throws PdfAsException { return createPdfAs(null); } }