279 lines
13 KiB
Java
279 lines
13 KiB
Java
package com.ubt.jimu.upload;
|
|
|
|
import android.text.TextUtils;
|
|
import com.alibaba.sdk.android.oss.ClientConfiguration;
|
|
import com.alibaba.sdk.android.oss.ClientException;
|
|
import com.alibaba.sdk.android.oss.OSS;
|
|
import com.alibaba.sdk.android.oss.OSSClient;
|
|
import com.alibaba.sdk.android.oss.ServiceException;
|
|
import com.alibaba.sdk.android.oss.callback.OSSCompletedCallback;
|
|
import com.alibaba.sdk.android.oss.callback.OSSProgressCallback;
|
|
import com.alibaba.sdk.android.oss.common.OSSLog;
|
|
import com.alibaba.sdk.android.oss.common.auth.OSSStsTokenCredentialProvider;
|
|
import com.alibaba.sdk.android.oss.internal.OSSAsyncTask;
|
|
import com.alibaba.sdk.android.oss.model.PutObjectRequest;
|
|
import com.alibaba.sdk.android.oss.model.PutObjectResult;
|
|
import com.ubt.jimu.JimuApplication;
|
|
import com.ubt.jimu.base.entities.PublishType;
|
|
import com.ubt.jimu.base.http.ApiClient;
|
|
import com.ubt.jimu.upload.AliYunConfig;
|
|
import com.ubt.jimu.utils.BitmapCompressUtils;
|
|
import com.ubt.jimu.utils.LogUtils;
|
|
import io.reactivex.Observer;
|
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
import io.reactivex.disposables.Disposable;
|
|
import io.reactivex.schedulers.Schedulers;
|
|
import java.io.File;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class AliYunUploadHttp implements IBaseUploadHttp {
|
|
private AliYunKeyBean a;
|
|
private OSS b;
|
|
private List<OSSAsyncTask> c = new ArrayList();
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public void c(byte[] bArr, final String str, final IUploadCallback iUploadCallback) {
|
|
OSSAsyncTask<PutObjectResult> a = this.b.a(new PutObjectRequest(this.a.getBucketName(), str, bArr), new OSSCompletedCallback<PutObjectRequest, PutObjectResult>() { // from class: com.ubt.jimu.upload.AliYunUploadHttp.3
|
|
@Override // com.alibaba.sdk.android.oss.callback.OSSCompletedCallback
|
|
public void a(PutObjectRequest putObjectRequest, PutObjectResult putObjectResult) {
|
|
LogUtils.c("上传封面成功");
|
|
if (iUploadCallback != null) {
|
|
UploadResponse uploadResponse = new UploadResponse();
|
|
uploadResponse.a(str);
|
|
uploadResponse.c(AliYunUploadHttp.this.a.getDomain() + File.separator + str);
|
|
uploadResponse.a(true);
|
|
iUploadCallback.uploadSucceed(uploadResponse);
|
|
}
|
|
}
|
|
|
|
@Override // com.alibaba.sdk.android.oss.callback.OSSCompletedCallback
|
|
public void a(PutObjectRequest putObjectRequest, ClientException clientException, ServiceException serviceException) {
|
|
LogUtils.c("上传封面失败");
|
|
if (clientException != null) {
|
|
clientException.printStackTrace();
|
|
}
|
|
if (serviceException != null) {
|
|
LogUtils.c("ErrorCode:" + serviceException.getErrorCode());
|
|
LogUtils.c("RequestId:" + serviceException.getRequestId());
|
|
LogUtils.c("HostId:" + serviceException.getHostId());
|
|
LogUtils.c("RawMessage:" + serviceException.getRawMessage());
|
|
}
|
|
IUploadCallback iUploadCallback2 = iUploadCallback;
|
|
if (iUploadCallback2 != null) {
|
|
iUploadCallback2.uploadFaulted(null, clientException);
|
|
}
|
|
}
|
|
});
|
|
List<OSSAsyncTask> list = this.c;
|
|
if (list != null) {
|
|
list.add(a);
|
|
}
|
|
}
|
|
|
|
@Override // com.ubt.jimu.upload.IBaseUploadHttp
|
|
public void b() {
|
|
((AliYunStsServer) ApiClient.getService(AliYunStsServer.class)).getStsServer("Jimu", 3599, 2, 1).subscribeOn(Schedulers.b()).observeOn(Schedulers.b()).subscribe(new Observer<AliYunKeyBean>() { // from class: com.ubt.jimu.upload.AliYunUploadHttp.1
|
|
@Override // io.reactivex.Observer
|
|
/* renamed from: a, reason: merged with bridge method [inline-methods] */
|
|
public void onNext(AliYunKeyBean aliYunKeyBean) {
|
|
LogUtils.c("初始化:" + aliYunKeyBean.toString());
|
|
AliYunConfig.a(aliYunKeyBean);
|
|
AliYunUploadHttp.this.a = aliYunKeyBean;
|
|
UploadFilePathUtils.b(aliYunKeyBean.getDomain());
|
|
LogUtils.c("获取阿里云Key成功:" + aliYunKeyBean.getAccessKeyId());
|
|
LogUtils.c("获取阿里云Key成功:" + aliYunKeyBean.getAccessKeySecret());
|
|
AliYunUploadHttp.this.a(aliYunKeyBean);
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onComplete() {
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onError(Throwable th) {
|
|
LogUtils.c("初始化失败:" + th.getMessage());
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onSubscribe(Disposable disposable) {
|
|
}
|
|
});
|
|
}
|
|
|
|
@Override // com.ubt.jimu.upload.IBaseUploadHttp
|
|
public void a(UploadRequest uploadRequest, IUploadCallback iUploadCallback) {
|
|
if (AliYunConfig.a() == AliYunConfig.AliYunTokenState.TOKEN_VALID && this.b != null) {
|
|
c(uploadRequest, iUploadCallback);
|
|
LogUtils.c("已经初始化,直接上传:");
|
|
} else {
|
|
b(uploadRequest, iUploadCallback);
|
|
LogUtils.c("没有初始化,先初始化后上传:");
|
|
}
|
|
}
|
|
|
|
public void c() {
|
|
LogUtils.c("停止所有任务");
|
|
List<OSSAsyncTask> list = this.c;
|
|
if (list == null || list.size() == 0) {
|
|
return;
|
|
}
|
|
for (OSSAsyncTask oSSAsyncTask : this.c) {
|
|
if (oSSAsyncTask != null && !oSSAsyncTask.b()) {
|
|
oSSAsyncTask.a();
|
|
}
|
|
}
|
|
this.c.clear();
|
|
}
|
|
|
|
private void b(final byte[] bArr, final String str, final IUploadCallback iUploadCallback) {
|
|
((AliYunStsServer) ApiClient.getService(AliYunStsServer.class)).getStsServer("Jimu", 3599, 2, 1).subscribeOn(Schedulers.b()).observeOn(AndroidSchedulers.a()).subscribe(new Observer<AliYunKeyBean>() { // from class: com.ubt.jimu.upload.AliYunUploadHttp.2
|
|
@Override // io.reactivex.Observer
|
|
/* renamed from: a, reason: merged with bridge method [inline-methods] */
|
|
public void onNext(AliYunKeyBean aliYunKeyBean) {
|
|
if (aliYunKeyBean != null) {
|
|
AliYunConfig.a(aliYunKeyBean);
|
|
AliYunUploadHttp.this.a = aliYunKeyBean;
|
|
UploadFilePathUtils.b(aliYunKeyBean.getDomain());
|
|
AliYunUploadHttp aliYunUploadHttp = AliYunUploadHttp.this;
|
|
aliYunUploadHttp.a(aliYunUploadHttp.a);
|
|
AliYunUploadHttp.this.c(bArr, str, iUploadCallback);
|
|
}
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onComplete() {
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onError(Throwable th) {
|
|
IUploadCallback iUploadCallback2 = iUploadCallback;
|
|
if (iUploadCallback2 != null) {
|
|
iUploadCallback2.uploadFaulted(null, new Exception("get SecurityToken error"));
|
|
}
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onSubscribe(Disposable disposable) {
|
|
}
|
|
});
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public void c(final UploadRequest uploadRequest, final IUploadCallback iUploadCallback) {
|
|
PutObjectRequest putObjectRequest;
|
|
if (uploadRequest.d() == PublishType.IMAGE) {
|
|
putObjectRequest = new PutObjectRequest(this.a.getBucketName(), uploadRequest.a(), BitmapCompressUtils.a(uploadRequest.b()));
|
|
} else {
|
|
putObjectRequest = new PutObjectRequest(this.a.getBucketName(), uploadRequest.a(), uploadRequest.b());
|
|
}
|
|
putObjectRequest.a(new OSSProgressCallback<PutObjectRequest>(this) { // from class: com.ubt.jimu.upload.AliYunUploadHttp.4
|
|
@Override // com.alibaba.sdk.android.oss.callback.OSSProgressCallback
|
|
public void a(PutObjectRequest putObjectRequest2, long j, long j2) {
|
|
if (iUploadCallback != null) {
|
|
iUploadCallback.onProgress(uploadRequest, Double.valueOf(((j * 1.0d) / j2) * 100.0d).doubleValue());
|
|
}
|
|
}
|
|
});
|
|
OSSAsyncTask<PutObjectResult> a = this.b.a(putObjectRequest, new OSSCompletedCallback<PutObjectRequest, PutObjectResult>() { // from class: com.ubt.jimu.upload.AliYunUploadHttp.5
|
|
@Override // com.alibaba.sdk.android.oss.callback.OSSCompletedCallback
|
|
public void a(PutObjectRequest putObjectRequest2, PutObjectResult putObjectResult) {
|
|
if (iUploadCallback != null) {
|
|
UploadResponse uploadResponse = new UploadResponse();
|
|
uploadResponse.a(uploadRequest.a());
|
|
uploadResponse.b(uploadRequest.b());
|
|
uploadResponse.c(AliYunUploadHttp.this.a.getDomain() + File.separator + uploadRequest.a());
|
|
uploadResponse.a(true);
|
|
uploadResponse.a(uploadRequest.c());
|
|
iUploadCallback.uploadSucceed(uploadResponse);
|
|
}
|
|
}
|
|
|
|
@Override // com.alibaba.sdk.android.oss.callback.OSSCompletedCallback
|
|
public void a(PutObjectRequest putObjectRequest2, ClientException clientException, ServiceException serviceException) {
|
|
IUploadCallback iUploadCallback2;
|
|
if (clientException != null) {
|
|
clientException.printStackTrace();
|
|
IUploadCallback iUploadCallback3 = iUploadCallback;
|
|
if (iUploadCallback3 != null) {
|
|
iUploadCallback3.uploadFaulted(uploadRequest, clientException);
|
|
}
|
|
}
|
|
if (serviceException == null || (iUploadCallback2 = iUploadCallback) == null) {
|
|
return;
|
|
}
|
|
iUploadCallback2.uploadFaulted(uploadRequest, serviceException);
|
|
}
|
|
});
|
|
List<OSSAsyncTask> list = this.c;
|
|
if (list != null) {
|
|
list.add(a);
|
|
}
|
|
}
|
|
|
|
@Override // com.ubt.jimu.upload.IBaseUploadHttp
|
|
public void a(byte[] bArr, String str, IUploadCallback iUploadCallback) {
|
|
if (AliYunConfig.a() == AliYunConfig.AliYunTokenState.TOKEN_VALID && this.b != null) {
|
|
c(bArr, str, iUploadCallback);
|
|
LogUtils.c("已经初始化,直接二进制上传:");
|
|
} else {
|
|
b(bArr, str, iUploadCallback);
|
|
LogUtils.c("没有初始化,先初始化在进行二进制上传:");
|
|
}
|
|
}
|
|
|
|
public void b(final UploadRequest uploadRequest, final IUploadCallback iUploadCallback) {
|
|
((AliYunStsServer) ApiClient.getService(AliYunStsServer.class)).getStsServer("Jimu", 3599, 2, 1).subscribeOn(Schedulers.b()).observeOn(AndroidSchedulers.a()).subscribe(new Observer<AliYunKeyBean>() { // from class: com.ubt.jimu.upload.AliYunUploadHttp.6
|
|
@Override // io.reactivex.Observer
|
|
/* renamed from: a, reason: merged with bridge method [inline-methods] */
|
|
public void onNext(AliYunKeyBean aliYunKeyBean) {
|
|
if (aliYunKeyBean != null) {
|
|
AliYunConfig.a(aliYunKeyBean);
|
|
AliYunUploadHttp.this.a = aliYunKeyBean;
|
|
UploadFilePathUtils.b(aliYunKeyBean.getDomain());
|
|
AliYunUploadHttp aliYunUploadHttp = AliYunUploadHttp.this;
|
|
aliYunUploadHttp.a(aliYunUploadHttp.a);
|
|
AliYunUploadHttp.this.c(uploadRequest, iUploadCallback);
|
|
}
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onComplete() {
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onError(Throwable th) {
|
|
IUploadCallback iUploadCallback2 = iUploadCallback;
|
|
if (iUploadCallback2 != null) {
|
|
iUploadCallback2.uploadFaulted(uploadRequest, new Exception("get SecurityToken error"));
|
|
}
|
|
}
|
|
|
|
@Override // io.reactivex.Observer
|
|
public void onSubscribe(Disposable disposable) {
|
|
}
|
|
});
|
|
}
|
|
|
|
@Override // com.ubt.jimu.upload.IBaseUploadHttp
|
|
public void a() {
|
|
c();
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public void a(AliYunKeyBean aliYunKeyBean) {
|
|
if (aliYunKeyBean == null || TextUtils.isEmpty(aliYunKeyBean.getAccessKeySecret())) {
|
|
return;
|
|
}
|
|
OSSStsTokenCredentialProvider oSSStsTokenCredentialProvider = new OSSStsTokenCredentialProvider(aliYunKeyBean.getAccessKeyId(), aliYunKeyBean.getAccessKeySecret(), aliYunKeyBean.getSecurityToken());
|
|
ClientConfiguration clientConfiguration = new ClientConfiguration();
|
|
clientConfiguration.a(15000);
|
|
clientConfiguration.d(15000);
|
|
clientConfiguration.b(5);
|
|
clientConfiguration.c(2);
|
|
this.b = new OSSClient(JimuApplication.l(), aliYunKeyBean.getEndPoint(), oSSStsTokenCredentialProvider, clientConfiguration);
|
|
OSSLog.a();
|
|
}
|
|
}
|