类 CosXmlBaseService
- java.lang.Object
-
- com.tencent.cos.xml.CosXmlBaseService
-
- 所有已实现的接口:
BaseCosXml
public class CosXmlBaseService extends java.lang.Object implements BaseCosXml
提供用于访问Tencent Cloud COS服务的基础服务类。
在调用 COS 服务前,都必须初始化一个该类的对象。更详细的使用方式请参考:入门文档
-
-
字段概要
字段 修饰符和类型 字段 说明 static java.lang.StringappCachePathstatic java.lang.StringBRIDGE桥接来源protected com.tencent.qcloud.core.http.QCloudHttpClientclientprotected CosXmlServiceConfigconfigprotected com.tencent.qcloud.core.auth.QCloudCredentialProvidercredentialProviderstatic booleanIS_CLOSE_REPORT是否关闭上报protected java.lang.StringrequestDomainprotected com.tencent.qcloud.core.auth.QCloudSelfSignerselfSignerprotected java.lang.StringsignerTypeprotected java.lang.Stringtag
-
构造器概要
构造器 构造器 说明 CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration)cos android SDK 服务CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudCredentialProvider qCloudCredentialProvider)cos android SDK 服务CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudSelfSigner selfSigner)cos android SDK 服务CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudSigner qCloudSigner)cos android SDK 服务
-
方法概要
所有方法 实例方法 具体方法 已过时的方法 修饰符和类型 方法 说明 voidaddCustomerDNS(java.lang.String domainName, java.lang.String[] ipList)自定义 DNS 解析voidaddCustomerDNSFetch(com.tencent.qcloud.core.http.QCloudHttpClient.QCloudDnsFetch dnsFetch)添加自定义 DNS 解析器 支持添加多个,会顺序解析获取voidaddVerifiedHost(java.lang.String hostName)已过时。BasePutObjectResultbasePutObject(BasePutObjectRequest request)基础简单上传的同步方法.voidbasePutObjectAsync(BasePutObjectRequest request, CosXmlResultListener cosXmlResultListener)基础简单上传的异步方法.protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
com.tencent.qcloud.core.http.QCloudHttpRequestbuildHttpRequest(T1 cosXmlRequest, T2 cosXmlResult, boolean isNetworkSwitch, java.lang.String networkClientType)构建请求 Header 数据优先级:request、config、默认protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
booleanbuildHttpRequestBodyConverter(T1 cosXmlRequest, T2 cosXmlResult, com.tencent.qcloud.core.http.QCloudHttpRequest.Builder<T2> httpRequestBuilder)voidcancel(CosXmlRequest cosXmlRequest)取消请求任务. 详细介绍,请查看:BaseCosXml.cancel(CosXmlRequest)voidcancel(CosXmlRequest cosXmlRequest, boolean now)取消请求任务. 详细介绍,请查看:BaseCosXml.cancel(CosXmlRequest)voidcancelAll()取消所有的请求任务. 详细介绍,请查看:BaseCosXml.cancelAll()<T1 extends CosXmlRequest,T2 extends CosXmlResult>
T2commonInterface(T1 request, java.lang.Class<T2> resultClass)通用接口同步方法<T1 extends CosXmlRequest,T2 extends CosXmlResult>
voidcommonInterfaceAsync(T1 request, java.lang.Class<T2> resultClass, CosXmlResultListener cosXmlResultListener)通用接口异步方法protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
T2execute(T1 cosXmlRequest, T2 cosXmlResult)同步执行protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
T2execute(T1 cosXmlRequest, T2 cosXmlResult, boolean internal)同步执行protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
T2execute(T1 cosXmlRequest, T2 cosXmlResult, boolean internal, boolean isNetworkSwitch)java.lang.StringgetAccessUrl(CosXmlRequest cosXmlRequest)获取请求的访问地址java.lang.StringgetAppid()已过时。CosXmlServiceConfiggetConfig()com.tencent.qcloud.core.auth.QCloudCredentialProvidergetCredentialProvider()java.io.File[]getLogFiles(int limit)获取 SDK 日志信息byte[]getObject(GetObjectBytesRequest request)将 COS 对象下载为字节数组GetObjectResultgetObject(GetObjectRequest request)获取 COS 对象的同步方法.byte[]getObject(java.lang.String bucketName, java.lang.String objectName)将 COS 对象下载为字节数组voidgetObjectAsync(GetObjectRequest request, CosXmlResultListener cosXmlResultListener)获取 COS 对象的异步方法.java.lang.StringgetObjectUrl(java.lang.String bucket, java.lang.String region, java.lang.String key)获取对象的 url 地址java.lang.StringgetPresignedURL(CosXmlRequest cosXmlRequest)获取预签名文件URLjava.lang.StringgetRegion()已过时。java.lang.StringgetRegion(CosXmlRequest cosXmlRequest)已过时。protected java.lang.StringgetRequestHost(CosXmlRequest request)java.lang.StringgetUserAgent(java.lang.String networkClientType)获取UserAgentvoidinternalGetObjectAsync(GetObjectRequest request, CosXmlResultListener cosXmlResultListener)voidrelease()释放所有的请求. 详细介绍,请查看:BaseCosXml.release()protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
voidschedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener)protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
voidschedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener, boolean internal)异步执行protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
voidschedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener, boolean internal, boolean isNetworkSwitch)protected <T1 extends CosXmlRequest>
voidsetCopySource(T1 cosXmlRequest)voidsetDomain(java.lang.String domain)设置除 get service 请求外其他所有请求的域名voidsetNetworkClient(CosXmlServiceConfig configuration)protected <T1 extends CosXmlRequest,T2 extends CosXmlResult>
voidsetProgressListener(T1 cosXmlRequest, com.tencent.qcloud.core.http.HttpTask<T2> httpTask, boolean isSchedule)protected java.lang.StringsignerTypeCompat(java.lang.String signerType, CosXmlRequest cosXmlRequest)兼容某些request的signerType(比如SensitiveContentRecognitionRequest应该是cos 而不是ci)UploadPartResultuploadPart(UploadPartRequest request)上传一个对象某个分片块的同步方法.voiduploadPartAsync(UploadPartRequest request, CosXmlResultListener cosXmlResultListener)上传一个对象某个分片块的异步方法.
-
-
-
字段详细资料
-
IS_CLOSE_REPORT
public static boolean IS_CLOSE_REPORT
是否关闭上报
-
BRIDGE
public static java.lang.String BRIDGE
桥接来源
-
client
protected volatile com.tencent.qcloud.core.http.QCloudHttpClient client
-
credentialProvider
protected com.tencent.qcloud.core.auth.QCloudCredentialProvider credentialProvider
-
tag
protected java.lang.String tag
-
signerType
protected java.lang.String signerType
-
config
protected CosXmlServiceConfig config
-
appCachePath
public static java.lang.String appCachePath
-
requestDomain
protected java.lang.String requestDomain
-
selfSigner
protected com.tencent.qcloud.core.auth.QCloudSelfSigner selfSigner
-
-
构造器详细资料
-
CosXmlBaseService
public CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudCredentialProvider qCloudCredentialProvider)cos android SDK 服务- 参数:
context- Application 上下文Applicationconfiguration- cos android SDK 服务配置CosXmlServiceConfigqCloudCredentialProvider- cos android SDK 证书提供者QCloudCredentialProvider
-
CosXmlBaseService
public CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration)cos android SDK 服务- 参数:
context- Application 上下文Applicationconfiguration- cos android SDK 服务配置CosXmlServiceConfig
-
CosXmlBaseService
public CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudSigner qCloudSigner)cos android SDK 服务- 参数:
context- Application 上下文Applicationconfiguration- cos android SDK 服务配置CosXmlServiceConfigqCloudSigner- cos android SDK 签名提供者QCloudSigner
-
CosXmlBaseService
public CosXmlBaseService(android.content.Context context, CosXmlServiceConfig configuration, com.tencent.qcloud.core.auth.QCloudSelfSigner selfSigner)cos android SDK 服务- 参数:
context- Application 上下文Applicationconfiguration- cos android SDK 服务配置CosXmlServiceConfigselfSigner- cos android SDK 签名提供者QCloudSelfSigner
-
-
方法详细资料
-
getCredentialProvider
public com.tencent.qcloud.core.auth.QCloudCredentialProvider getCredentialProvider()
-
signerTypeCompat
protected java.lang.String signerTypeCompat(java.lang.String signerType, CosXmlRequest cosXmlRequest)兼容某些request的signerType(比如SensitiveContentRecognitionRequest应该是cos 而不是ci)- 返回:
- 新的正确的signerType
-
setNetworkClient
public void setNetworkClient(CosXmlServiceConfig configuration)
-
addCustomerDNS
public void addCustomerDNS(java.lang.String domainName, java.lang.String[] ipList) throws CosXmlClientException自定义 DNS 解析- 参数:
domainName- dns 解析的 domainipList- 解析的 ip 地址列表- 抛出:
CosXmlClientException- 客户端异常
-
addCustomerDNSFetch
public void addCustomerDNSFetch(@NonNull com.tencent.qcloud.core.http.QCloudHttpClient.QCloudDnsFetch dnsFetch)添加自定义 DNS 解析器 支持添加多个,会顺序解析获取- 参数:
dnsFetch- DNS 解析器
-
addVerifiedHost
@Deprecated public void addVerifiedHost(java.lang.String hostName)
已过时。
-
setDomain
public void setDomain(java.lang.String domain)
设置除 get service 请求外其他所有请求的域名- 参数:
domain- 域名
-
getRequestHost
protected java.lang.String getRequestHost(CosXmlRequest request) throws CosXmlClientException
-
buildHttpRequest
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> com.tencent.qcloud.core.http.QCloudHttpRequest buildHttpRequest(T1 cosXmlRequest, T2 cosXmlResult, boolean isNetworkSwitch, java.lang.String networkClientType) throws CosXmlClientException
构建请求 Header 数据优先级:request、config、默认
-
buildHttpRequestBodyConverter
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> boolean buildHttpRequestBodyConverter(T1 cosXmlRequest, T2 cosXmlResult, com.tencent.qcloud.core.http.QCloudHttpRequest.Builder<T2> httpRequestBuilder)
-
execute
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> T2 execute(T1 cosXmlRequest, T2 cosXmlResult) throws CosXmlClientException, CosXmlServiceException
同步执行
-
execute
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> T2 execute(T1 cosXmlRequest, T2 cosXmlResult, boolean internal) throws CosXmlClientException, CosXmlServiceException
同步执行
-
execute
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> T2 execute(T1 cosXmlRequest, T2 cosXmlResult, boolean internal, boolean isNetworkSwitch) throws CosXmlClientException, CosXmlServiceException
-
schedule
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> void schedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener)
-
schedule
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> void schedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener, boolean internal)
异步执行
-
schedule
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> void schedule(T1 cosXmlRequest, T2 cosXmlResult, CosXmlResultListener cosXmlResultListener, boolean internal, boolean isNetworkSwitch)
-
setCopySource
protected <T1 extends CosXmlRequest> void setCopySource(T1 cosXmlRequest) throws CosXmlClientException
-
setProgressListener
protected <T1 extends CosXmlRequest,T2 extends CosXmlResult> void setProgressListener(T1 cosXmlRequest, com.tencent.qcloud.core.http.HttpTask<T2> httpTask, boolean isSchedule)
-
getAccessUrl
public java.lang.String getAccessUrl(CosXmlRequest cosXmlRequest)
获取请求的访问地址- 参数:
cosXmlRequest- 请求- 返回:
- String 访问地址
-
getPresignedURL
public java.lang.String getPresignedURL(CosXmlRequest cosXmlRequest) throws CosXmlClientException
获取预签名文件URL- 参数:
cosXmlRequest- 请求- 返回:
- String 签名 URL
- 抛出:
CosXmlClientException- 客户端异常
-
getObject
public GetObjectResult getObject(GetObjectRequest request) throws CosXmlClientException, CosXmlServiceException
获取 COS 对象的同步方法.
- 指定者:
getObject在接口中BaseCosXml- 参数:
request- 获取 COS 对象的请求GetObjectRequest- 返回:
- 获取 COS 对象的请求返回的结果
GetObjectResult - 抛出:
CosXmlClientException- 客户端异常CosXmlServiceException- 服务端异常
-
getObjectAsync
public void getObjectAsync(GetObjectRequest request, CosXmlResultListener cosXmlResultListener)
获取 COS 对象的异步方法.
详细介绍,请查看:
BaseCosXml.getObjectAsync(GetObjectRequest, CosXmlResultListener)- 指定者:
getObjectAsync在接口中BaseCosXml- 参数:
request- 获取 COS 对象的请求GetObjectRequestcosXmlResultListener- 请求回调结果CosXmlResultListener
-
internalGetObjectAsync
public void internalGetObjectAsync(GetObjectRequest request, CosXmlResultListener cosXmlResultListener)
-
getObject
public byte[] getObject(java.lang.String bucketName, java.lang.String objectName) throws CosXmlClientException, CosXmlServiceException将 COS 对象下载为字节数组
详细介绍,请查看:
BaseCosXml.getObject(String, String)- 指定者:
getObject在接口中BaseCosXml- 参数:
bucketName- 存储桶名称objectName- 对象远端路径,即存储到 COS 上的绝对路径- 返回:
- 对象的字节数据
- 抛出:
CosXmlClientException- 客户端异常CosXmlServiceException- 服务端异常
-
getObject
public byte[] getObject(GetObjectBytesRequest request) throws CosXmlClientException, CosXmlServiceException
将 COS 对象下载为字节数组
- 指定者:
getObject在接口中BaseCosXml- 参数:
request- 获取 COS 对象的请求GetObjectBytesRequest- 返回:
- 对象的字节数据
- 抛出:
CosXmlClientException- 客户端异常CosXmlServiceException- 服务端异常
-
basePutObject
public BasePutObjectResult basePutObject(BasePutObjectRequest request) throws CosXmlClientException, CosXmlServiceException
基础简单上传的同步方法.
- 指定者:
basePutObject在接口中BaseCosXml- 参数:
request- 简单上传请求BasePutObjectRequest- 返回:
- 简单上传请求返回的结果
BasePutObjectResult - 抛出:
CosXmlClientException- 客户端异常CosXmlServiceException- 服务端异常
-
basePutObjectAsync
public void basePutObjectAsync(BasePutObjectRequest request, CosXmlResultListener cosXmlResultListener)
基础简单上传的异步方法.
详细介绍,请查看:
BaseCosXml.basePutObjectAsync(BasePutObjectRequest, CosXmlResultListener)- 指定者:
basePutObjectAsync在接口中BaseCosXml- 参数:
request- 简单上传请求BasePutObjectRequestcosXmlResultListener- 请求回调结果CosXmlResultListener
-
uploadPart
public UploadPartResult uploadPart(UploadPartRequest request) throws CosXmlClientException, CosXmlServiceException
上传一个对象某个分片块的同步方法.
- 指定者:
uploadPart在接口中BaseCosXml- 参数:
request- 上传一个对象某个分块请求UploadPartRequest- 返回:
- 上传一个对象某个分块请求返回的结果
UploadPartResult - 抛出:
CosXmlClientException- 客户端异常CosXmlServiceException- 服务端异常
-
uploadPartAsync
public void uploadPartAsync(UploadPartRequest request, CosXmlResultListener cosXmlResultListener)
上传一个对象某个分片块的异步方法.
详细介绍,请查看:
BaseCosXml.uploadPartAsync(UploadPartRequest, CosXmlResultListener)- 指定者:
uploadPartAsync在接口中BaseCosXml- 参数:
request- 上传某个分块请求UploadPartRequestcosXmlResultListener- 请求回调结果CosXmlResultListener
-
getObjectUrl
public java.lang.String getObjectUrl(java.lang.String bucket, java.lang.String region, java.lang.String key)从接口复制的说明:BaseCosXml获取对象的 url 地址- 指定者:
getObjectUrl在接口中BaseCosXml- 返回:
- 对象的 url 地址
-
commonInterface
public <T1 extends CosXmlRequest,T2 extends CosXmlResult> T2 commonInterface(T1 request, java.lang.Class<T2> resultClass) throws CosXmlClientException, CosXmlServiceException
通用接口同步方法- 指定者:
commonInterface在接口中BaseCosXml- 抛出:
CosXmlClientExceptionCosXmlServiceException
-
commonInterfaceAsync
public <T1 extends CosXmlRequest,T2 extends CosXmlResult> void commonInterfaceAsync(T1 request, java.lang.Class<T2> resultClass, CosXmlResultListener cosXmlResultListener)
通用接口异步方法- 指定者:
commonInterfaceAsync在接口中BaseCosXml
-
cancel
public void cancel(CosXmlRequest cosXmlRequest)
取消请求任务. 详细介绍,请查看:BaseCosXml.cancel(CosXmlRequest)- 指定者:
cancel在接口中BaseCosXml- 参数:
cosXmlRequest- 请求requestCosXmlRequest
-
cancel
public void cancel(CosXmlRequest cosXmlRequest, boolean now)
取消请求任务. 详细介绍,请查看:BaseCosXml.cancel(CosXmlRequest)- 指定者:
cancel在接口中BaseCosXml- 参数:
cosXmlRequest- 请求requestCosXmlRequest
-
cancelAll
public void cancelAll()
取消所有的请求任务. 详细介绍,请查看:BaseCosXml.cancelAll()- 指定者:
cancelAll在接口中BaseCosXml
-
release
public void release()
释放所有的请求. 详细介绍,请查看:BaseCosXml.release()- 指定者:
release在接口中BaseCosXml
-
getAppid
@Deprecated public java.lang.String getAppid()
已过时。
-
getRegion
@Deprecated public java.lang.String getRegion()
已过时。
-
getRegion
@Deprecated public java.lang.String getRegion(CosXmlRequest cosXmlRequest)
已过时。
-
getConfig
public CosXmlServiceConfig getConfig()
-
getUserAgent
public java.lang.String getUserAgent(@Nullable java.lang.String networkClientType)获取UserAgent- 返回:
- UserAgent
-
getLogFiles
public java.io.File[] getLogFiles(int limit)
获取 SDK 日志信息
-
-