任务设置修改

This commit is contained in:
laoyuyu
2019-10-16 20:14:44 +08:00
parent df310b7fbe
commit 550455084f
39 changed files with 802 additions and 809 deletions

View File

@@ -23,8 +23,7 @@ import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import com.arialyy.annotations.Download;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.ProtocolType;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.common.FtpOption;
import com.arialyy.aria.core.download.DownloadEntity;
import com.arialyy.aria.core.inf.IEntity;
import com.arialyy.aria.core.task.DownloadTask;
@@ -89,16 +88,14 @@ public class FtpDownloadActivity extends BaseActivity<ActivityFtpDownloadBinding
}
public void onClick(View view) {
switch (view.getId()) {
case R.id.start:
if (mTaskId == -1) {
mTaskId = Aria.download(this).loadFtp(mUrl)
.setFilePath(mFilePath, true)
.option()
.login(user, passw)
//.asFtps()
.controller(ControllerType.CREATE_CONTROLLER)
.option(getFtpOption())
.create();
getBinding().setStateStr(getString(R.string.stop));
break;
@@ -109,11 +106,7 @@ public class FtpDownloadActivity extends BaseActivity<ActivityFtpDownloadBinding
} else {
Aria.download(this)
.loadFtp(mTaskId)
.option()
.login(user, passw)
//.asFtps()
//.setProtocol(ProtocolType.SSL)
.controller(ControllerType.TASK_CONTROLLER)
.option(getFtpOption())
.resume();
getBinding().setStateStr(getString(R.string.stop));
}
@@ -127,6 +120,12 @@ public class FtpDownloadActivity extends BaseActivity<ActivityFtpDownloadBinding
}
}
private FtpOption getFtpOption() {
FtpOption option = new FtpOption();
option.login(user, passw);
return option;
}
public void chooseUrl() {
ModifyUrlDialog dialog =
new ModifyUrlDialog(this, getString(R.string.modify_url_dialog_title), mUrl);

View File

@@ -31,6 +31,7 @@ import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import com.arialyy.annotations.Download;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.HttpOption;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.download.DownloadEntity;
import com.arialyy.aria.core.inf.IEntity;
@@ -287,14 +288,14 @@ public class SingleTaskActivity extends BaseActivity<ActivitySingleBinding> {
}
private void startD() {
HttpOption option = new HttpOption();
option.addHeader("1", "@");
mTaskId = Aria.download(SingleTaskActivity.this)
.load(mUrl)
.useServerFileName(true)
.setFilePath(mFilePath, true)
.setFileLenAdapter(new FileLenAdapter())
.option()
.addHeader("1", "@")
.controller(ControllerType.CREATE_CONTROLLER)
.option(option)
.create();
}

View File

@@ -20,7 +20,7 @@ import android.os.Environment;
import android.view.View;
import com.arialyy.annotations.DownloadGroup;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.common.FtpOption;
import com.arialyy.aria.core.download.DownloadGroupEntity;
import com.arialyy.aria.core.inf.IEntity;
import com.arialyy.aria.core.task.DownloadGroupTask;
@@ -78,9 +78,7 @@ public class FTPDirDownloadActivity extends BaseActivity<ActivityDownloadGroupBi
.setDirPath(
Environment.getExternalStorageDirectory().getPath() + "/Download/ftp_dir")
.setGroupAlias("ftp文件夹下载")
.option()
.login(user, pwd)
.controller(ControllerType.CREATE_CONTROLLER)
.option(getFtpOption())
.create();
getBinding().setStateStr(getString(R.string.stop));
break;
@@ -91,9 +89,7 @@ public class FTPDirDownloadActivity extends BaseActivity<ActivityDownloadGroupBi
} else {
Aria.download(this)
.loadFtpDir(mTaskId)
.option()
.login(user, pwd)
.controller(ControllerType.TASK_CONTROLLER)
.option(getFtpOption())
.resume();
getBinding().setStateStr(getString(R.string.stop));
}
@@ -105,6 +101,12 @@ public class FTPDirDownloadActivity extends BaseActivity<ActivityDownloadGroupBi
}
}
private FtpOption getFtpOption() {
FtpOption option = new FtpOption();
option.login(user, pwd);
return option;
}
@DownloadGroup.onPre() protected void onPre(DownloadGroupTask task) {
L.d(TAG, "group pre");
}

View File

