
com.gruelbox.transactionoutbox.ThrowingTransactionalSupplier Maven / Gradle / Ivy
package com.gruelbox.transactionoutbox;
@FunctionalInterface
public interface ThrowingTransactionalSupplier {
static ThrowingTransactionalSupplier fromRunnable(
Runnable runnable) {
return transaction -> {
runnable.run();
return null;
};
}
static ThrowingTransactionalSupplier fromWork(
ThrowingTransactionalWork work) {
return transaction -> {
work.doWork(transaction);
return null;
};
}
static ThrowingTransactionalSupplier fromWork(TransactionalWork work) {
return transaction -> {
work.doWork(transaction);
return null;
};
}
static ThrowingTransactionalSupplier fromSupplier(
TransactionalSupplier work) {
return work::doWork;
}
T doWork(Transaction transaction) throws E;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy