修改IDownloadSchedulers实现
This commit is contained in:
@ -157,13 +157,4 @@ public class DownloadManager {
|
||||
}
|
||||
mCommands.clear();
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置下载器
|
||||
*
|
||||
* @param queue {@link ITaskQueue}
|
||||
*/
|
||||
public void setDownloadQueue(ITaskQueue queue) {
|
||||
mTaskQueue = queue;
|
||||
}
|
||||
}
|
@ -111,6 +111,10 @@ public class DownloadTaskQueue implements ITaskQueue {
|
||||
}
|
||||
}
|
||||
|
||||
@Override public int size() {
|
||||
return mExecutePool.size();
|
||||
}
|
||||
|
||||
@Override public void setDownloadNum(int downloadNum) {
|
||||
mExecutePool.setDownloadNum(downloadNum);
|
||||
}
|
||||
|
@ -14,7 +14,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
package com.arialyy.downloadutil.core.queue;
|
||||
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
@ -27,6 +26,11 @@ import com.arialyy.downloadutil.core.task.Task;
|
||||
*/
|
||||
public interface ITaskQueue extends IDownloader {
|
||||
|
||||
/**
|
||||
* 任务池队列大小
|
||||
*/
|
||||
public int size();
|
||||
|
||||
/**
|
||||
* 设置下载任务数
|
||||
*
|
||||
|
@ -20,6 +20,7 @@ package com.arialyy.downloadutil.core.scheduler;
|
||||
import android.os.Message;
|
||||
import android.util.Log;
|
||||
import com.arialyy.downloadutil.core.DownloadEntity;
|
||||
import com.arialyy.downloadutil.core.queue.ITaskQueue;
|
||||
import com.arialyy.downloadutil.core.task.Task;
|
||||
import com.arialyy.downloadutil.core.queue.pool.ExecutePool;
|
||||
import com.arialyy.downloadutil.core.queue.DownloadTaskQueue;
|
||||
@ -65,10 +66,10 @@ public class DownloadSchedulers implements IDownloadSchedulers {
|
||||
/**
|
||||
* 下载器任务监听
|
||||
*/
|
||||
OnTargetListener mTargetListener;
|
||||
DownloadTaskQueue mQueue;
|
||||
OnTargetListener mTargetListener;
|
||||
ITaskQueue mQueue;
|
||||
|
||||
public DownloadSchedulers(DownloadTaskQueue downloadTaskQueue) {
|
||||
public DownloadSchedulers(ITaskQueue downloadTaskQueue) {
|
||||
mQueue = downloadTaskQueue;
|
||||
}
|
||||
|
||||
@ -90,7 +91,7 @@ public class DownloadSchedulers implements IDownloadSchedulers {
|
||||
switch (msg.what) {
|
||||
case STOP:
|
||||
case CANCEL:
|
||||
if (mQueue.getExecutePool().size() != ExecutePool.mSize) {
|
||||
if (mQueue.size() != ExecutePool.mSize) {
|
||||
startNextTask(entity);
|
||||
}
|
||||
break;
|
||||
|
Reference in New Issue
Block a user