!161 ftp的在操作之前添加一个判断超时的重试。

Merge pull request !161 from emaisi/N/A
This commit is contained in:
芋道源码 2022-05-05 13:24:53 +00:00 committed by Gitee
commit 7240478270
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -44,6 +44,7 @@ public class FtpFileClient extends AbstractFileClient<FtpFileClientConfig> {
String filePath = getFilePath(path); String filePath = getFilePath(path);
String fileName = FileUtil.getName(filePath); String fileName = FileUtil.getName(filePath);
String dir = StrUtil.removeSuffix(filePath, fileName); String dir = StrUtil.removeSuffix(filePath, fileName);
ftp.reconnectIfTimeout();
boolean success = ftp.upload(dir, fileName, new ByteArrayInputStream(content)); boolean success = ftp.upload(dir, fileName, new ByteArrayInputStream(content));
if (!success) { if (!success) {
throw new FtpException(StrUtil.format("上传文件到目标目录 ({}) 失败", filePath)); throw new FtpException(StrUtil.format("上传文件到目标目录 ({}) 失败", filePath));
@ -55,6 +56,7 @@ public class FtpFileClient extends AbstractFileClient<FtpFileClientConfig> {
@Override @Override
public void delete(String path) { public void delete(String path) {
String filePath = getFilePath(path); String filePath = getFilePath(path);
ftp.reconnectIfTimeout();
ftp.delFile(filePath); ftp.delFile(filePath);
} }
@ -64,6 +66,7 @@ public class FtpFileClient extends AbstractFileClient<FtpFileClientConfig> {
String fileName = FileUtil.getName(filePath); String fileName = FileUtil.getName(filePath);
String dir = StrUtil.removeSuffix(filePath, fileName); String dir = StrUtil.removeSuffix(filePath, fileName);
ByteArrayOutputStream out = new ByteArrayOutputStream(); ByteArrayOutputStream out = new ByteArrayOutputStream();
ftp.reconnectIfTimeout();
ftp.download(dir, fileName, out); ftp.download(dir, fileName, out);
return out.toByteArray(); return out.toByteArray();
} }