Skip to content

Commit 4aad8d2

Browse files
authored
Merge pull request #38 from hengboy/2.3.x
Adapt "minbox-datasource-switch" component
2 parents c955c17 + 95b6206 commit 4aad8d2

File tree

23 files changed

+43
-715
lines changed

23 files changed

+43
-715
lines changed

api-boot-project/api-boot-autoconfigure/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,12 @@
136136
<artifactId>minbox-resource-load</artifactId>
137137
<optional>true</optional>
138138
</dependency>
139+
<dependency>
140+
<groupId>org.minbox.framework</groupId>
141+
<artifactId>minbox-datasource-switch</artifactId>
142+
<optional>true</optional>
143+
</dependency>
144+
139145

140146
<!--Others-->
141147
<dependency>

api-boot-project/api-boot-autoconfigure/src/main/java/org/minbox/framework/api/boot/autoconfigure/datasource/ApiBootDataSourceSwitchAutoConfiguration.java

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package org.minbox.framework.api.boot.autoconfigure.datasource;
22

3-
import org.minbox.framework.api.boot.datasource.ApiBootDataSource;
4-
import org.minbox.framework.api.boot.datasource.ApiBootDataSourceFactoryBean;
5-
import org.minbox.framework.api.boot.datasource.aop.advistor.ApiBootDataSourceSwitchAdvisor;
6-
import org.minbox.framework.api.boot.datasource.aop.interceptor.ApiBootDataSourceSwitchAnnotationInterceptor;
7-
import org.minbox.framework.api.boot.datasource.config.DataSourceConfig;
8-
import org.minbox.framework.api.boot.datasource.config.DataSourceDruidConfig;
9-
import org.minbox.framework.api.boot.datasource.routing.ApiBootRoutingDataSource;
10-
import org.minbox.framework.api.boot.datasource.support.ApiBootDruidDataSource;
11-
import org.minbox.framework.api.boot.datasource.support.ApiBootHikariDataSource;
3+
import com.alibaba.druid.pool.DruidDataSource;
4+
import org.minbox.framework.datasource.DataSourceFactoryBean;
5+
import org.minbox.framework.datasource.MinBoxDataSource;
6+
import org.minbox.framework.datasource.aop.advistor.DataSourceSwitchAdvisor;
7+
import org.minbox.framework.datasource.aop.interceptor.DataSourceSwitchAnnotationInterceptor;
8+
import org.minbox.framework.datasource.config.DataSourceConfig;
9+
import org.minbox.framework.datasource.config.DataSourceDruidConfig;
10+
import org.minbox.framework.datasource.routing.ApiBootRoutingDataSource;
11+
import org.minbox.framework.datasource.support.MinBoxDruidDataSource;
12+
import org.minbox.framework.datasource.support.MinBoxHikariDataSource;
1213
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
1314
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
1415
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
@@ -30,7 +31,7 @@
3031
* @author 恒宇少年
3132
*/
3233
@Configuration
33-
@ConditionalOnClass({ApiBootDataSource.class, AbstractRoutingDataSource.class})
34+
@ConditionalOnClass({MinBoxDataSource.class, AbstractRoutingDataSource.class})
3435
@EnableConfigurationProperties(ApiBootDataSourceSwitchProperties.class)
3536
@AutoConfigureBefore(DataSourceAutoConfiguration.class)
3637
public class ApiBootDataSourceSwitchAutoConfiguration {
@@ -51,21 +52,21 @@ public ApiBootDataSourceSwitchAutoConfiguration(ApiBootDataSourceSwitchPropertie
5152
*/
5253
@Bean
5354
@ConditionalOnMissingBean
54-
public ApiBootDataSourceFactoryBean apiBootDataSourceFactoryBean() {
55-
return new ApiBootDataSourceFactoryBean();
55+
public DataSourceFactoryBean dataSourceFactoryBean() {
56+
return new DataSourceFactoryBean();
5657
}
5758

5859
/**
5960
* ApiBoot Routing DataSource
6061
* switch use datasource
6162
* {@link DataSource}
6263
*
63-
* @param apiBootDataSourceFactoryBean ApiBoot DataSource FactoryBean
64+
* @param dataSourceFactoryBean ApiBoot DataSource FactoryBean
6465
* @return DataSource
6566
*/
6667
@Bean
6768
@ConditionalOnMissingBean
68-
public DataSource dataSource(ApiBootDataSourceFactoryBean apiBootDataSourceFactoryBean) {
69+
public DataSource dataSource(DataSourceFactoryBean dataSourceFactoryBean) {
6970
List<DataSourceConfig> dataSourceConfigList = new LinkedList();
7071
Map<String, DataSourceConfig> dataSourceConfigMap = new HashMap(1);
7172

@@ -80,13 +81,13 @@ public DataSource dataSource(ApiBootDataSourceFactoryBean apiBootDataSourceFacto
8081
// set data source pool name
8182
dataSourceConfig.setPoolName(poolName);
8283
// datasource type
83-
dataSourceConfig.setDataSourceType(dataSourceConfig instanceof DataSourceDruidConfig ? ApiBootDruidDataSource.class : ApiBootHikariDataSource.class);
84+
dataSourceConfig.setDataSourceType(dataSourceConfig instanceof DataSourceDruidConfig ? MinBoxDruidDataSource.class : MinBoxHikariDataSource.class);
8485

8586
// after convert add to data source list
8687
dataSourceConfigList.add(dataSourceConfig);
8788
});
8889

89-
return new ApiBootRoutingDataSource(apiBootDataSourceFactoryBean, apiBootDataSourceSwitchProperties.getPrimary(), dataSourceConfigList);
90+
return new ApiBootRoutingDataSource(dataSourceFactoryBean, apiBootDataSourceSwitchProperties.getPrimary(), dataSourceConfigList);
9091
}
9192

9293
/**
@@ -96,21 +97,21 @@ public DataSource dataSource(ApiBootDataSourceFactoryBean apiBootDataSourceFacto
9697
*/
9798
@Bean
9899
@ConditionalOnMissingBean
99-
public ApiBootDataSourceSwitchAnnotationInterceptor apiBootDataSourceSwitchAnnotationInterceptor() {
100-
return new ApiBootDataSourceSwitchAnnotationInterceptor();
100+
public DataSourceSwitchAnnotationInterceptor dataSourceSwitchAnnotationInterceptor() {
101+
return new DataSourceSwitchAnnotationInterceptor();
101102
}
102103

103104
/**
104105
* ApiBoot DataSource Switch Advisor
105106
* Used to get @DataSourceSwitch annotation define
106107
*
107-
* @param apiBootDataSourceSwitchAnnotationInterceptor ApiBoot DataSource Annotation Interceptor
108+
* @param dataSourceSwitchAnnotationInterceptor ApiBoot DataSource Annotation Interceptor
108109
* @return ApiBootDataSourceSwitchAdvisor
109110
*/
110111
@Bean
111112
@ConditionalOnMissingBean
112-
public ApiBootDataSourceSwitchAdvisor apiBootDataSourceSwitchAdvisor(ApiBootDataSourceSwitchAnnotationInterceptor apiBootDataSourceSwitchAnnotationInterceptor) {
113-
return new ApiBootDataSourceSwitchAdvisor(apiBootDataSourceSwitchAnnotationInterceptor);
113+
public DataSourceSwitchAdvisor apiBootDataSourceSwitchAdvisor(DataSourceSwitchAnnotationInterceptor dataSourceSwitchAnnotationInterceptor) {
114+
return new DataSourceSwitchAdvisor(dataSourceSwitchAnnotationInterceptor);
114115
}
115116

116117
}

api-boot-project/api-boot-autoconfigure/src/main/java/org/minbox/framework/api/boot/autoconfigure/datasource/ApiBootDataSourceSwitchProperties.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
package org.minbox.framework.api.boot.autoconfigure.datasource;
22

33
import lombok.Data;
4-
import org.minbox.framework.api.boot.datasource.config.DataSourceDruidConfig;
5-
import org.minbox.framework.api.boot.datasource.config.DataSourceHikariConfig;
4+
import org.minbox.framework.datasource.config.DataSourceDruidConfig;
5+
import org.minbox.framework.datasource.config.DataSourceHikariConfig;
66
import org.springframework.boot.context.properties.ConfigurationProperties;
77
import org.springframework.context.annotation.Configuration;
88

api-boot-project/api-boot-dependencies/pom.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
<minbox-logging.version>1.0.5.RELEASE</minbox-logging.version>
2828
<minbox-ratelimiter.version>1.0.0.RELEASE</minbox-ratelimiter.version>
2929
<minbox-resource-load.version>1.0.0.RELEASE</minbox-resource-load.version>
30+
<minbox-datasource-switch.version>1.0.0.RELEASE</minbox-datasource-switch.version>
3031
<minbox-mongo-client-settings.version>1.0.0.RELEASE</minbox-mongo-client-settings.version>
3132
<code.builder.core.version>1.0.5.RELEASE</code.builder.core.version>
3233
<mybatis-enhance.version>1.1.3.RELEASE</mybatis-enhance.version>
@@ -176,6 +177,11 @@
176177
<artifactId>minbox-resource-load</artifactId>
177178
<version>${minbox-resource-load.version}</version>
178179
</dependency>
180+
<dependency>
181+
<groupId>org.minbox.framework</groupId>
182+
<artifactId>minbox-datasource-switch</artifactId>
183+
<version>${minbox-datasource-switch.version}</version>
184+
</dependency>
179185

180186

181187
<!--ApiBoot Dependencies-->

api-boot-project/api-boot-starters/api-boot-starter-datasource-switch/pom.xml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,14 @@
2727
<tag>HEAD</tag>
2828
</scm>
2929
<dependencies>
30-
<!--ApiBoot Starter-->
3130
<dependency>
3231
<groupId>org.minbox.framework</groupId>
3332
<artifactId>api-boot-starter</artifactId>
3433
</dependency>
35-
<!--SpringBoot Jdbc-->
3634
<dependency>
3735
<groupId>org.springframework.boot</groupId>
3836
<artifactId>spring-boot-starter-jdbc</artifactId>
3937
</dependency>
40-
<!--SpringBoot Aop-->
4138
<dependency>
4239
<groupId>org.springframework.boot</groupId>
4340
<artifactId>spring-boot-starter-aop</artifactId>
@@ -46,5 +43,9 @@
4643
<groupId>org.reflections</groupId>
4744
<artifactId>reflections</artifactId>
4845
</dependency>
46+
<dependency>
47+
<groupId>org.minbox.framework</groupId>
48+
<artifactId>minbox-datasource-switch</artifactId>
49+
</dependency>
4950
</dependencies>
5051
</project>

api-boot-project/api-boot/pom.xml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -89,16 +89,6 @@
8989
<scope>compile</scope>
9090
<optional>true</optional>
9191
</dependency>
92-
<dependency>
93-
<groupId>com.zaxxer</groupId>
94-
<artifactId>HikariCP</artifactId>
95-
<optional>true</optional>
96-
</dependency>
97-
<dependency>
98-
<groupId>com.alibaba</groupId>
99-
<artifactId>druid</artifactId>
100-
<optional>true</optional>
101-
</dependency>
10292
<dependency>
10393
<groupId>com.aliyun.oss</groupId>
10494
<artifactId>aliyun-sdk-oss</artifactId>

api-boot-project/api-boot/src/main/java/org/minbox/framework/api/boot/datasource/ApiBootDataSource.java

Lines changed: 0 additions & 20 deletions
This file was deleted.

api-boot-project/api-boot/src/main/java/org/minbox/framework/api/boot/datasource/ApiBootDataSourceFactoryBean.java

Lines changed: 0 additions & 69 deletions
This file was deleted.

api-boot-project/api-boot/src/main/java/org/minbox/framework/api/boot/datasource/DataSourceTypeNames.java

Lines changed: 0 additions & 21 deletions
This file was deleted.

api-boot-project/api-boot/src/main/java/org/minbox/framework/api/boot/datasource/annotation/DataSourceSwitch.java

Lines changed: 0 additions & 20 deletions
This file was deleted.

0 commit comments

Comments
 (0)