Package io.webdevice.device
Class DevicePool<Driver extends org.openqa.selenium.WebDriver>
java.lang.Object
io.webdevice.device.DevicePool<Driver>
- All Implemented Interfaces:
DeviceProvider<Driver>,java.util.function.Consumer<Device<Driver>>,java.util.function.Supplier<Device<Driver>>
public class DevicePool<Driver extends org.openqa.selenium.WebDriver> extends java.lang.Object implements DeviceProvider<Driver>
A naive and unoptimized
Device pool-
Constructor Summary
Constructors Modifier Constructor Description DevicePool(java.lang.String name, DeviceProvider<Driver> provider, java.util.function.Function<Device<Driver>,java.lang.Boolean> test)protectedDevicePool(java.lang.String name, DeviceProvider<Driver> provider, java.util.function.Function<Device<Driver>,java.lang.Boolean> test, java.util.concurrent.BlockingDeque<Device<Driver>> free, java.util.concurrent.BlockingDeque<Device<Driver>> used) -
Method Summary
-
Constructor Details
-
DevicePool
-
DevicePool
public DevicePool(java.lang.String name, DeviceProvider<Driver> provider, java.util.function.Function<Device<Driver>,java.lang.Boolean> test)
-
-
Method Details
-
get
Acquires aDevicefor exclusive use -
accept
Marks theDeviceas free for use- Specified by:
acceptin interfacejava.util.function.Consumer<Driver extends org.openqa.selenium.WebDriver>- Specified by:
acceptin interfaceDeviceProvider<Driver extends org.openqa.selenium.WebDriver>- Parameters:
device- TheDeviceto be made available
-
dispose
public void dispose()- Specified by:
disposein interfaceDeviceProvider<Driver extends org.openqa.selenium.WebDriver>
-