Skip to content

Commit d1b8e6c

Browse files
committed
[java] Improving FirefoxDriver BiDi
Credits to @pujagani
1 parent 6867e4f commit d1b8e6c

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

java/src/org/openqa/selenium/firefox/FirefoxDriver.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public class FirefoxDriver extends RemoteWebDriver
8888
private final Optional<URI> biDiUri;
8989
private Connection connection;
9090
private DevTools devTools;
91-
private BiDi biDi;
91+
private Optional<BiDi> biDi;
9292

9393
/**
9494
* Creates a new FirefoxDriver using the {@link GeckoDriverService#createDefaultService)} server
@@ -175,6 +175,8 @@ private FirefoxDriver(
175175
return null;
176176
});
177177

178+
this.biDi = createBiDi(biDiUri);
179+
178180
this.cdpUri = cdpUri;
179181
this.capabilities =
180182
cdpUri
@@ -321,12 +323,7 @@ public DevTools getDevTools() {
321323
.orElseThrow(() -> new DevToolsException("Unable to initialize CDP connection"));
322324
}
323325

324-
@Override
325-
public Optional<BiDi> maybeGetBiDi() {
326-
if (biDi != null) {
327-
return Optional.of(biDi);
328-
}
329-
326+
private Optional<BiDi> createBiDi(Optional<URI> biDiUri) {
330327
if (!biDiUri.isPresent()) {
331328
return Optional.empty();
332329
}
@@ -340,12 +337,15 @@ public Optional<BiDi> maybeGetBiDi() {
340337
ClientConfig wsConfig = ClientConfig.defaultConfig().baseUri(wsUri);
341338
HttpClient wsClient = clientFactory.createClient(wsConfig);
342339

343-
org.openqa.selenium.bidi.Connection connection =
340+
org.openqa.selenium.bidi.Connection biDiConnection =
344341
new org.openqa.selenium.bidi.Connection(wsClient, wsUri.toString());
345342

346-
biDi = new BiDi(connection);
343+
return Optional.of(new BiDi(biDiConnection));
344+
}
347345

348-
return Optional.of(biDi);
346+
@Override
347+
public Optional<BiDi> maybeGetBiDi() {
348+
return biDi;
349349
}
350350

351351
@Override

0 commit comments

Comments
 (0)