修复重构loader模块后出现的组合任务的bug
This commit is contained in:
@@ -45,13 +45,18 @@ final class FtpDGLoader extends AbsGroupLoader {
|
||||
|
||||
@Override
|
||||
protected AbsSubDLoadUtil createSubLoader(DTaskWrapper wrapper, boolean needGetFileInfo) {
|
||||
return new FtpSubDLoaderUtil(wrapper, getScheduler(), needGetFileInfo);
|
||||
return new FtpSubDLoaderUtil(wrapper, getScheduler(), needGetFileInfo, getKey());
|
||||
}
|
||||
|
||||
/**
|
||||
* 启动子任务下载
|
||||
*/
|
||||
private void startSub() {
|
||||
if (isBreak()) {
|
||||
return;
|
||||
}
|
||||
onPostStart();
|
||||
|
||||
// ftp需要获取完成只任务信息才更新只任务数量
|
||||
getState().setSubSize(getWrapper().getSubTaskWrapper().size());
|
||||
|
||||
@@ -70,12 +75,12 @@ final class FtpDGLoader extends AbsGroupLoader {
|
||||
startSub();
|
||||
} else {
|
||||
ALog.e(TAG, "获取任务信息失败,code:" + info.code);
|
||||
mListener.onFail(false, null);
|
||||
getListener().onFail(false, null);
|
||||
}
|
||||
}
|
||||
|
||||
@Override public void onFail(AbsEntity entity, BaseException e, boolean needRetry) {
|
||||
mListener.onFail(needRetry, e);
|
||||
getListener().onFail(needRetry, e);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -31,14 +31,16 @@ final class FtpSubDLoaderUtil extends AbsSubDLoadUtil {
|
||||
* @param schedulers 调度器
|
||||
* @param needGetInfo {@code true} 需要获取文件信息。{@code false} 不需要获取文件信息
|
||||
*/
|
||||
FtpSubDLoaderUtil(DTaskWrapper taskWrapper, Handler schedulers, boolean needGetInfo) {
|
||||
super(taskWrapper, schedulers, needGetInfo);
|
||||
FtpSubDLoaderUtil(DTaskWrapper taskWrapper, Handler schedulers, boolean needGetInfo,
|
||||
String parentKey) {
|
||||
super(taskWrapper, schedulers, needGetInfo, parentKey);
|
||||
}
|
||||
|
||||
@Override protected SubLoader getLoader() {
|
||||
if (mDLoader == null) {
|
||||
mDLoader = new SubLoader(getWrapper(), getSchedulers());
|
||||
mDLoader.setNeedGetInfo(isNeedGetInfo());
|
||||
mDLoader.setParentKey(getParentKey());
|
||||
}
|
||||
return mDLoader;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user