Skip to content

Commit 45ccea0

Browse files
author
Jonathan Henrique Medeiros
committed
feature: simplifying configurations and upgrade dependencies
1 parent 940c9dd commit 45ccea0

21 files changed

+105
-103
lines changed

Makefile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
.PHONY: install test version up down restart upgrade_otel_agent
1+
.PHONY: clean install test version up down restart upgrade_otel_agent
2+
3+
clean:
4+
@mvn clean
25

36
install:
47
@mvn clean install

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Esta arquitetura consiste em diminuir a concorrência entre transações da API
1717
</br>
1818

1919
[![node](https://img.shields.io/badge/Azul_Zulu_OpenJDK-21-red.svg)](https://www.azul.com/downloads/?package=jdk#zulu)
20-
[![node](https://img.shields.io/badge/Spring_Boot-3.2.2-green.svg)](https://spring.io/)
20+
[![node](https://img.shields.io/badge/Spring_Boot-3.2.5-green.svg)](https://spring.io/)
2121
[![node](https://img.shields.io/badge/MySQL-8.0.28-blue.svg)](https://www.mysql.com/)
2222

2323

docker-compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
version: "3.8"
1+
version: "3.9"
22

33
services:
44

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<parent>
66
<groupId>org.springframework.boot</groupId>
77
<artifactId>spring-boot-starter-parent</artifactId>
8-
<version>3.2.2</version>
8+
<version>3.2.5</version>
99
<relativePath/>
1010
</parent>
1111

@@ -20,9 +20,9 @@
2020
<maven.compiler.target>${java.version}</maven.compiler.target>
2121
<mapstruct.version>1.5.5.Final</mapstruct.version>
2222
<logstash-logback-encoder.version>7.4</logstash-logback-encoder.version>
23-
<springdoc-openapi-starter-webmvc-ui.version>2.3.0</springdoc-openapi-starter-webmvc-ui.version>
23+
<springdoc-openapi-starter-webmvc-ui.version>2.5.0</springdoc-openapi-starter-webmvc-ui.version>
2424
<snakeyaml.version>2.2</snakeyaml.version>
25-
<h2.version>2.2.220</h2.version>
25+
<h2.version>2.2.224</h2.version>
2626
<opentelemetry.version>1.35.0</opentelemetry.version>
2727
<json-path.version>2.9.0</json-path.version>
2828
</properties>

src/main/java/br/com/multidatasources/config/datasource/DataSourceConfiguration.java

Lines changed: 11 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,28 @@
11
package br.com.multidatasources.config.datasource;
22

3-
import javax.sql.DataSource;
4-
53
import com.zaxxer.hikari.HikariConfig;
64
import com.zaxxer.hikari.HikariDataSource;
75

8-
public interface DataSourceConfiguration {
9-
10-
String poolName();
11-
12-
int minimumIdle();
13-
14-
int maximumPoolSize();
15-
16-
long connectionTimeout();
6+
import javax.sql.DataSource;
177

18-
long idleTimeout();
8+
public interface DataSourceConfiguration {
199

20-
long maxLifetime();
10+
DataSourceType dataSourceType();
2111

2212
default HikariDataSource definePoolDataSourceConnection(final DataSource dataSource) {
2313
return new HikariDataSource(hikariConfig(dataSource));
2414
}
2515

2616
private HikariConfig hikariConfig(final DataSource dataSource) {
2717
final HikariConfig hikariConfig = new HikariConfig();
28-
29-
hikariConfig.setPoolName(poolName());
30-
hikariConfig.setMaximumPoolSize(maximumPoolSize());
31-
hikariConfig.setMinimumIdle(minimumIdle());
32-
hikariConfig.setConnectionTimeout(connectionTimeout());
33-
hikariConfig.setMaxLifetime(maxLifetime());
34-
hikariConfig.setIdleTimeout(idleTimeout());
18+
final DataSourceType dataSourceType = dataSourceType();
19+
20+
hikariConfig.setPoolName(dataSourceType.poolName());
21+
hikariConfig.setMaximumPoolSize(dataSourceType.maximumPoolSize());
22+
hikariConfig.setMinimumIdle(dataSourceType.minimumIdle());
23+
hikariConfig.setConnectionTimeout(dataSourceType.connectionTimeout());
24+
hikariConfig.setMaxLifetime(dataSourceType.maxLifetime());
25+
hikariConfig.setIdleTimeout(dataSourceType.idleTimeout());
3526
hikariConfig.setDataSource(dataSource);
3627
hikariConfig.setAutoCommit(false);
3728

src/main/java/br/com/multidatasources/config/routing/DataSourceRoutingConfiguration.java renamed to src/main/java/br/com/multidatasources/config/datasource/DataSourceRoutingConfiguration.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
package br.com.multidatasources.config.routing;
1+
package br.com.multidatasources.config.datasource;
22

3-
import br.com.multidatasources.config.datasource.DataSourceType;
4-
import br.com.multidatasources.config.datasource.MasterDataSource;
5-
import br.com.multidatasources.config.datasource.ReplicaDataSource;
3+
import br.com.multidatasources.config.datasource.master.MasterDataSource;
4+
import br.com.multidatasources.config.datasource.replica.ReplicaDataSource;
65
import org.springframework.context.annotation.Bean;
76
import org.springframework.context.annotation.Configuration;
87
import org.springframework.context.annotation.Primary;

src/main/java/br/com/multidatasources/config/routing/TransactionRoutingDataSource.java renamed to src/main/java/br/com/multidatasources/config/datasource/TransactionRoutingDataSource.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package br.com.multidatasources.config.routing;
1+
package br.com.multidatasources.config.datasource;
22

33
import io.opentelemetry.api.trace.Span;
44
import org.slf4j.Logger;
@@ -16,7 +16,6 @@ public class TransactionRoutingDataSource extends AbstractRoutingDataSource {
1616
@Override
1717
protected Object determineCurrentLookupKey() {
1818
if (TransactionSynchronizationManager.isCurrentTransactionReadOnly()) {
19-
2019
LOGGER.info("Routed to: {}", READ_ONLY);
2120
enrichSpan(READ_ONLY.name(), READ_ONLY.poolName());
2221

src/main/java/br/com/multidatasources/config/datasource/MasterDataSource.java renamed to src/main/java/br/com/multidatasources/config/datasource/master/MasterDataSource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package br.com.multidatasources.config.datasource;
1+
package br.com.multidatasources.config.datasource.master;
22

33
import org.springframework.beans.factory.annotation.Qualifier;
44

src/main/java/br/com/multidatasources/config/datasource/MasterDataSourceConfiguration.java renamed to src/main/java/br/com/multidatasources/config/datasource/master/MasterDataSourceConfiguration.java

Lines changed: 5 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
package br.com.multidatasources.config.datasource;
1+
package br.com.multidatasources.config.datasource.master;
22

3+
import br.com.multidatasources.config.datasource.DataSourceConfiguration;
4+
import br.com.multidatasources.config.datasource.DataSourceType;
35
import br.com.multidatasources.config.properties.datasource.DatabaseConnectionProperties;
46
import br.com.multidatasources.config.properties.datasource.MasterProperties;
57
import org.springframework.context.annotation.Bean;
@@ -8,40 +10,14 @@
810

911
import javax.sql.DataSource;
1012

11-
import static br.com.multidatasources.config.datasource.DataSourceType.READ_ONLY;
1213
import static br.com.multidatasources.config.datasource.DataSourceType.READ_WRITE;
1314

1415
@Configuration
1516
public class MasterDataSourceConfiguration implements DataSourceConfiguration {
1617

1718
@Override
18-
public String poolName() {
19-
return READ_WRITE.poolName();
20-
}
21-
22-
@Override
23-
public int minimumIdle() {
24-
return READ_WRITE.minimumIdle();
25-
}
26-
27-
@Override
28-
public int maximumPoolSize() {
29-
return READ_WRITE.maximumPoolSize();
30-
}
31-
32-
@Override
33-
public long idleTimeout() {
34-
return READ_ONLY.idleTimeout();
35-
}
36-
37-
@Override
38-
public long connectionTimeout() {
39-
return READ_WRITE.connectionTimeout();
40-
}
41-
42-
@Override
43-
public long maxLifetime() {
44-
return READ_WRITE.maxLifetime();
19+
public DataSourceType dataSourceType() {
20+
return READ_WRITE;
4521
}
4622

4723
@Bean

src/main/java/br/com/multidatasources/config/datasource/ReplicaDataSource.java renamed to src/main/java/br/com/multidatasources/config/datasource/replica/ReplicaDataSource.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package br.com.multidatasources.config.datasource;
1+
package br.com.multidatasources.config.datasource.replica;
22

33
import org.springframework.beans.factory.annotation.Qualifier;
44

0 commit comments

Comments
 (0)