Skip to content

Commit 5475511

Browse files
committed
Changed session cache size to 5 for SFTP and upgrade Spring Boot to 2.3.3.RELEASE
1 parent 376e98f commit 5475511

File tree

6 files changed

+26
-63
lines changed

6 files changed

+26
-63
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The project **Data Exchange Client** allows you to connect to SFTP or FTP servers and configure upload and download pullers.
22

3-
Current stable version: **1.5.1**
3+
Current stable version: **1.5.2**
44

55
## How to use
66

pom.xml

Lines changed: 13 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.dataexchange</groupId>
77
<artifactId>data-exchange-client</artifactId>
8-
<version>1.5.1</version>
8+
<version>1.5.2</version>
99
<packaging>jar</packaging>
1010

1111
<name>data-exchange-client</name>
@@ -14,17 +14,17 @@
1414
<parent>
1515
<groupId>org.springframework.boot</groupId>
1616
<artifactId>spring-boot-starter-parent</artifactId>
17-
<version>2.1.4.RELEASE</version>
17+
<version>2.3.3.RELEASE</version>
1818
<relativePath/> <!-- lookup parent from repository -->
1919
</parent>
2020

2121
<properties>
2222
<java.version>1.8</java.version>
2323

24-
<spring-integration-aws.version>2.0.1.RELEASE</spring-integration-aws.version>
24+
<spring-integration-aws.version>2.3.3.RELEASE</spring-integration-aws.version>
25+
<com.amazonaws.sdk.version>1.11.792</com.amazonaws.sdk.version> <!-- from spring-integration-aws -->
2526

26-
<commons-lang3.version>3.8.1</commons-lang3.version>
27-
<com.amazonaws.sdk>1.11.336</com.amazonaws.sdk>
27+
<commons-lang3.version>3.10</commons-lang3.version>
2828

2929
<!-- Test -->
3030
<org.apache.sshd.version>2.1.0</org.apache.sshd.version>
@@ -37,7 +37,7 @@
3737
<dependency>
3838
<groupId>org.springframework.cloud</groupId>
3939
<artifactId>spring-cloud-dependencies</artifactId>
40-
<version>Greenwich.RELEASE</version>
40+
<version>Hoxton.RELEASE</version>
4141
<type>pom</type>
4242
<scope>import</scope>
4343
</dependency>
@@ -71,7 +71,6 @@
7171
<dependency>
7272
<groupId>org.springframework.cloud</groupId>
7373
<artifactId>spring-cloud-commons</artifactId>
74-
<version>2.1.1.RELEASE</version>
7574
</dependency>
7675

7776
<dependency>
@@ -84,6 +83,11 @@
8483
<artifactId>spring-integration-ftp</artifactId>
8584
</dependency>
8685

86+
<dependency>
87+
<groupId>org.springframework.integration</groupId>
88+
<artifactId>spring-integration-core</artifactId>
89+
</dependency>
90+
8791
<dependency>
8892
<groupId>org.springframework.integration</groupId>
8993
<artifactId>spring-integration-aws</artifactId>
@@ -115,17 +119,16 @@
115119
<version>${commons-beanutils.version}</version>
116120
</dependency>
117121

118-
119122
<!-- AWS -->
120123
<dependency>
121124
<groupId>com.amazonaws</groupId>
122125
<artifactId>aws-java-sdk-s3</artifactId>
123-
<version>${com.amazonaws.sdk}</version>
126+
<version>${com.amazonaws.sdk.version}</version>
124127
</dependency>
125128
<dependency>
126129
<groupId>com.amazonaws</groupId>
127130
<artifactId>aws-java-sdk</artifactId>
128-
<version>${com.amazonaws.sdk}</version>
131+
<version>${com.amazonaws.sdk.version}</version>
129132
</dependency>
130133

131134
<dependency>
@@ -167,47 +170,4 @@
167170
</dependency>
168171
</dependencies>
169172

170-
<pluginRepositories>
171-
<pluginRepository>
172-
<id>libs-local</id>
173-
<url>https://bin.private.zooplus.net/artifactory/libs-local</url>
174-
</pluginRepository>
175-
<pluginRepository>
176-
<id>remote-repos</id>
177-
<url>https://bin.private.zooplus.net/artifactory/remote-repos</url>
178-
</pluginRepository>
179-
</pluginRepositories>
180-
181-
<repositories>
182-
<repository>
183-
<id>finance-artifactory</id>
184-
<url>https://bin.private.zooplus.net/artifactory/finance-local</url>
185-
</repository>
186-
<repository>
187-
<id>logistics-local</id>
188-
<url>https://bin.private.zooplus.net/artifactory/logistics-local</url>
189-
</repository>
190-
<repository>
191-
<id>remote-repos</id>
192-
<url>https://bin.private.zooplus.net/artifactory/remote-repos</url>
193-
</repository>
194-
<repository>
195-
<id>libs-local</id>
196-
<url>https://bin.private.zooplus.net/artifactory/libs-local</url>
197-
</repository>
198-
</repositories>
199-
200-
<distributionManagement>
201-
<repository>
202-
<id>zooplus</id>
203-
<name>zooplus-releases</name>
204-
<url>https://bin.private.zooplus.net/artifactory/logistics-local</url>
205-
</repository>
206-
<snapshotRepository>
207-
<id>zooplus</id>
208-
<name>zooplus-snapshots</name>
209-
<url>https://bin.private.zooplus.net/artifactory/snapshots-local</url>
210-
</snapshotRepository>
211-
</distributionManagement>
212-
213173
</project>