@@ -27,8 +27,9 @@ import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import com.arialyy.annotations.Download;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.download.DownloadEntity;
import com.arialyy.aria.core.download.m3u8.M3U8LiveOption;
import com.arialyy.aria.core.processor.IBandWidthUrlConverter;
import com.arialyy.aria.core.processor.ILiveTsUrlConverter;
import com.arialyy.aria.core.task.DownloadTask;
import com.arialyy.aria.util.ALog;
@@ -213,27 +214,18 @@ public class M3U8LiveDLoadActivity extends BaseActivity<ActivityM3u8LiveBinding>
switch (view.getId()) {
case R.id.start:
startD();
//if (!AppUtil.chekEntityValid(mEntity)) {
// startD();
// break;
//}
//if (Aria.download(this).load(mEntity.getId()).isRunning()) {
// Aria.download(this).load(mEntity.getId()).stop();
//} else {
// Aria.download(this).load(mEntity.getId())
// .asM3U8()
// .asLive()
// .setLiveTsUrlConvert(new ILiveTsUrlConverter() {
// @Override public String convert(String m3u8Url, String tsUrl) {
// int index = m3u8Url.lastIndexOf("/");
// String parentUrl = m3u8Url.substring(0, index + 1);
// return parentUrl + tsUrl;
// }
// })
// .controller(ControllerType.TASK_CONTROLLER)
// .resume();
//}
//break;
if (!AppUtil.chekEntityValid(mEntity)) {
startD();
break;
}
if (Aria.download(this).load(mEntity.getId()).isRunning()) {
Aria.download(this).load(mEntity.getId()).stop();
} else {
Aria.download(this).load(mEntity.getId())
.m3u8LiveOption(getLiveoption())
.resume();
}
break;
case R.id.cancel:
if (AppUtil.chekEntityValid(mEntity)) {
Aria.download(this).load(mEntity.getId()).cancel(true);
@@ -247,31 +239,18 @@ public class M3U8LiveDLoadActivity extends BaseActivity<ActivityM3u8LiveBinding>
.load(mUrl)
.useServerFileName(true)
.setFilePath(mFilePath, true)
.asM3U8()
//.setBandWidthUrlConverter(new IBandWidthUrlConverter() {
// @Override public String convert(String bandWidthUrl) {
// int peerIndex = mUrl.lastIndexOf("/");
// return mUrl.substring(0, peerIndex + 1) + bandWidthUrl;
// }
//})
.asLive()
.setLiveTsUrlConvert(new LiveTsUrlConverter())
.controller(ControllerType.CREATE_CONTROLLER)
//.setLiveTsUrlConvert(new IVodTsUrlConverter() {
// @Override public List<String> convert(String m3u8Url, List<String> tsUrls) {
// int peerIndex = m3u8Url.lastIndexOf("/");
// String parentUrl = m3u8Url.substring(0, peerIndex + 1);
// List<String> newUrls = new ArrayList<>();
// for (String url : tsUrls) {
// newUrls.add(parentUrl + url);
// }
//
// return newUrls;
// }
//})
.m3u8LiveOption(getLiveoption())
.create();
}
private M3U8LiveOption getLiveoption() {
M3U8LiveOption option = new M3U8LiveOption();
option
.setLiveTsUrlConvert(new LiveTsUrlConverter());
//.setBandWidthUrlConverter(new BandWidthUrlConverter(mUrl));
return option;
}
@Override protected void dataCallback(int result, Object data) {
super.dataCallback(result, data);
if (result == ModifyUrlDialog.MODIFY_URL_DIALOG_RESULT) {
@@ -288,4 +267,17 @@ public class M3U8LiveDLoadActivity extends BaseActivity<ActivityM3u8LiveBinding>
return parentUrl + tsUrl;
}
}
static class BandWidthUrlConverter implements IBandWidthUrlConverter {
String url;
BandWidthUrlConverter(String url) {
this.url = url;
}
@Override public String convert(String bandWidthUrl) {
int peerIndex = url.lastIndexOf("/");
return url.substring(0, peerIndex + 1) + bandWidthUrl;
}
}
}

View File

