@@ -65,24 +65,21 @@ class ExternalDriverSupplier implements Supplier<WebDriver> {
65
65
private static final String EXTERNAL_SERVER_URL_PROPERTY = "selenium.external.serverUrl" ;
66
66
67
67
private final Capabilities desiredCapabilities ;
68
- private final Capabilities requiredCapabilities ;
69
68
70
- ExternalDriverSupplier (Capabilities desiredCapabilities , Capabilities requiredCapabilities ) {
69
+ ExternalDriverSupplier (Capabilities desiredCapabilities ) {
71
70
this .desiredCapabilities = new DesiredCapabilities (desiredCapabilities );
72
- this .requiredCapabilities = new DesiredCapabilities (requiredCapabilities );
73
71
}
74
72
75
73
@ Override
76
74
public WebDriver get () {
77
- Optional <Supplier <WebDriver >> delegate = createDelegate (
78
- desiredCapabilities , requiredCapabilities );
79
- delegate = createForExternalServer (desiredCapabilities , requiredCapabilities , delegate );
75
+ Optional <Supplier <WebDriver >> delegate = createDelegate (desiredCapabilities );
76
+ delegate = createForExternalServer (desiredCapabilities , delegate );
80
77
81
78
return delegate .orElse (Suppliers .ofInstance (null )).get ();
82
79
}
83
80
84
81
private static Optional <Supplier <WebDriver >> createForExternalServer (
85
- Capabilities desiredCapabilities , Capabilities requiredCapabilities ,
82
+ Capabilities desiredCapabilities ,
86
83
Optional <Supplier <WebDriver >> delegate ) {
87
84
String externalUrl = System .getProperty (EXTERNAL_SERVER_URL_PROPERTY );
88
85
if (externalUrl != null ) {
@@ -93,27 +90,24 @@ private static Optional<Supplier<WebDriver>> createForExternalServer(
93
90
} catch (MalformedURLException e ) {
94
91
throw new RuntimeException ("Invalid server URL: " + externalUrl , e );
95
92
}
96
- Supplier <WebDriver > defaultSupplier = new DefaultRemoteSupplier (
97
- url , desiredCapabilities , requiredCapabilities );
93
+ Supplier <WebDriver > defaultSupplier = new DefaultRemoteSupplier (url , desiredCapabilities );
98
94
Supplier <WebDriver > supplier = new ExternalServerDriverSupplier (
99
95
url , delegate .orElse (defaultSupplier ));
100
96
return Optional .of (supplier );
101
97
}
102
98
return delegate ;
103
99
}
104
100
105
- private static Optional <Supplier <WebDriver >> createDelegate (
106
- Capabilities desiredCapabilities , Capabilities requiredCapabilities ) {
101
+ private static Optional <Supplier <WebDriver >> createDelegate (Capabilities desiredCapabilities ) {
107
102
Optional <Class <? extends Supplier >> supplierClass = getDelegateClass ();
108
103
if (supplierClass .isPresent ()) {
109
104
Class <? extends Supplier > clazz = supplierClass .get ();
110
105
logger .info ("Using delegate supplier: " + clazz .getName ());
111
106
try {
112
107
@ SuppressWarnings ("unchecked" )
113
108
Constructor <Supplier <WebDriver >> ctor =
114
- (Constructor <Supplier <WebDriver >>) clazz .getConstructor (
115
- Capabilities .class , Capabilities .class );
116
- return Optional .of (ctor .newInstance (desiredCapabilities , requiredCapabilities ));
109
+ (Constructor <Supplier <WebDriver >>) clazz .getConstructor (Capabilities .class );
110
+ return Optional .of (ctor .newInstance (desiredCapabilities ));
117
111
} catch (InvocationTargetException e ) {
118
112
throw new RuntimeException (e .getTargetException ());
119
113
} catch (Exception e ) {
@@ -175,18 +169,15 @@ public WebDriver get() {
175
169
private static class DefaultRemoteSupplier implements Supplier <WebDriver > {
176
170
private final URL url ;
177
171
private final Capabilities desiredCapabilities ;
178
- private final Capabilities requiredCapabilities ;
179
172
180
- private DefaultRemoteSupplier (
181
- URL url , Capabilities desiredCapabilities , Capabilities requiredCapabilities ) {
173
+ private DefaultRemoteSupplier (URL url , Capabilities desiredCapabilities ) {
182
174
this .url = url ;
183
175
this .desiredCapabilities = desiredCapabilities ;
184
- this .requiredCapabilities = requiredCapabilities ;
185
176
}
186
177
187
178
@ Override
188
179
public WebDriver get () {
189
- RemoteWebDriver driver = new RemoteWebDriver (url , desiredCapabilities , requiredCapabilities );
180
+ RemoteWebDriver driver = new RemoteWebDriver (url , desiredCapabilities );
190
181
driver .setFileDetector (new LocalFileDetector ());
191
182
return driver ;
192
183
}
0 commit comments