src/main/java/com/dataexchange/client/config/DynamicConfigurationCreator.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
@Component
2929
public class DynamicConfigurationCreator {
3030

31+
public static final int DEFAULT_SESSION_CACHE_SIZE = 5;
32+
3133
@Autowired
3234
private MainConfiguration configuration;
3335
@Autowired
@@ -126,7 +128,7 @@ private CachingSessionFactory sftpSessionFactory(SftpPollerConfiguration sftpPol
126128
sftpSessionFactory.setTimeout(30_000);
127129
sftpSessionFactory.setAllowUnknownKeys(true);
128130

129-
return createSessionFactory(sftpSessionFactory, 1, sftpPollerConfiguration.getUsername(),
131+
return createSessionFactory(sftpSessionFactory, DEFAULT_SESSION_CACHE_SIZE, sftpPollerConfiguration.getUsername(),
130132
sftpPollerConfiguration.getHost());
131133
}
132134

@@ -147,7 +149,7 @@ private CachingSessionFactory ftpSessionFactory(FtpPollerConfiguration ftpPoller
147149
ftpSessionFactory.setConfig(ftpClientConfig);
148150
}
149151

150-
return createSessionFactory(ftpSessionFactory, 5, ftpPollerConfiguration.getUsername(),
152+
return createSessionFactory(ftpSessionFactory, DEFAULT_SESSION_CACHE_SIZE, ftpPollerConfiguration.getUsername(),
151153
ftpPollerConfiguration.getHost());
152154
}
153155

src/main/java/com/dataexchange/client/config/MonitoringConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class MonitoringConfig {
1818
public AbstractRequestHandlerAdvice pollerUpdateAdvice() {
1919
return new AbstractRequestHandlerAdvice() {
2020
@Override
21-
protected Object doInvoke(ExecutionCallback callback, Object target, Message<?> message) throws Exception {
21+
protected Object doInvoke(ExecutionCallback callback, Object target, Message<?> message) {
2222
Message unwrap = message;
2323
if (message instanceof AdviceMessage) {
2424
unwrap = ((AdviceMessage<?>) message).getInputMessage();

src/main/java/com/dataexchange/client/config/RemoteConfiguration.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
import java.util.Map;
99

10-
1110
@Component
1211
@RefreshScope
1312
@ConfigurationProperties

src/main/java/com/dataexchange/client/infrastructure/integration/file/LoggingSessionFactory.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,7 @@
1818
import java.io.OutputStream;
1919
import java.math.BigDecimal;
2020
import java.math.RoundingMode;
21-
import java.time.LocalDate;
2221
import java.time.ZonedDateTime;
23-
import java.time.format.DateTimeFormatter;
2422
import java.util.HashMap;
2523
import java.util.Map;
2624
import java.util.concurrent.Executor;
@@ -88,12 +86,11 @@ public void read(String source, OutputStream outputStream) throws IOException {
8886
LOGGER.info("Reading started {}", source);
8987
targetSession.read(source, fos);
9088
long endTime = System.nanoTime();
91-
BigDecimal bytesPerSec = new BigDecimal(fos.getByteCount() / ((endTime - startTime) / 1000000000f))
89+
BigDecimal bytesPerSec = BigDecimal.valueOf(fos.getByteCount() / ((endTime - startTime) / 1000000000f))
9290
.setScale(4, BigDecimal.ROUND_HALF_UP);
9391
BigDecimal kBytesPerSec = bytesPerSec.divide(BigDecimal.valueOf(1024f), 2, RoundingMode.HALF_UP);
9492

9593
submitExecutor.execute(() -> {
96-
LocalDate.now().format(DateTimeFormatter.ofPattern("YYYY-MM"));
9794
IndexRequest request = createIndexRequest(source, fos.getCount(), kBytesPerSec, OperationType.DOWNLOAD);
9895
try {
9996
esClient.index(request, RequestOptions.DEFAULT);
@@ -109,7 +106,7 @@ public void write(InputStream inputStream, String destination) throws IOExceptio
109106
long startTime = System.nanoTime();
110107
targetSession.write(cis, destination);
111108
long endTime = System.nanoTime();
112-
BigDecimal bytesPerSec = new BigDecimal(cis.getByteCount() / ((endTime - startTime) / 1000000000f))
109+
BigDecimal bytesPerSec = BigDecimal.valueOf(cis.getByteCount() / ((endTime - startTime) / 1000000000f))
113110
.setScale(4, BigDecimal.ROUND_HALF_UP);
114111
BigDecimal kBytesPerSec = bytesPerSec.divide(BigDecimal.valueOf(1024f), 2, RoundingMode.HALF_UP);
115112

@@ -178,6 +175,11 @@ public Object getClientInstance() {
178175
return targetSession.getClientInstance();
179176
}
180177

178+
@Override
179+
public String getHostPort() {
180+
return targetSession.getHostPort();
181+
}
182+
181183
@Override
182184
public boolean test() {
183185
return targetSession.test();

0 commit comments

Comments
 (0)