diff options
Diffstat (limited to 'vespajlib/src/test/java/com/yahoo/concurrent/maintenance/JobControlStateMock.java')
-rw-r--r-- | vespajlib/src/test/java/com/yahoo/concurrent/maintenance/JobControlStateMock.java | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/vespajlib/src/test/java/com/yahoo/concurrent/maintenance/JobControlStateMock.java b/vespajlib/src/test/java/com/yahoo/concurrent/maintenance/JobControlStateMock.java new file mode 100644 index 00000000000..28c701a67db --- /dev/null +++ b/vespajlib/src/test/java/com/yahoo/concurrent/maintenance/JobControlStateMock.java @@ -0,0 +1,35 @@ +// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.concurrent.maintenance; + +import com.yahoo.transaction.Mutex; + +import java.util.Collections; +import java.util.HashSet; +import java.util.Set; + +/** + * @author mpolden + */ +class JobControlStateMock implements JobControlState { + + private final Set<String> inactiveJobs = new HashSet<>(); + + @Override + public Set<String> readInactiveJobs() { + return Collections.unmodifiableSet(inactiveJobs); + } + + @Override + public Mutex lockMaintenanceJob(String job) { + return () -> {}; + } + + public void setActive(String job, boolean active) { + if (active) { + inactiveJobs.remove(job); + } else { + inactiveJobs.add(job); + } + } + +} |