public abstract class AbsFtpInfoTask<ENTITY extends com.arialyy.aria.core.common.AbsEntity,TASK_WRAPPER extends com.arialyy.aria.core.wrapper.AbsTaskWrapper<ENTITY>>
extends java.lang.Object
implements java.lang.Runnable, com.arialyy.aria.core.loader.IInfoTask
| 限定符和类型 | 字段和说明 |
|---|---|
protected java.lang.String |
charSet |
protected ENTITY |
mEntity |
protected long |
mSize |
protected FtpTaskOption |
mTaskOption |
protected TASK_WRAPPER |
mTaskWrapper |
protected java.lang.String |
TAG |
| 构造器和说明 |
|---|
AbsFtpInfoTask(TASK_WRAPPER taskWrapper) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
accept(com.arialyy.aria.core.loader.ILoaderVisitor visitor) |
void |
cancel() |
protected void |
closeClient(FTPClient client) |
protected long |
getFileSize(FTPFile[] files,
FTPClient client,
java.lang.String dirName)
遍历FTP服务器上对应文件或文件夹大小
|
protected abstract java.lang.String |
getRemotePath()
获取请求的远程文件路径
|
protected abstract void |
handelFileInfo(FTPClient client,
FTPFile[] files,
java.lang.String convertedRemotePath)
处理ftp列表信息
|
protected void |
handleFail(FTPClient client,
java.lang.String msg,
java.lang.Exception e,
boolean needRetry) |
protected void |
handleFile(FTPClient client,
java.lang.String remotePath,
FTPFile ftpFile)
处理FTP文件信息
|
protected boolean |
onInterceptor(FTPClient client,
FTPFile[] ftpFiles)
处理拦截
|
protected void |
onPreComplete(int code) |
protected void |
onSucceed(com.arialyy.aria.core.common.CompleteInfo info) |
void |
run() |
void |
setCallback(com.arialyy.aria.core.loader.IInfoTask.Callback callback) |
void |
stop() |
protected final java.lang.String TAG
protected ENTITY extends com.arialyy.aria.core.common.AbsEntity mEntity
protected TASK_WRAPPER extends com.arialyy.aria.core.wrapper.AbsTaskWrapper<ENTITY> mTaskWrapper
protected FtpTaskOption mTaskOption
protected long mSize
protected java.lang.String charSet
public AbsFtpInfoTask(TASK_WRAPPER taskWrapper)
protected abstract java.lang.String getRemotePath()
protected abstract void handelFileInfo(FTPClient client, FTPFile[] files, java.lang.String convertedRemotePath) throws java.io.IOException
client - ftp 客户端对象files - remotePath 对应的文件列表convertedRemotePath - 已转换的可被服务器识别的remotePathjava.io.IOExceptionpublic void stop()
stop 在接口中 com.arialyy.aria.core.loader.IInfoTaskpublic void cancel()
cancel 在接口中 com.arialyy.aria.core.loader.IInfoTaskpublic void setCallback(com.arialyy.aria.core.loader.IInfoTask.Callback callback)
setCallback 在接口中 com.arialyy.aria.core.loader.IInfoTaskpublic void run()
run 在接口中 com.arialyy.aria.core.loader.IInfoTaskrun 在接口中 java.lang.Runnableprotected boolean onInterceptor(FTPClient client, FTPFile[] ftpFiles)
ftpFiles - remotePath路径下的所有文件false 拦截器处理完成任务,任务将不再执行,true 拦截器处理任务完成任务,任务继续执行protected void onPreComplete(int code)
protected void closeClient(FTPClient client)
protected long getFileSize(FTPFile[] files, FTPClient client, java.lang.String dirName) throws java.io.IOException
java.io.IOException - 字符串编码转换错误protected void handleFile(FTPClient client, java.lang.String remotePath, FTPFile ftpFile)
remotePath - ftp服务器文件夹路径ftpFile - ftp服务器上对应的文件protected void handleFail(FTPClient client, java.lang.String msg, java.lang.Exception e, boolean needRetry)
protected void onSucceed(com.arialyy.aria.core.common.CompleteInfo info)
public void accept(com.arialyy.aria.core.loader.ILoaderVisitor visitor)
accept 在接口中 com.arialyy.aria.core.loader.ILoaderComponent