Ejemplo n.º 1
0
        /// <summary>
        /// Create a Page object for the specified web response.
        /// </summary>
        /// <param name="webResponse">the response from the server</param>
        /// <param name="webWindow">the window that this page will be loaded into</param>
        /// <returns>the new page object</returns>
        public IPage CreatePage(WebResponse webResponse, IWebWindow webWindow)
        {
            String contentType = DetermineContentType(webResponse.GetContentType().ToLower(), // TODO : Locale.ENGLISH
                                                      webResponse.GetContentAsStream());

            PageType pageType = DeterminePageType(contentType);

            switch (pageType)
            {
            case PageType.HTML:
                return(CreateHtmlPage(webResponse, webWindow));

            case PageType.JAVASCRIPT:
                return(CreateJavaScriptPage(webResponse, webWindow));

            case PageType.XML:
                SgmlPage   sgmlPage = CreateXmlPage(webResponse, webWindow);
                DomElement doc      = sgmlPage.getDocumentElement();
                if (doc != null && HTMLParser.XHTML_NAMESPACE.equals(doc.getNamespaceURI()))
                {
                    return(CreateXHtmlPage(webResponse, webWindow));
                }
                return(sgmlPage);

            case PageType.TEXT:
                return(CreateTextPage(webResponse, webWindow));

            default:
                return(CreateUnexpectedPage(webResponse, webWindow));
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Returns an input stream representing all the content that was returned from the server.
 /// @throws IOException in case of IO problems
 /// </summary>
 /// <returns>an input stream representing all the content that was returned from the server</returns>
 public InputStream GetInputStream()
 {
     return(WebResponse.GetContentAsStream());
 }