diff --git a/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java b/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java index d69ad10b..a52e580f 100644 --- a/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java +++ b/commafeed-server/src/main/java/com/commafeed/backend/dao/UnitOfWork.java @@ -1,5 +1,7 @@ package com.commafeed.backend.dao; +import java.util.concurrent.Callable; + import jakarta.inject.Singleton; import io.quarkus.narayana.jta.QuarkusTransaction; @@ -7,25 +9,11 @@ import io.quarkus.narayana.jta.QuarkusTransaction; @Singleton public class UnitOfWork { - public void run(SessionRunner runner) { - call(() -> { - runner.runInSession(); - return null; - }); + public void run(Runnable runnable) { + QuarkusTransaction.joiningExisting().run(runnable); } - public T call(SessionRunnerReturningValue runner) { - return QuarkusTransaction.joiningExisting().call(runner::runInSession); + public T call(Callable callable) { + return QuarkusTransaction.joiningExisting().call(callable); } - - @FunctionalInterface - public interface SessionRunner { - void runInSession(); - } - - @FunctionalInterface - public interface SessionRunnerReturningValue { - T runInSession(); - } - }