* processing
*/
@Override
protected void innerProcess(CrawlURI curi) throws InterruptedException {
curi.setFetchBeginTime(System.currentTimeMillis());
ClientFTP client = new ClientFTP();
Recorder recorder = curi.getRecorder();
try {
if (logger.isLoggable(Level.FINE)) {
logger.fine("attempting to fetch ftp uri: " + curi);
}
fetch(curi, client, recorder);
} catch (IOException e) {
if (logger.isLoggable(Level.INFO)) {
logger.info(curi + ": " + e);
}
curi.getNonFatalFailures().add(e);
curi.setFetchStatus(FetchStatusCodes.S_CONNECT_FAILED);
} finally {
disconnect(client);
curi.setFetchCompletedTime(System.currentTimeMillis());
curi.getData().put(A_FTP_CONTROL_CONVERSATION, client.getControlConversation());
}
}