@@ -31,10 +31,11 @@ import com.arialyy.annotations.Download;
import com.arialyy.annotations.M3U8;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.controller.BuilderController;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.download.DownloadEntity;
import com.arialyy.aria.core.download.M3U8Entity;
import com.arialyy.aria.core.download.m3u8.M3U8VodOption;
import com.arialyy.aria.core.inf.IEntity;
import com.arialyy.aria.core.processor.IBandWidthUrlConverter;
import com.arialyy.aria.core.processor.ITsMergeHandler;
import com.arialyy.aria.core.processor.IVodTsUrlConverter;
import com.arialyy.aria.core.task.DownloadTask;
@@ -122,7 +123,7 @@ public class M3U8VodDLoadActivity extends BaseActivity<ActivityM3u8VodBinding> {
@Subscribe(threadMode = ThreadMode.MAIN)
public void jumpIndex(PeerIndex index) {
Aria.download(this).load(mUrl).asM3U8().asVod().jumPeerIndex(index.index);
Aria.download(this).load(mTaskId).m3u8VodOption().jumPeerIndex(index.index);
}
@Override
@@ -280,27 +281,7 @@ public class M3U8VodDLoadActivity extends BaseActivity<ActivityM3u8VodBinding> {
} else {
Aria.download(this)
.load(mTaskId)
.asM3U8()
//.setBandWidthUrlConverter(new IBandWidthUrlConverter() {
// @Override public String convert(String bandWidthUrl) {
// int index = mUrl.lastIndexOf("/");
// return mUrl.substring(0, index + 1) + bandWidthUrl;
// }
//})
.setTsUrlConvert(new IVodTsUrlConverter() {
@Override public List<String> convert(String m3u8Url, List<String> tsUrls) {
Uri uri = Uri.parse(m3u8Url);
String parentUrl = "http://" + uri.getHost();
List<String> newUrls = new ArrayList<>();
for (String url : tsUrls) {
newUrls.add(parentUrl + url);
}
return newUrls;
}
})
.controller(ControllerType.TASK_CONTROLLER)
.m3u8VodOption(getM3U8Option())
.resume();
}
break;
@@ -316,36 +297,20 @@ public class M3U8VodDLoadActivity extends BaseActivity<ActivityM3u8VodBinding> {
.load(mUrl)
.useServerFileName(true)
.setFilePath(mFilePath, true)
.asM3U8()
//.setBandWidthUrlConverter(new IBandWidthUrlConverter() {
// @Override public String convert(String bandWidthUrl) {
// int index = mUrl.lastIndexOf("/");
// return mUrl.substring(0, index + 1) + bandWidthUrl;
// }
//})
.setTsUrlConvert(new IVodTsUrlConverter() {
@Override public List<String> convert(String m3u8Url, List<String> tsUrls) {
Uri uri = Uri.parse(m3u8Url);
String parentUrl = uri.getScheme() + "://" + uri.getHost();
List<String> newUrls = new ArrayList<>();
for (String url : tsUrls) {
newUrls.add(parentUrl + url);
}
return newUrls;
}
})
.setMergeHandler(new ITsMergeHandler() {
public boolean merge(@Nullable M3U8Entity m3U8Entity, List<String> tsPath) {
ALog.d(TAG, "合并TS....");
return false;
}
})
.generateIndexFile()
.controller(ControllerType.CREATE_CONTROLLER)
.m3u8VodOption(getM3U8Option())
.create();
}
private M3U8VodOption getM3U8Option() {
M3U8VodOption option = new M3U8VodOption();
option
.generateIndexFile()
.setTsUrlConvert(new VodTsUrlConverter())
.setMergeHandler(new TsMergeHandler());
//.setBandWidthUrlConverter(new BandWidthUrlConverter(mUrl));
return option;
}
private Class<BuilderController> c = BuilderController.class;
@Override protected void dataCallback(int result, Object data) {
@@ -356,4 +321,38 @@ public class M3U8VodDLoadActivity extends BaseActivity<ActivityM3u8VodBinding> {
mModule.updateFilePath(this, String.valueOf(data));
}
}
static class VodTsUrlConverter implements IVodTsUrlConverter {
@Override public List<String> convert(String m3u8Url, List<String> tsUrls) {
Uri uri = Uri.parse(m3u8Url);
String parentUrl = "http://" + uri.getHost();
List<String> newUrls = new ArrayList<>();
for (String url : tsUrls) {
newUrls.add(parentUrl + url);
}
return newUrls;
}
}
static class TsMergeHandler implements ITsMergeHandler {
public boolean merge(@Nullable M3U8Entity m3U8Entity, List<String> tsPath) {
ALog.d("TsMergeHandler", "合并TS....");
return false;
}
}
static class BandWidthUrlConverter implements IBandWidthUrlConverter {
private String url;
BandWidthUrlConverter(String url) {
this.url = url;
}
@Override public String convert(String bandWidthUrl) {
int index = url.lastIndexOf("/");
return url.substring(0, index + 1) + bandWidthUrl;
}
}
}

View File

@@ -25,10 +25,8 @@ import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProviders;
import com.arialyy.annotations.Upload;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.common.FtpOption;
import com.arialyy.aria.core.inf.IEntity;
import com.arialyy.aria.core.processor.FtpInterceptHandler;
import com.arialyy.aria.core.processor.IFtpUploadInterceptor;
import com.arialyy.aria.core.task.UploadTask;
import com.arialyy.aria.core.upload.UploadEntity;
import com.arialyy.aria.util.ALog;
@@ -42,7 +40,6 @@ import com.arialyy.simple.databinding.ActivityFtpUploadBinding;
import com.arialyy.simple.util.AppUtil;
import java.io.File;
import java.io.IOException;
import java.util.List;
/**
* Created by lyy on 2017/7/28. Ftp 文件上传demo
@@ -118,9 +115,7 @@ public class FtpUploadActivity extends BaseActivity<ActivityFtpUploadBinding> {
mTaskId = Aria.upload(this)
.loadFtp(mFilePath)
.setUploadUrl(mUrl)
.option()
.login(user, pwd)
.controller(ControllerType.CREATE_CONTROLLER)
.option(getOption())
.create();
getBinding().setStateStr(getString(R.string.stop));
break;
@@ -131,9 +126,7 @@ public class FtpUploadActivity extends BaseActivity<ActivityFtpUploadBinding> {
} else {
Aria.upload(this)
.loadFtp(mTaskId)
.option()
.login(user, pwd)
.controller(ControllerType.TASK_CONTROLLER)
.option(getOption())
.resume();
getBinding().setStateStr(getString(R.string.stop));
}
@@ -147,6 +140,12 @@ public class FtpUploadActivity extends BaseActivity<ActivityFtpUploadBinding> {
}
}
private FtpOption getOption() {
FtpOption option = new FtpOption();
option.login(user, pwd);
return option;
}
@Upload.onWait void onWait(UploadTask task) {
Log.d(TAG, task.getTaskName() + "_wait");
}

View File

@@ -21,8 +21,8 @@ import android.os.Environment;
import android.view.View;
import com.arialyy.annotations.Upload;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.HttpOption;
import com.arialyy.aria.core.common.RequestEnum;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.task.UploadTask;
import com.arialyy.aria.core.upload.UploadEntity;
import com.arialyy.frame.util.FileUtil;
@@ -76,15 +76,15 @@ public class HttpUploadActivity extends BaseActivity<ActivityUploadBinding> {
}
void upload() {
HttpOption option = new HttpOption();
option.setRequestType(RequestEnum.POST)
.setParam("params", "bbbbbbbb");
Aria.upload(HttpUploadActivity.this).load(FILE_PATH)
//.setUploadUrl("http://lib-test.xzxyun.com:8042/Api/upload?data={\"type\":\"1\",\"fileType\":\".apk\"}")
.setUploadUrl("http://9.9.9.205:5000/upload/")
//.setTempUrl("http://192.168.1.6:8080/upload/sign_file/").setAttachment("file")
//.addHeader("iplanetdirectorypro", "11a09102fb934ad0bc206f9c611d7933")
.option()
.setRequestType(RequestEnum.POST)
.setParam("params", "bbbbbbbb")
.controller(ControllerType.CREATE_CONTROLLER)
.option(option)
.create();
}

View File

@@ -20,7 +20,7 @@ import android.os.Environment;
import android.util.Log;
import com.arialyy.annotations.Download;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.common.controller.ControllerType;
import com.arialyy.aria.core.common.FtpOption;
import com.arialyy.aria.core.download.DownloadEntity;
import com.arialyy.aria.core.task.DownloadTask;
import com.arialyy.aria.util.CommonUtil;
@@ -108,18 +108,21 @@ public class AnyRunnModule {
Aria.download(this)
.loadFtp(url)
.setFilePath(Environment.getExternalStorageDirectory().getPath() + "/Download/")
.option()
.asFtps()
.setStorePath("/mnt/sdcard/Download/server.crt")
.setAlias("www.laoyuyu.me")
.setStorePass("123456")
.controller(ControllerType.CREATE_CONTROLLER)
.option(getFtpOption())
.create();
} else {
Aria.download(this).load(mEntity.getId()).resume();
}
}
private FtpOption getFtpOption() {
FtpOption option = new FtpOption();
option.setStorePath("/mnt/sdcard/Download/server.crt")
.setAlias("www.laoyuyu.me")
.setStorePass("123456");
return option;
}
public void stop(String url) {
if (AppUtil.chekEntityValid(mEntity)) {
Aria.download(this).load(mEntity.getId()).stop();