public class DefaultPageCreator extends Object implements PageCreator, Serializable
PageCreator
. Designed to be extended for easier handling of new content
types. Just check the content type in createPage() and call super(createPage()) if your custom
type isn't found. There are also protected createXXXXPage() methods for creating the Page
types
which HtmlUnit already knows about for your custom content types.
The following table shows the type of Page
created depending on the content type:Content type | Type of page |
---|---|
text/html | HtmlPage |
text/xml application/xml text/vnd.wap.wml *+xml |
XmlPage , or an XHtmlPage if an XHTML namespace is used |
text/javascript application/x-javascript |
JavaScriptPage |
text/* | TextPage |
Anything else | UnexpectedPage |
Modifier and Type | Class and Description |
---|---|
static class |
DefaultPageCreator.PageType
The different supported page types.
|
Constructor and Description |
---|
DefaultPageCreator()
Creates an instance.
|
Modifier and Type | Method and Description |
---|---|
protected HtmlPage |
createHtmlPage(WebResponse webResponse,
WebWindow webWindow)
Creates an HtmlPage for this WebResponse.
|
protected JavaScriptPage |
createJavaScriptPage(WebResponse webResponse,
WebWindow webWindow)
Creates a JavaScriptPage for this WebResponse.
|
Page |
createPage(WebResponse webResponse,
WebWindow webWindow)
Create a Page object for the specified web response.
|
protected TextPage |
createTextPage(WebResponse webResponse,
WebWindow webWindow)
Creates a TextPage for this WebResponse.
|
protected UnexpectedPage |
createUnexpectedPage(WebResponse webResponse,
WebWindow webWindow)
Creates an UnexpectedPage for this WebResponse.
|
protected XHtmlPage |
createXHtmlPage(WebResponse webResponse,
WebWindow webWindow)
Creates an XHtmlPage for this WebResponse.
|
protected XmlPage |
createXmlPage(WebResponse webResponse,
WebWindow webWindow)
Creates an XmlPage for this WebResponse.
|
protected String |
determineContentType(String contentType,
InputStream contentAsStream)
Tries to determine the content type.
|
static DefaultPageCreator.PageType |
determinePageType(String contentType)
Determines the kind of page to create from the content type.
|
public static DefaultPageCreator.PageType determinePageType(String contentType)
contentType
- the content type to evaluatepublic Page createPage(WebResponse webResponse, WebWindow webWindow) throws IOException
createPage
in interface PageCreator
webResponse
- the response from the serverwebWindow
- the window that this page will be loaded intoIOException
- if an IO problem occursprotected String determineContentType(String contentType, InputStream contentAsStream) throws IOException
contentType
- the contentType header if anycontentAsStream
- stream allowing to read the downloaded contentIOException
- if an IO problem occursprotected HtmlPage createHtmlPage(WebResponse webResponse, WebWindow webWindow) throws IOException
webResponse
- the page's sourcewebWindow
- the WebWindow to place the HtmlPage inIOException
- if the page could not be createdprotected XHtmlPage createXHtmlPage(WebResponse webResponse, WebWindow webWindow) throws IOException
webResponse
- the page's sourcewebWindow
- the WebWindow to place the HtmlPage inIOException
- if the page could not be createdprotected JavaScriptPage createJavaScriptPage(WebResponse webResponse, WebWindow webWindow)
webResponse
- the page's sourcewebWindow
- the WebWindow to place the JavaScriptPage inprotected TextPage createTextPage(WebResponse webResponse, WebWindow webWindow)
webResponse
- the page's sourcewebWindow
- the WebWindow to place the TextPage inprotected UnexpectedPage createUnexpectedPage(WebResponse webResponse, WebWindow webWindow)
webResponse
- the page's sourcewebWindow
- the WebWindow to place the UnexpectedPage inprotected XmlPage createXmlPage(WebResponse webResponse, WebWindow webWindow) throws IOException
webResponse
- the page's sourcewebWindow
- the WebWindow to place the TextPage inIOException
- if the page could not be createdCopyright © 2002–2015 Gargoyle Software Inc.. All rights reserved.