提交 2a3cf766 authored 作者: 宋勇's avatar 宋勇

修改 ftpclient 测试

上级 dd6bf62a
...@@ -21,7 +21,7 @@ public class FtpClientService { ...@@ -21,7 +21,7 @@ public class FtpClientService {
public static final String FS_FTP_PASSWORD_PREFIX = "ftp."; public static final String FS_FTP_PASSWORD_PREFIX = "ftp.";
public static final String E_SAME_DIRECTORY_ONLY = "/ftp"; public static final String E_SAME_DIRECTORY_ONLY = "/ftp";
private FTPClient connect() throws IOException { public static FTPClient connect() throws IOException {
FTPClient client = null; FTPClient client = null;
String host = FS_FTP_HOST; String host = FS_FTP_HOST;
int port = FS_FTP_HOST_PORT; int port = FS_FTP_HOST_PORT;
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
package org.apache.seatunnel.datasource.plugin.ftp; package org.apache.seatunnel.datasource.plugin.ftp;
import lombok.NonNull; import lombok.NonNull;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.Path;
...@@ -46,11 +47,26 @@ public class FtpDatasourceChannel implements DataSourceChannel { ...@@ -46,11 +47,26 @@ public class FtpDatasourceChannel implements DataSourceChannel {
public boolean checkDataSourceConnectivity( public boolean checkDataSourceConnectivity(
@NonNull String pluginName, @NonNull Map<String, String> requestParams) { @NonNull String pluginName, @NonNull Map<String, String> requestParams) {
FtpConfiguration conf = FtpAConfiguration.getConfiguration(requestParams); FtpConfiguration conf = FtpAConfiguration.getConfiguration(requestParams);
if (Objects.isNull(conf)){ try {
FTPClient ftpClient = FtpClientService.connect();
if (Objects.isNull(conf)) {
throw new DataSourcePluginException(
String.format("check ftp connectivity failed, config is: %s", requestParams));
}
if (ftpClient.changeWorkingDirectory(requestParams.get(FtpOptionRule.PATH.key()))) {
return true;
} else {
throw new DataSourcePluginException(
String.format("check ftp connectivity failed, config is: %s", requestParams));
}
} catch (Exception e) {
throw new DataSourcePluginException( throw new DataSourcePluginException(
String.format("check ftp connectivity failed, config is: %s", requestParams)); String.format("check ftp connectivity failed, config is: %s", requestParams));
} }
return true; // return true;
} }
@Override @Override
......
...@@ -41,8 +41,11 @@ public class OpcuaOptionRule { ...@@ -41,8 +41,11 @@ public class OpcuaOptionRule {
public static final Option<String> TYPE = public static final Option<String> TYPE =
Options.key("type").stringType().defaultValue("int").withDescription("type"); Options.key("type").stringType().defaultValue("int").withDescription("type");
public static final Option<Integer> GS =
Options.key("gs").intType().defaultValue(1).withDescription("type");
public static OptionRule optionRule() { public static OptionRule optionRule() {
return OptionRule.builder().required(HOST, PORT, SUFFIX, NS, ID, TYPE).build(); return OptionRule.builder().required(HOST, PORT, SUFFIX, NS, ID, TYPE).optional(GS).build();
} }
public static OptionRule metadataRule() { public static OptionRule metadataRule() {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论