xref: /plugin/combo/vendor/php-webdriver/webdriver/lib/Local/LocalWebDriver.php (revision 04fd306c7c155fa133ebb3669986875d65988276) !
1*04fd306cSNickeau<?php
2*04fd306cSNickeau
3*04fd306cSNickeaunamespace Facebook\WebDriver\Local;
4*04fd306cSNickeau
5*04fd306cSNickeauuse Facebook\WebDriver\Exception\WebDriverException;
6*04fd306cSNickeauuse Facebook\WebDriver\Remote\DesiredCapabilities;
7*04fd306cSNickeauuse Facebook\WebDriver\Remote\RemoteWebDriver;
8*04fd306cSNickeau
9*04fd306cSNickeau/**
10*04fd306cSNickeau * @todo Break inheritance from RemoteWebDriver in next major version. (Composition over inheritance!)
11*04fd306cSNickeau */
12*04fd306cSNickeauabstract class LocalWebDriver extends RemoteWebDriver
13*04fd306cSNickeau{
14*04fd306cSNickeau    /**
15*04fd306cSNickeau     * @param string $selenium_server_url
16*04fd306cSNickeau     * @param null $desired_capabilities
17*04fd306cSNickeau     * @param null $connection_timeout_in_ms
18*04fd306cSNickeau     * @param null $request_timeout_in_ms
19*04fd306cSNickeau     * @param null $http_proxy
20*04fd306cSNickeau     * @param null $http_proxy_port
21*04fd306cSNickeau     * @param DesiredCapabilities|null $required_capabilities
22*04fd306cSNickeau     * @throws WebDriverException
23*04fd306cSNickeau     * @return RemoteWebDriver
24*04fd306cSNickeau     * @todo Remove in next major version (should not be inherited)
25*04fd306cSNickeau     */
26*04fd306cSNickeau    public static function create(
27*04fd306cSNickeau        $selenium_server_url = 'http://localhost:4444/wd/hub',
28*04fd306cSNickeau        $desired_capabilities = null,
29*04fd306cSNickeau        $connection_timeout_in_ms = null,
30*04fd306cSNickeau        $request_timeout_in_ms = null,
31*04fd306cSNickeau        $http_proxy = null,
32*04fd306cSNickeau        $http_proxy_port = null,
33*04fd306cSNickeau        DesiredCapabilities $required_capabilities = null
34*04fd306cSNickeau    ) {
35*04fd306cSNickeau        throw new WebDriverException('Use start() method to start local WebDriver.');
36*04fd306cSNickeau    }
37*04fd306cSNickeau
38*04fd306cSNickeau    /**
39*04fd306cSNickeau     * @param string $session_id
40*04fd306cSNickeau     * @param string $selenium_server_url
41*04fd306cSNickeau     * @param null $connection_timeout_in_ms
42*04fd306cSNickeau     * @param null $request_timeout_in_ms
43*04fd306cSNickeau     * @throws WebDriverException
44*04fd306cSNickeau     * @return RemoteWebDriver
45*04fd306cSNickeau     * @todo Remove in next major version (should not be inherited)
46*04fd306cSNickeau     */
47*04fd306cSNickeau    public static function createBySessionID(
48*04fd306cSNickeau        $session_id,
49*04fd306cSNickeau        $selenium_server_url = 'http://localhost:4444/wd/hub',
50*04fd306cSNickeau        $connection_timeout_in_ms = null,
51*04fd306cSNickeau        $request_timeout_in_ms = null
52*04fd306cSNickeau    ) {
53*04fd306cSNickeau        throw new WebDriverException('Use start() method to start local WebDriver.');
54*04fd306cSNickeau    }
55*04fd306cSNickeau}
56