Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# tx-lcn分布式事务框架 (5.0.0)
# tx-lcn分布式事务框架 (5.0.0.RELEASE)

[![Gitter](https://badges.gitter.im/codingapi/tx-lcn.svg)](https://gitter.im/codingapi/tx-lcn?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![BBS](https://bbs.txlcn.org/style/Archlinux/txlcn-bbs.svg)](https://bbs.txlcn.org)
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.codingapi.txlcn</groupId>
<artifactId>tx-lcn</artifactId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
<packaging>pom</packaging>


Expand Down Expand Up @@ -43,7 +43,7 @@
<maven.javadoc.plugin>2.10.3</maven.javadoc.plugin>
<maven.gpg.plugin>1.6</maven.gpg.plugin>

<codingapi.txlcn.version>5.0.0</codingapi.txlcn.version>
<codingapi.txlcn.version>5.0.0.RELEASE</codingapi.txlcn.version>

<txlcn-org.projectlombok.version>1.18.0</txlcn-org.projectlombok.version>
<txlcn-spring-cloud.version>Finchley.SR2</txlcn-spring-cloud.version>
Expand Down
2 changes: 1 addition & 1 deletion run.txmanager.bat
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
@echo off

start java -jar -Xms256m -Xmx512m txlcn-tm/target/txlcn-tm-5.0.0.jar
start java -jar -Xms256m -Xmx512m txlcn-tm/target/txlcn-tm-5.0.0.RELEASE.jar

2 changes: 1 addition & 1 deletion txlcn-common/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>tx-lcn</artifactId>
<groupId>com.codingapi.txlcn</groupId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,17 @@ public class Transactions {

public static final String TAG_TASK = "Transaction Task";


/**
* 分布式事务类型 Properties传递参数key
*/
public static final String DTX_TYPE = "DTX_TYPE";

/**
* 分布式事务传播类型 Properties传递参数key
*/
public static final String DTX_PROPAGATION = "DTX_PROPAGATION";

/////////// 工具方法 ////////////////////////////////////////////

/**
Expand Down
2 changes: 1 addition & 1 deletion txlcn-logger/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>tx-lcn</artifactId>
<groupId>com.codingapi.txlcn</groupId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
2 changes: 1 addition & 1 deletion txlcn-tc/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.codingapi.txlcn</groupId>
<artifactId>tx-lcn</artifactId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>

<artifactId>txlcn-tc</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,22 @@ public enum DTXPropagation {
/**
* 当前没有分布式事务,非分布式事务运行。当前有分布式事务,就加入
*/
SUPPORTS
SUPPORTS;



public static DTXPropagation parser(String code){
switch (code){
case "REQUIRED":{
return REQUIRED;
}
case "SUPPORTS":{
return SUPPORTS;
}
default:{
return REQUIRED;
}
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
import org.aopalliance.intercept.MethodInvocation;
import org.springframework.transaction.interceptor.TransactionInterceptor;

import java.util.Properties;

/**
* Description:
* Date: 1/12/19
Expand All @@ -30,13 +32,21 @@ public class DTXInterceptor extends TransactionInterceptor {

private final DTXLogicWeaver dtxLogicWeaver;

private Properties transactionAttributes;

public DTXInterceptor(DTXLogicWeaver dtxLogicWeaver) {
this.dtxLogicWeaver = dtxLogicWeaver;
}

@Override
public void setTransactionAttributes(Properties transactionAttributes) {
this.transactionAttributes = transactionAttributes;
super.setTransactionAttributes(transactionAttributes);
}

@Override
public Object invoke(MethodInvocation invocation) throws Throwable {
return dtxLogicWeaver.runTransaction(InterceptorInvocationUtils.load(invocation), () -> super.invoke(invocation));
return dtxLogicWeaver.runTransaction(InterceptorInvocationUtils.load(invocation,transactionAttributes), () -> super.invoke(invocation));
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import org.aopalliance.intercept.MethodInvocation;

import java.util.Objects;
import java.util.Properties;

/**
* Description:
Expand All @@ -31,11 +32,17 @@
*/
class InterceptorInvocationUtils {

static DTXInfo load(MethodInvocation invocation) {
TxTransaction txTransaction = invocation.getMethod().getAnnotation(TxTransaction.class);
static DTXInfo load(MethodInvocation invocation, Properties transactionAttributes) {
//默认值
String transactionType = Transactions.LCN;
DTXPropagation dtxPropagation = DTXPropagation.REQUIRED;

//优先获取配置的信息
if(transactionAttributes!=null){
transactionType = transactionAttributes.getProperty(Transactions.DTX_TYPE);
dtxPropagation = DTXPropagation.parser(transactionAttributes.getProperty(Transactions.DTX_PROPAGATION));
}
//获取注解的信息
TxTransaction txTransaction = invocation.getMethod().getAnnotation(TxTransaction.class);
if (Objects.nonNull(txTransaction)) {
transactionType = txTransaction.type();
dtxPropagation = txTransaction.propagation();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;

import java.util.Properties;

/**
* Description:
* Date: 1/12/19
Expand All @@ -29,12 +31,18 @@ public class TxLcnInterceptor implements MethodInterceptor {

private final DTXLogicWeaver dtxLogicWeaver;

private Properties transactionAttributes;

public TxLcnInterceptor(DTXLogicWeaver dtxLogicWeaver) {
this.dtxLogicWeaver = dtxLogicWeaver;
}

public void setTransactionAttributes(Properties transactionAttributes) {
this.transactionAttributes = transactionAttributes;
}

@Override
public Object invoke(MethodInvocation invocation) throws Throwable {
return dtxLogicWeaver.runTransaction(InterceptorInvocationUtils.load(invocation), invocation::proceed);
return dtxLogicWeaver.runTransaction(InterceptorInvocationUtils.load(invocation,transactionAttributes), invocation::proceed);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
* Date: 1/19/19
*
* @author ujued
* @since 5.0.0
* @since 5.0.0.RELEASE
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
Expand Down
2 changes: 1 addition & 1 deletion txlcn-tc/src/main/resources/banner.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ ${AnsiColor.BRIGHT_GREEN}
| | / /^\ \ | |___| \__/\| |\ |
\_/ \/ \/ \_____/\____/\_| \_/

TX-LCN TxClient version:5.0.0
TX-LCN TxClient version:5.0.0.RELEASE
4 changes: 2 additions & 2 deletions txlcn-tm/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
<parent>
<groupId>com.codingapi.txlcn</groupId>
<artifactId>tx-lcn</artifactId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>

<artifactId>txlcn-tm</artifactId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
<packaging>jar</packaging>

<dependencies>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
*/
public class TxLcnManagerBanner implements Banner {

public static final String VERSION = "5.0.0";
public static final String VERSION = "5.0.0.RELEASE";

private static final String BANNER =
" _______ __ _ _____ _ _ \n" +
Expand Down
2 changes: 1 addition & 1 deletion txlcn-tracing/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>tx-lcn</artifactId>
<groupId>com.codingapi.txlcn</groupId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@
* @author ujued
*/
@Configuration
@ConditionalOnClass(IRule.class)
public class LoadbalancerConfiguration {

@Bean
@ConditionalOnClass(IRule.class)
@ConditionalOnProperty(name = "tx-lcn.ribbon.loadbalancer.dtx.enabled", havingValue = "true")
@Scope("prototype")
public IRule ribbonRule(Registration registration) {
Expand Down
2 changes: 1 addition & 1 deletion txlcn-txmsg-netty/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>tx-lcn</artifactId>
<groupId>com.codingapi.txlcn</groupId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down
2 changes: 1 addition & 1 deletion txlcn-txmsg/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<artifactId>tx-lcn</artifactId>
<groupId>com.codingapi.txlcn</groupId>
<version>5.0.0</version>
<version>5.0.0.RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>

Expand Down