19 lines
587 B
Java
19 lines
587 B
Java
package io.gitlab.jfronny.libjf.config.impl.watch;
|
|
|
|
import io.gitlab.jfronny.commons.throwable.ThrowingRunnable;
|
|
import io.gitlab.jfronny.libjf.LibJf;
|
|
|
|
import java.io.Closeable;
|
|
import java.nio.file.Path;
|
|
|
|
public interface JfConfigWatchService extends Closeable {
|
|
static <TEx extends Throwable> void lock(Path p, ThrowingRunnable<TEx> task) throws TEx {
|
|
JfConfigWatchServiceImpl.lock(p, task
|
|
.compose(() -> LibJf.LOGGER.info("Locking"))
|
|
.andThen(() -> LibJf.LOGGER.info("Ran task after lock"))
|
|
);
|
|
}
|
|
|
|
void executeIteration();
|
|
}
|