DownloadEntry修改为DownloadEntity
This commit is contained in:
@ -25,7 +25,7 @@ public class DownloadManager {
|
||||
|
||||
private ArrayMap<String, Long> lastTimeMap;
|
||||
private ArrayMap<String, LinkedBlockingQueue<String>> platformMap;
|
||||
private ArrayMap<String, ArrayMap<String, DownloadEntry>> gameMap;
|
||||
private ArrayMap<String, ArrayMap<String, DownloadEntity>> gameMap;
|
||||
private ArrayMap<String, String> statusMap;
|
||||
|
||||
private DownloadManager(Context context) {
|
||||
@ -87,20 +87,22 @@ public class DownloadManager {
|
||||
|
||||
public void initGameMap() {
|
||||
gameMap.clear();
|
||||
List<DownloadEntry> list = DownloadManager.getInstance(context).getAll();
|
||||
String name;
|
||||
for (DownloadEntry downloadEntry : list) {
|
||||
name = downloadEntry.getName();
|
||||
ArrayMap<String, DownloadEntry> map = gameMap.get(name);
|
||||
if (map == null) {
|
||||
map = new ArrayMap<>();
|
||||
gameMap.put(name, map);
|
||||
List<DownloadEntity> list = DownloadManager.getInstance(context).getAll();
|
||||
if (list != null && list.size() != 0) {
|
||||
String name;
|
||||
for (DownloadEntity downloadEntity : list) {
|
||||
name = downloadEntity.getName();
|
||||
ArrayMap<String, DownloadEntity> map = gameMap.get(name);
|
||||
if (map == null) {
|
||||
map = new ArrayMap<>();
|
||||
gameMap.put(name, map);
|
||||
}
|
||||
map.put(downloadEntity.getPlatform(), downloadEntity);
|
||||
}
|
||||
map.put(downloadEntry.getMeta().get("platform"), downloadEntry);
|
||||
}
|
||||
}
|
||||
|
||||
public ArrayMap<String, DownloadEntry> getEntryMap(String name) {
|
||||
public ArrayMap<String, DownloadEntity> getEntryMap(String name) {
|
||||
return gameMap.get(name);
|
||||
}
|
||||
|
||||
@ -123,7 +125,7 @@ public class DownloadManager {
|
||||
return mInstance;
|
||||
}
|
||||
|
||||
private Intent getIntent(DownloadEntry entry, DownloadStatus status) {
|
||||
private Intent getIntent(DownloadEntity entry, DownloadStatus status) {
|
||||
Intent service = new Intent(context, DownloadService.class);
|
||||
service.putExtra(Constants.KEY_DOWNLOAD_ENTRY, entry);
|
||||
service.putExtra(Constants.KEY_DOWNLOAD_ACTION, status.name());
|
||||
@ -136,7 +138,7 @@ public class DownloadManager {
|
||||
* @param url 下载任务的标识url
|
||||
*/
|
||||
private boolean checkDownloadEntryRecordValidate(String url) {
|
||||
DownloadEntry entry = get(url);
|
||||
DownloadEntity entry = get(url);
|
||||
if (entry != null && ((int)entry.getPercent()) != 0) {
|
||||
File file = new File(entry.getPath());
|
||||
if (!file.exists()) {
|
||||
@ -155,7 +157,7 @@ public class DownloadManager {
|
||||
* @return
|
||||
*/
|
||||
public boolean isFileCompleted(String url) {
|
||||
DownloadEntry entry = get(url);
|
||||
DownloadEntity entry = get(url);
|
||||
|
||||
if (entry != null) {
|
||||
if (entry.getPercent() == 100) {
|
||||
@ -180,7 +182,7 @@ public class DownloadManager {
|
||||
*
|
||||
* @param entry
|
||||
*/
|
||||
public void add(DownloadEntry entry) {
|
||||
public void add(DownloadEntity entry) {
|
||||
if (entry != null) {
|
||||
String url = entry.getUrl();
|
||||
checkDownloadEntryRecordValidate(url);
|
||||
@ -198,7 +200,7 @@ public class DownloadManager {
|
||||
*/
|
||||
public void pause(String url) {
|
||||
checkDownloadEntryRecordValidate(url);
|
||||
DownloadEntry entry = DataChanger.getInstance().getDownloadEntries()
|
||||
DownloadEntity entry = DataChanger.getInstance().getDownloadEntries()
|
||||
.get(url);
|
||||
if (entry != null) {
|
||||
context.startService(getIntent(entry, DownloadStatus.pause));
|
||||
@ -212,7 +214,7 @@ public class DownloadManager {
|
||||
* @param url
|
||||
*/
|
||||
public void resume(String url) {
|
||||
DownloadEntry entry = get(url);
|
||||
DownloadEntity entry = get(url);
|
||||
|
||||
// 暂停任务后,把文件删除,然后点继续,文件不存在,需要重新加入下载队列进行下载
|
||||
if (checkDownloadEntryRecordValidate(url)) {
|
||||
@ -239,7 +241,7 @@ public class DownloadManager {
|
||||
}
|
||||
|
||||
public void cancel(String url, boolean isDeleteFile) {
|
||||
DownloadEntry entry = DownloadDao.getInstance(context).get(url);
|
||||
DownloadEntity entry = DownloadDao.getInstance(context).get(url);
|
||||
if (entry != null) {
|
||||
if (isDeleteFile) {
|
||||
FileUtils.deleteFile(entry.getPath());
|
||||
@ -247,7 +249,7 @@ public class DownloadManager {
|
||||
DownloadDao.getInstance(context).delete(url);
|
||||
Utils.log(DownloadManager.class.getSimpleName(), "cancle==>file and record were deleted!");
|
||||
}
|
||||
// DownloadEntry entry = DataChanger.getInstance().getDownloadEntries().get(url);
|
||||
// DownloadEntity entry = DataChanger.getInstance().getDownloadEntries().get(url);
|
||||
if (entry != null) {
|
||||
context.startService(getIntent(entry, DownloadStatus.cancel));
|
||||
Utils.log(DownloadManager.class.getSimpleName(), "cancel");
|
||||
@ -258,7 +260,7 @@ public class DownloadManager {
|
||||
* 取消并删除所有下载任务(包括下载中、等待、暂停状态的任务)
|
||||
*/
|
||||
public void cancleAll() {
|
||||
for (Entry<String, DownloadEntry> entry : DataChanger.getInstance()
|
||||
for (Entry<String, DownloadEntity> entry : DataChanger.getInstance()
|
||||
.getDownloadEntries().entrySet()) {
|
||||
cancel(entry.getValue().getUrl(), true);
|
||||
}
|
||||
@ -269,7 +271,7 @@ public class DownloadManager {
|
||||
* 开始所有下载任务
|
||||
*/
|
||||
public void startAll() {
|
||||
for (Entry<String, DownloadEntry> entry : DataChanger.getInstance()
|
||||
for (Entry<String, DownloadEntity> entry : DataChanger.getInstance()
|
||||
.getDownloadEntries().entrySet()) {
|
||||
add(entry.getValue());
|
||||
}
|
||||
@ -280,7 +282,7 @@ public class DownloadManager {
|
||||
* 暂停所有正在下载的任务
|
||||
*/
|
||||
public void pauseAll() {
|
||||
for (Entry<String, DownloadEntry> entry : DataChanger.getInstance().getDownloadEntries().entrySet()) {
|
||||
for (Entry<String, DownloadEntity> entry : DataChanger.getInstance().getDownloadEntries().entrySet()) {
|
||||
if (entry.getValue().getStatus() == DownloadStatus.downloading) {
|
||||
pause(entry.getValue().getUrl());
|
||||
}
|
||||
@ -294,7 +296,7 @@ public class DownloadManager {
|
||||
* @param url
|
||||
* @return null表示下载列表中不存在该任务,否则返回下载任务
|
||||
*/
|
||||
public DownloadEntry get(String url) {
|
||||
public DownloadEntity get(String url) {
|
||||
return DownloadDao.getInstance(context).get(url);
|
||||
}
|
||||
|
||||
@ -303,7 +305,7 @@ public class DownloadManager {
|
||||
*
|
||||
* @return null表示没有下载任务
|
||||
*/
|
||||
public List<DownloadEntry> getAll() {
|
||||
public List<DownloadEntity> getAll() {
|
||||
Utils.log(DownloadManager.class.getSimpleName(), "getAll");
|
||||
return DownloadDao.getInstance(context).getAll();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user