Skip to content

Commit 0f2795d

Browse files
committed
Avoid creating intermediate map when creating immutable capabilities
1 parent e6f1131 commit 0f2795d

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

java/client/src/org/openqa/selenium/ImmutableCapabilities.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,12 @@ public ImmutableCapabilities(
6868
}
6969

7070
public ImmutableCapabilities(Capabilities other) {
71-
this(other.asMap());
71+
Require.nonNull("Capabilities", other);
72+
other.getCapabilityNames().forEach(name -> delegate.setCapability(name, other.getCapability(name)));
7273
}
7374

7475
public ImmutableCapabilities(Map<?, ?> capabilities) {
76+
Require.nonNull("Capabilities", capabilities);
7577
capabilities.forEach((key, value) -> {
7678
Require.argument("Key", key).instanceOf(String.class);
7779
delegate.setCapability(String.valueOf(key), value);
@@ -118,4 +120,4 @@ public static ImmutableCapabilities copyOf(Capabilities capabilities) {
118120

119121
return new ImmutableCapabilities(capabilities);
120122
}
121-
}
123+
}

0 commit comments

Comments
 (0)