Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Shardingsphere
提交
e4b6bfce
Shardingsphere
项目概览
apache
/
Shardingsphere
通知
56
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Shardingsphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
e4b6bfce
编写于
1月 13, 2019
作者:
T
terrymanu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
remove XATransactionManager.getUnderlyingTransactionManager
上级
b3abc3b9
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
28 addition
and
37 deletion
+28
-37
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/main/java/io/shardingsphere/transaction/xa/XAShardingTransactionEngine.java
...ingsphere/transaction/xa/XAShardingTransactionEngine.java
+1
-1
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/main/java/io/shardingsphere/transaction/xa/manager/AtomikosTransactionManager.java
...re/transaction/xa/manager/AtomikosTransactionManager.java
+6
-2
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/test/java/io/shardingsphere/transaction/xa/XAShardingTransactionEngineTest.java
...phere/transaction/xa/XAShardingTransactionEngineTest.java
+8
-20
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/test/java/io/shardingsphere/transaction/xa/fixture/FixtureXATransactionManager.java
...e/transaction/xa/fixture/FixtureXATransactionManager.java
+6
-6
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-spi/src/main/java/io/shardingsphere/transaction/xa/spi/XATransactionManager.java
...ardingsphere/transaction/xa/spi/XATransactionManager.java
+0
-8
sharding-transaction/sharding-transaction-core/src/main/java/io/shardingsphere/transaction/core/ShardingTransactionManager.java
...ngsphere/transaction/core/ShardingTransactionManager.java
+7
-0
未找到文件。
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/main/java/io/shardingsphere/transaction/xa/XAShardingTransactionEngine.java
浏览文件 @
e4b6bfce
...
...
@@ -76,7 +76,7 @@ public final class XAShardingTransactionEngine implements ShardingTransactionEng
@SneakyThrows
@Override
public
boolean
isInTransaction
()
{
return
Status
.
STATUS_NO_TRANSACTION
!=
xaTransactionManager
.
get
UnderlyingTransactionManager
().
getTransaction
().
get
Status
();
return
Status
.
STATUS_NO_TRANSACTION
!=
xaTransactionManager
.
getStatus
();
}
@SneakyThrows
...
...
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/main/java/io/shardingsphere/transaction/xa/manager/AtomikosTransactionManager.java
浏览文件 @
e4b6bfce
...
...
@@ -21,7 +21,6 @@ import com.atomikos.icatch.config.UserTransactionService;
import
com.atomikos.icatch.config.UserTransactionServiceImp
;
import
com.atomikos.icatch.jta.UserTransactionManager
;
import
io.shardingsphere.transaction.xa.spi.XATransactionManager
;
import
lombok.Getter
;
import
lombok.SneakyThrows
;
import
javax.sql.XADataSource
;
...
...
@@ -35,7 +34,6 @@ import javax.transaction.xa.XAResource;
*/
public
final
class
AtomikosTransactionManager
implements
XATransactionManager
{
@Getter
private
final
UserTransactionManager
underlyingTransactionManager
=
new
UserTransactionManager
();
private
final
UserTransactionService
userTransactionService
=
new
UserTransactionServiceImp
();
...
...
@@ -82,6 +80,12 @@ public final class AtomikosTransactionManager implements XATransactionManager {
}
}
@Override
@SneakyThrows
public
int
getStatus
()
{
return
underlyingTransactionManager
.
getStatus
();
}
@Override
public
void
destroy
()
{
userTransactionService
.
shutdown
(
true
);
...
...
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/test/java/io/shardingsphere/transaction/xa/XAShardingTransactionEngineTest.java
浏览文件 @
e4b6bfce
...
...
@@ -36,9 +36,6 @@ import org.mockito.junit.MockitoJUnitRunner;
import
javax.sql.DataSource
;
import
javax.sql.XADataSource
;
import
javax.transaction.Status
;
import
javax.transaction.SystemException
;
import
javax.transaction.Transaction
;
import
javax.transaction.TransactionManager
;
import
javax.transaction.xa.XAResource
;
import
java.lang.reflect.Field
;
import
java.sql.Connection
;
...
...
@@ -66,22 +63,13 @@ public class XAShardingTransactionEngineTest {
@Mock
private
XATransactionManager
xaTransactionManager
;
@Mock
private
TransactionManager
transactionManager
;
@Mock
private
Transaction
transaction
;
@Before
public
void
setUp
()
throws
SystemException
{
setMockXATransactionManager
(
xaShardingTransactionEngine
,
xaTransactionManager
);
when
(
xaTransactionManager
.
getUnderlyingTransactionManager
()).
thenReturn
(
transactionManager
);
when
(
transactionManager
.
getTransaction
()).
thenReturn
(
transaction
);
public
void
setUp
()
throws
ReflectiveOperationException
{
setXATransactionManager
();
}
@SneakyThrows
private
void
setMockXATransactionManager
(
final
XAShardingTransactionEngine
xaShardingTransactionEngine
,
final
XATransactionManager
xaTransactionManager
)
{
Field
field
=
xaShardingTransactionEngine
.
getClass
().
getDeclaredField
(
"xaTransactionManager"
);
private
void
setXATransactionManager
()
throws
ReflectiveOperationException
{
Field
field
=
XAShardingTransactionEngine
.
class
.
getDeclaredField
(
"xaTransactionManager"
);
field
.
setAccessible
(
true
);
field
.
set
(
xaShardingTransactionEngine
,
xaTransactionManager
);
}
...
...
@@ -116,14 +104,14 @@ public class XAShardingTransactionEngineTest {
}
@Test
public
void
assertIsInTransaction
()
throws
SystemException
{
when
(
transaction
.
getStatus
()).
thenReturn
(
Status
.
STATUS_ACTIVE
);
public
void
assertIsInTransaction
()
{
when
(
xaTransactionManager
.
getStatus
()).
thenReturn
(
Status
.
STATUS_ACTIVE
);
assertTrue
(
xaShardingTransactionEngine
.
isInTransaction
());
}
@Test
public
void
assertIsNotInTransaction
()
throws
SystemException
{
when
(
transaction
.
getStatus
()).
thenReturn
(
Status
.
STATUS_NO_TRANSACTION
);
public
void
assertIsNotInTransaction
()
{
when
(
xaTransactionManager
.
getStatus
()).
thenReturn
(
Status
.
STATUS_NO_TRANSACTION
);
assertFalse
(
xaShardingTransactionEngine
.
isInTransaction
());
}
...
...
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-core/src/test/java/io/shardingsphere/transaction/xa/fixture/FixtureXATransactionManager.java
浏览文件 @
e4b6bfce
...
...
@@ -20,7 +20,7 @@ package io.shardingsphere.transaction.xa.fixture;
import
io.shardingsphere.transaction.xa.spi.XATransactionManager
;
import
javax.sql.XADataSource
;
import
javax.transaction.
TransactionManager
;
import
javax.transaction.
Status
;
import
javax.transaction.xa.XAResource
;
public
final
class
FixtureXATransactionManager
implements
XATransactionManager
{
...
...
@@ -29,11 +29,6 @@ public final class FixtureXATransactionManager implements XATransactionManager {
public
void
startup
()
{
}
@Override
public
TransactionManager
getUnderlyingTransactionManager
()
{
return
null
;
}
@Override
public
void
registerRecoveryResource
(
final
String
dataSourceName
,
final
XADataSource
xaDataSource
)
{
}
...
...
@@ -58,6 +53,11 @@ public final class FixtureXATransactionManager implements XATransactionManager {
public
void
rollback
()
{
}
@Override
public
int
getStatus
()
{
return
Status
.
STATUS_NO_TRANSACTION
;
}
@Override
public
void
destroy
()
{
}
...
...
sharding-transaction/sharding-transaction-2pc/sharding-transaction-xa/sharding-transaction-xa-spi/src/main/java/io/shardingsphere/transaction/xa/spi/XATransactionManager.java
浏览文件 @
e4b6bfce
...
...
@@ -20,7 +20,6 @@ package io.shardingsphere.transaction.xa.spi;
import
io.shardingsphere.transaction.core.ShardingTransactionManager
;
import
javax.sql.XADataSource
;
import
javax.transaction.TransactionManager
;
import
javax.transaction.xa.XAResource
;
/**
...
...
@@ -36,13 +35,6 @@ public interface XATransactionManager extends ShardingTransactionManager {
*/
void
startup
();
/**
* Get transaction manager for vendor provided.
*
* @return transaction manager
*/
TransactionManager
getUnderlyingTransactionManager
();
/**
* Register recovery resource.
*
...
...
sharding-transaction/sharding-transaction-core/src/main/java/io/shardingsphere/transaction/core/ShardingTransactionManager.java
浏览文件 @
e4b6bfce
...
...
@@ -40,4 +40,11 @@ public interface ShardingTransactionManager {
* Rollback transaction.
*/
void
rollback
();
/**
* Get transaction status.
*
* @return transaction status
*/
int
getStatus
();
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录