cn.jiangzeyin.util.PublishSchemeFtp Maven / Gradle / Ivy
package cn.jiangzeyin.util;
import cn.jiangzeyin.entity.defaults.PublishScheme;
import cn.jiangzeyin.util.net.ftp.FtpInfo;
import cn.jiangzeyin.util.net.ftp.FtpUtil;
import cn.jiangzeyin.util.net.ftp.YokeFtp;
import org.springframework.util.Assert;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
/**
* @author jiangzeyin
* Created by jiangzeyin on 2017/2/8.
*/
public class PublishSchemeFtp implements FtpInfo {
private PublishScheme publishScheme;
public PublishSchemeFtp(PublishScheme publishScheme) {
this.publishScheme = publishScheme;
}
@Override
public int getPort() {
Assert.notNull(publishScheme);
return publishScheme.getPort();
}
@Override
public String getIp() {
Assert.notNull(publishScheme);
return publishScheme.getIp();
}
@Override
public String getEncoding() {
Assert.notNull(publishScheme);
return publishScheme.getEncoding();
}
@Override
public String getUserName() {
Assert.notNull(publishScheme);
return publishScheme.getUserName();
}
@Override
public String getUserPwd() {
Assert.notNull(publishScheme);
return publishScheme.getUserPwd();
}
@Override
public int getTimeOut() {
Assert.notNull(publishScheme);
return publishScheme.getTimeOut();
}
@Override
public int getMode() {
Assert.notNull(publishScheme);
return publishScheme.getMode();
}
@Override
public int getId() {
Assert.notNull(publishScheme);
return publishScheme.getId();
}
@Override
public int getMaxConnects() {
Assert.notNull(publishScheme);
return publishScheme.getMaxConnects();
}
@Override
public TimeUnit getTimeUnit() {
Assert.notNull(publishScheme);
return publishScheme.getTimeUnit();
}
/**
* 获取ftp 连接对象
*
* @param publishScheme scheme
* @return ftp
* @throws IOException io
* @author jiangzeyin
*/
public static YokeFtp getFtpClient(PublishScheme publishScheme) throws IOException {
PublishSchemeFtp publishSchemeFtp = new PublishSchemeFtp(publishScheme);
return FtpUtil.getFtpClient(publishSchemeFtp);
// YokeFtp ftp = new YokeFtp();
// // ftp.setDefaultTimeout(40000);
// // ftp.setKeepAlive(true);
// ftp.setDefaultPort(publishScheme.getPort());
// ftp.connect(publishScheme.getIp());
// ftp.setControlEncoding(publishScheme.getEncoding());
// // FTP服务器连接回答
// if (!FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
// return null;
// }
// // 登录
// ftp.login(publishScheme.getUserName(), publishScheme.getUserPwd());
// ftp.setSoTimeout(publishScheme.getTimeOut());
// ftp.setConnectTimeout(publishScheme.getTimeOut());
// if (publishScheme.getMode() == 1)
// ftp.enterLocalPassiveMode();// 被动模式
// else
// ftp.enterLocalActiveMode();// 主动模式
// ftp.setSchemeId(publishScheme.getId());
// ftp.setDataTimeout(publishScheme.getTimeOut());
// return ftp;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy