package io.lumify.core.model.lock; import com.google.inject.Inject; import io.lumify.core.config.Configuration; import java.util.concurrent.Callable; public class LocalLockRepository extends LockRepository { @Inject public LocalLockRepository(Configuration configuration) { super(null, configuration); } @Override public Lock createLock(String lockName) { return new Lock(null, lockName) { @Override public <T> T run(Callable<T> runnable) { try { return runnable.call(); } catch (Exception ex) { throw new RuntimeException("Failed to run in lock", ex); } } }; } }