package com.canoo.webtest.engine; import java.io.IOException; import com.canoo.webtest.plugins.pdftest.htmlunit.PDFPage; import com.canoo.webtest.plugins.pdftest.htmlunit.pdfbox.PdfBoxPDFPage; import com.gargoylesoftware.htmlunit.DefaultPageCreator; import com.gargoylesoftware.htmlunit.Page; import com.gargoylesoftware.htmlunit.PageCreator; import com.gargoylesoftware.htmlunit.WebResponse; import com.gargoylesoftware.htmlunit.WebWindow; /** * {@link PageCreator} able to create {@link PdfBoxPDFPage} for "application/pdf". * @author Marc Guillemot * @version $Revision: 102192 $ */ public class PdfAwarePageCreator extends DefaultPageCreator { public Page createPage( final WebResponse webResponse, final WebWindow webWindow ) throws IOException { final String contentType = webResponse.getContentType().toLowerCase(); if ("application/pdf".equals(contentType)) { final PDFPage newPage = new PdfBoxPDFPage(webResponse, webWindow); webWindow.setEnclosedPage(newPage); return newPage; } else return super.createPage(webResponse, webWindow); } }