diff options
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/concurrent/maintenance/JobControlState.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/concurrent/maintenance/JobControlState.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/concurrent/maintenance/JobControlState.java b/vespajlib/src/main/java/com/yahoo/concurrent/maintenance/JobControlState.java new file mode 100644 index 00000000000..f5bfeee8d0e --- /dev/null +++ b/vespajlib/src/main/java/com/yahoo/concurrent/maintenance/JobControlState.java @@ -0,0 +1,21 @@ +// 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.Set; + +/** + * Interface for managing job state and synchronization + * + * @author mpolden + */ +public interface JobControlState { + + /** Returns the set of jobs that are temporarily inactive */ + Set<String> readInactiveJobs(); + + /** Acquire lock for running given job */ + Mutex lockMaintenanceJob(String job); + +} |