Interface TransactionalPublisher<P>
- Type Parameters:
P- publisher type that must be annotated withKafkaPublisher
- All Known Implementing Classes:
TransactionalPublisherImpl
public interface TransactionalPublisher<P>
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfacestatic interfacestatic interfacestatic interfacestatic interface -
Method Summary
Modifier and TypeMethodDescriptionTransactionalPublisher.Transaction<? extends P>begin()Initialize Publisher in transaction modeProducer.initTransactions()and then begins transactionProducer.beginTransaction()and returns publisher in such statedefault <E extends Throwable>
voidinTx(TransactionalPublisher.TransactionalConsumer<P, E> callback) default <E extends Throwable,R>
RinTx(TransactionalPublisher.TransactionalFunction<P, E, R> callback) default <E extends Throwable>
voidwithTx(TransactionalPublisher.TransactionConsumer<P, E> callback) default <E extends Throwable,R>
RwithTx(TransactionalPublisher.TransactionFunction<P, E, R> callback)
-
Method Details
-
begin
TransactionalPublisher.Transaction<? extends P> begin()Initialize Publisher in transaction modeProducer.initTransactions()and then begins transactionProducer.beginTransaction()and returns publisher in such state- Returns:
- Publisher as
TransactionalPublisherIt is expected that you will manually call
Producer.commitTransaction()orProducer.abortTransaction()and thenProducer.close()
-
inTx
default <E extends Throwable> void inTx(TransactionalPublisher.TransactionalConsumer<P, E> callback) throws E- Throws:
E extends Throwable
-
inTx
default <E extends Throwable,R> R inTx(TransactionalPublisher.TransactionalFunction<P, E, throws ER> callback) - Throws:
E extends Throwable
-
withTx
default <E extends Throwable> void withTx(TransactionalPublisher.TransactionConsumer<P, E> callback) throws E- Throws:
E extends Throwable
-
withTx
default <E extends Throwable,R> R withTx(TransactionalPublisher.TransactionFunction<P, E, throws ER> callback) - Throws:
E extends Throwable
-