From 2de296793261f1dafebc2f660c13808107286e6c Mon Sep 17 00:00:00 2001 From: forge-bot Date: Sat, 18 Jul 2026 11:07:07 +0000 Subject: [PATCH] =?UTF-8?q?[framework]=20TxCore=20=E2=86=92=20common-frame?= =?UTF-8?q?work=20(ACM-FW-001)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../framework/DefaultTxService.java | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 boot/common-framework/src/main/java/com/klaro/acquirecore/framework/DefaultTxService.java diff --git a/boot/common-framework/src/main/java/com/klaro/acquirecore/framework/DefaultTxService.java b/boot/common-framework/src/main/java/com/klaro/acquirecore/framework/DefaultTxService.java new file mode 100644 index 0000000..dc907ee --- /dev/null +++ b/boot/common-framework/src/main/java/com/klaro/acquirecore/framework/DefaultTxService.java @@ -0,0 +1,48 @@ +package com.klaro.acquirecore.framework; + +import org.springframework.stereotype.Service; + +/** + * Default implementation of TxService. + * Provides base transaction service functionality. + */ +@Service +public class DefaultTxService implements TxService { + + private final String serviceName; + private final TxTemplate txTemplate; + + public DefaultTxService() { + this("default"); + } + + public DefaultTxService(String serviceName) { + this.serviceName = serviceName; + this.txTemplate = new TxTemplate(); + } + + @Override + public String getServiceName() { + return serviceName; + } + + @Override + public TxResult execute(TxServiceRegistry.TxOperation operation) { + return txTemplate.execute(serviceName, operation); + } + + @Override + public TxContext beginTransaction() { + return txTemplate.txBegin(serviceName); + } + + @Override + public TxResult commit(TxContext context) { + return txTemplate.txCommit(context); + } + + @Override + public TxResult rollback(TxContext context, String reason) { + return txTemplate.txRollback(context, reason); + } +}