import
java.io.*;
import
java.io.IOException;
import
java.net.UnknownHostException;
import
org.apache.commons.net.ftp.FTP;
import
org.apache.commons.net.ftp.FTPClient;
import
org.apache.commons.net.ftp.FTPReply;
import
org.slf4j.Logger;
import
org.slf4j.LoggerFactory;
public
class
FtpConnector {
Logger logger
= LoggerFactory.getLogger(FtpConnector.
class
);
public
FTPClient connect()
throws
IOException
{
FTPClient ftpClient =
new
FTPClient();
try
{
ftpClient.connect(
"localhost"
,
21
);
int
replyCode = ftpClient.getReplyCode();
if
(!FTPReply.isPositiveCompletion(replyCode)) {
logger.info(
"Operation failed. Server reply code: "
+ replyCode);
ftpClient.disconnect();
}
boolean
success
= ftpClient.login(
"testuser"
,
"123"
);
if
(!success) {
ftpClient.disconnect();
}
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
boolean
changedRemoteDir
= ftpClient.changeWorkingDirectory(
"/home/testuser/directory"
);
if
(!changedRemoteDir) {
logger.info(
"Remote directory not found."
);
}
}
catch
(UnknownHostException E) {
logger.info(
"No such ftp server"
);
}
catch
(IOException e) {
logger.info(e.getMessage());
}
return
ftpClient;
}
}