Skip to content

Commit 289227f

Browse files
committed
Stop using DesiredCapabilities class in DefaultDriverFactory and DefaultDriverProvider. Fixes #5228
1 parent 182ed38 commit 289227f

File tree

2 files changed

+26
-14
lines changed

2 files changed

+26
-14
lines changed

java/server/src/org/openqa/selenium/remote/server/DefaultDriverFactory.java

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,40 +18,52 @@
1818
package org.openqa.selenium.remote.server;
1919

2020
import static com.google.common.base.Preconditions.checkState;
21+
import static org.openqa.selenium.remote.BrowserType.CHROME;
22+
import static org.openqa.selenium.remote.BrowserType.EDGE;
23+
import static org.openqa.selenium.remote.BrowserType.FIREFOX;
24+
import static org.openqa.selenium.remote.BrowserType.HTMLUNIT;
25+
import static org.openqa.selenium.remote.BrowserType.IE;
26+
import static org.openqa.selenium.remote.BrowserType.OPERA;
27+
import static org.openqa.selenium.remote.BrowserType.OPERA_BLINK;
28+
import static org.openqa.selenium.remote.BrowserType.PHANTOMJS;
29+
import static org.openqa.selenium.remote.BrowserType.SAFARI;
30+
import static org.openqa.selenium.remote.CapabilityType.BROWSER_NAME;
2131
import static org.openqa.selenium.remote.server.DefaultDriverProvider.createProvider;
2232

2333
import com.google.common.annotations.VisibleForTesting;
2434
import com.google.common.collect.ImmutableList;
35+
import com.google.common.collect.ImmutableMap;
2536

2637
import org.openqa.selenium.Capabilities;
38+
import org.openqa.selenium.ImmutableCapabilities;
2739
import org.openqa.selenium.Platform;
2840
import org.openqa.selenium.WebDriver;
2941
import org.openqa.selenium.WebDriverException;
30-
import org.openqa.selenium.remote.DesiredCapabilities;
3142

3243
import java.util.List;
3344
import java.util.Map;
3445
import java.util.Objects;
3546
import java.util.ServiceLoader;
3647
import java.util.concurrent.ConcurrentHashMap;
3748
import java.util.logging.Logger;
38-
import java.util.stream.Stream;
3949

4050
public class DefaultDriverFactory implements DriverFactory {
4151

4252
private static final Logger LOG = Logger.getLogger(DefaultDriverFactory.class.getName());
4353

4454
private static final List<DriverProvider> DEFAULT_DRIVER_PROVIDERS =
45-
Stream.of(
46-
createProvider(DesiredCapabilities.firefox(), "org.openqa.selenium.firefox.FirefoxDriver"),
47-
createProvider(DesiredCapabilities.chrome(), "org.openqa.selenium.chrome.ChromeDriver"),
48-
createProvider(DesiredCapabilities.internetExplorer(), "org.openqa.selenium.ie.InternetExplorerDriver"),
49-
createProvider(DesiredCapabilities.edge(), "org.openqa.selenium.edge.EdgeDriver"),
50-
createProvider(DesiredCapabilities.opera(), "com.opera.core.systems.OperaDriver"),
51-
createProvider(DesiredCapabilities.operaBlink(), "org.openqa.selenium.opera.OperaDriver"),
52-
createProvider(DesiredCapabilities.safari(), "org.openqa.selenium.safari.SafariDriver"),
53-
createProvider(DesiredCapabilities.phantomjs(), "org.openqa.selenium.phantomjs.PhantomJSDriver"),
54-
createProvider(DesiredCapabilities.htmlUnit(), "org.openqa.selenium.htmlunit.HtmlUnitDriver"))
55+
new ImmutableMap.Builder<String, String>()
56+
.put(FIREFOX, "org.openqa.selenium.firefox.FirefoxDriver")
57+
.put(CHROME, "org.openqa.selenium.chrome.ChromeDriver")
58+
.put(IE, "org.openqa.selenium.ie.InternetExplorerDriver")
59+
.put(EDGE, "org.openqa.selenium.edge.EdgeDriver")
60+
.put(OPERA, "com.opera.core.systems.OperaDriver")
61+
.put(OPERA_BLINK, "org.openqa.selenium.opera.OperaDriver")
62+
.put(SAFARI, "org.openqa.selenium.safari.SafariDriver")
63+
.put(PHANTOMJS, "org.openqa.selenium.phantomjs.PhantomJSDriver")
64+
.put(HTMLUNIT, "org.openqa.selenium.htmlunit.HtmlUnitDriver")
65+
.build().entrySet().stream()
66+
.map(e -> createProvider(new ImmutableCapabilities(BROWSER_NAME, e.getKey()), e.getValue()))
5567
.filter(Objects::nonNull)
5668
.collect(ImmutableList.toImmutableList());
5769

java/server/src/org/openqa/selenium/remote/server/DefaultDriverProvider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
package org.openqa.selenium.remote.server;
1818

1919
import org.openqa.selenium.Capabilities;
20+
import org.openqa.selenium.ImmutableCapabilities;
2021
import org.openqa.selenium.WebDriver;
2122
import org.openqa.selenium.WebDriverException;
22-
import org.openqa.selenium.remote.DesiredCapabilities;
2323

2424
import java.lang.reflect.Constructor;
2525
import java.util.logging.Level;
@@ -37,7 +37,7 @@ public class DefaultDriverProvider implements DriverProvider {
3737
private Class<? extends WebDriver> driverClass;
3838

3939
public DefaultDriverProvider(Capabilities capabilities, Class<? extends WebDriver> driverClass) {
40-
this.capabilities = new DesiredCapabilities(capabilities);
40+
this.capabilities = new ImmutableCapabilities(capabilities);
4141
this.driverClass = driverClass;
4242
}
4343

0 commit comments

Comments
 (0)