Skip to content

Commit 13a2ae2

Browse files
committed
[grid] Removing Regularly from LocalNode
1 parent 409c389 commit 13a2ae2

1 file changed

Lines changed: 38 additions & 8 deletions

File tree

java/src/org/openqa/selenium/grid/node/local/LocalNode.java

Lines changed: 38 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
import org.openqa.selenium.PersistentCapabilities;
4343
import org.openqa.selenium.RetrySessionRequestException;
4444
import org.openqa.selenium.WebDriverException;
45-
import org.openqa.selenium.concurrent.Regularly;
4645
import org.openqa.selenium.events.EventBus;
4746
import org.openqa.selenium.grid.data.Availability;
4847
import org.openqa.selenium.grid.data.CreateSessionRequest;
@@ -96,6 +95,9 @@
9695
import java.util.Set;
9796
import java.util.UUID;
9897
import java.util.concurrent.ExecutionException;
98+
import java.util.concurrent.Executors;
99+
import java.util.concurrent.ScheduledExecutorService;
100+
import java.util.concurrent.TimeUnit;
99101
import java.util.concurrent.atomic.AtomicInteger;
100102
import java.util.logging.Logger;
101103
import java.util.stream.Collectors;
@@ -169,13 +171,41 @@ private LocalNode(
169171
})
170172
.build();
171173

172-
Regularly sessionCleanup = new Regularly("Session Cleanup Node: " + externalUri);
173-
sessionCleanup.submit(currentSessions::cleanUp, Duration.ofSeconds(30), Duration.ofSeconds(30));
174-
Regularly tmpFileCleanup = new Regularly("TempFile Cleanup Node: " + externalUri);
175-
tmpFileCleanup.submit(tempFileSystems::cleanUp, Duration.ofSeconds(30), Duration.ofSeconds(30));
176-
Regularly regularHeartBeat = new Regularly("Heartbeat Node: " + externalUri);
177-
regularHeartBeat.submit(() -> bus.fire(new NodeHeartBeatEvent(getStatus())), heartbeatPeriod,
178-
heartbeatPeriod);
174+
ScheduledExecutorService sessionCleanupNodeService =
175+
Executors.newSingleThreadScheduledExecutor(
176+
r -> {
177+
Thread thread = new Thread(r);
178+
thread.setDaemon(true);
179+
thread.setName("Session Cleanup Node " + externalUri);
180+
return thread;
181+
});
182+
sessionCleanupNodeService.scheduleAtFixedRate(
183+
currentSessions::cleanUp, 30, 30, TimeUnit.SECONDS);
184+
185+
ScheduledExecutorService tempFileCleanupNodeService =
186+
Executors.newSingleThreadScheduledExecutor(
187+
r -> {
188+
Thread thread = new Thread(r);
189+
thread.setDaemon(true);
190+
thread.setName("TempFile Cleanup Node " + externalUri);
191+
return thread;
192+
});
193+
tempFileCleanupNodeService.scheduleAtFixedRate(
194+
tempFileSystems::cleanUp, 30, 30, TimeUnit.SECONDS);
195+
196+
ScheduledExecutorService heartbeatNodeService =
197+
Executors.newSingleThreadScheduledExecutor(
198+
r -> {
199+
Thread thread = new Thread(r);
200+
thread.setDaemon(true);
201+
thread.setName("TempFile Cleanup Node " + externalUri);
202+
return thread;
203+
});
204+
heartbeatNodeService.scheduleAtFixedRate(
205+
() -> bus.fire(new NodeHeartBeatEvent(getStatus())),
206+
heartbeatPeriod.getSeconds(),
207+
heartbeatPeriod.getSeconds(),
208+
TimeUnit.SECONDS);
179209

180210
bus.addListener(SessionClosedEvent.listener(id -> {
181211
// Listen to session terminated events so we know when to fire the NodeDrainComplete event

0 commit comments

Comments
 (0)