Interface BrowserResponseHandler
-
- All Implemented Interfaces:
-
ai.platon.pulsar.common.event.EventEmitter
public interface BrowserResponseHandler implements EventEmitter<BrowserResponseEvents>
The browser response handler. It's a component of the browser emulator, it's used to handle the response from the browser.
-
-
Method Summary
Modifier and Type Method Description abstract StringBuildernormalizePageSource(String url, String pageSource)Normalize the page source. abstract BrowserErrorResponsecreateBrowserErrorResponse(String message)Chrome redirected to the error page chrome-error:// This page should be text analyzed to determine the actual error. abstract ProtocolStatuscreateProtocolStatusForBrokenContent(FetchTask task, HtmlIntegrity htmlIntegrity)abstract ProtocolStatuscheckErrorPage(WebPage page, ProtocolStatus status)abstract UnitonInitPageCategorySniffer(PageCategorySniffer sniffer)abstract UnitonInitHTMLIntegrityChecker(HtmlIntegrityChecker checker)abstract UnitonWillCreateResponse(FetchTask task, WebDriver driver)abstract UnitonResponseCreated(FetchTask task, WebDriver driver, Response response)abstract UnitonBrowseTimeout(NavigateTask task)abstract ChainedPageCategorySniffergetPageCategorySniffer()TODO: a better extension point to add sniffers abstract ChainedHtmlIntegrityCheckergetHtmlIntegrityChecker()TODO: a better extension point to add checkers -
Methods inherited from class ai.platon.pulsar.common.event.EventEmitter
count, emit, emit, emit, emit, emit1, emit1, emit1, emit1, hasListeners, hasNormalListeners, hasSuspendListeners, listeners, listeners, normalListeners, normalListeners, off, off, off, off, off, off1, off1, off1, off1, off1, on, on, on, on, on1, on1, on1, on1, once, once, once, once1, once1, once1, suspendListeners, suspendListeners -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Method Detail
-
normalizePageSource
abstract StringBuilder normalizePageSource(String url, String pageSource)
Normalize the page source.
The browser has already converted source code to be UTF-8, so we replace the charset meta tags to be UTF-8. TODO: or we insert a new metadata to indicate the charset
-
createBrowserErrorResponse
abstract BrowserErrorResponse createBrowserErrorResponse(String message)
Chrome redirected to the error page chrome-error:// This page should be text analyzed to determine the actual error.
-
createProtocolStatusForBrokenContent
abstract ProtocolStatus createProtocolStatusForBrokenContent(FetchTask task, HtmlIntegrity htmlIntegrity)
-
checkErrorPage
abstract ProtocolStatus checkErrorPage(WebPage page, ProtocolStatus status)
-
onInitPageCategorySniffer
abstract Unit onInitPageCategorySniffer(PageCategorySniffer sniffer)
-
onInitHTMLIntegrityChecker
abstract Unit onInitHTMLIntegrityChecker(HtmlIntegrityChecker checker)
-
onWillCreateResponse
abstract Unit onWillCreateResponse(FetchTask task, WebDriver driver)
-
onResponseCreated
abstract Unit onResponseCreated(FetchTask task, WebDriver driver, Response response)
-
onBrowseTimeout
abstract Unit onBrowseTimeout(NavigateTask task)
-
getPageCategorySniffer
abstract ChainedPageCategorySniffer getPageCategorySniffer()
TODO: a better extension point to add sniffers
-
getHtmlIntegrityChecker
abstract ChainedHtmlIntegrityChecker getHtmlIntegrityChecker()
TODO: a better extension point to add checkers
-
-
-
-