public interface Ks3
void setAuth(Authorization auth)
auth - List<Bucket> listBuckets() throws Ks3ClientException, Ks3ServiceException
BucketKs3ClientExceptionKs3ServiceException - 列出当前用户下的所有bucket
List<Bucket> listBuckets(ListBucketsRequest request) throws Ks3ClientException, Ks3ServiceException
request - ListBucketsRequestBucketKs3ClientExceptionKs3ServiceException - 列出当前用户下的所有bucket
CreateBucketConfiguration.REGION getBucketLoaction(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - Ks3ClientExceptionKs3ServiceException - 获取bucket的存储地点
CreateBucketConfiguration.REGION getBucketLoaction(GetBucketLocationRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetBucketLocationRequestKs3ClientExceptionKs3ServiceException - 获取bucket的存储地点
BucketLoggingStatus getBucketLogging(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - BucketLoggingStatusKs3ClientExceptionKs3ServiceException - 获取bucket的日志配置
BucketLoggingStatus getBucketLogging(GetBucketLoggingRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetBucketLoggingRequestBucketLoggingStatusKs3ClientExceptionKs3ServiceException - 获取bucket的日志配置
void putBucketLogging(String bucketName, boolean enable, String targetBucket) throws Ks3ClientException, Ks3ServiceException
bucketName - enable - 是否开启targetBucket - 存储日志的bucketKs3ClientExceptionKs3ServiceException - 配置bucket的日志
void putBucketLogging(String bucketName, boolean enable, String targetBucket, String targetPrefix) throws Ks3ClientException, Ks3ServiceException
bucketName - enable - 是否开启targetBucket - 存储日志的buckettargetPrefix - 日志文件前缀Ks3ClientExceptionKs3ServiceException - 配置 bucket的日志
void putBucketLogging(PutBucketLoggingRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutBucketLoggingRequestKs3ClientExceptionKs3ServiceException - 配置bucket的日志
AccessControlPolicy getBucketACL(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称AccessControlPolicyKs3ClientExceptionKs3ServiceException - 获取bucket的acl
AccessControlPolicy getBucketACL(GetBucketACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetBucketACLRequestAccessControlPolicyKs3ClientExceptionKs3ServiceException - 获取bucket的acl
CannedAccessControlList getBucketCannedACL(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称CannedAccessControlListKs3ClientExceptionKs3ServiceException - 获取bucket的acl
CannedAccessControlList getBucketCannedACL(GetBucketACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetBucketACLRequestCannedAccessControlListKs3ClientExceptionKs3ServiceException - 获取bucket的acl
void putBucketACL(String bucketName, AccessControlList accessControlList) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称accessControlList - AccessControlListKs3ClientExceptionKs3ServiceException - 编辑bucket的acl
void putBucketACL(String bucketName, CannedAccessControlList CannedAcl) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称CannedAcl - CannedAccessControlListKs3ClientExceptionKs3ServiceException - 编辑bucket的acl
void putBucketACL(PutBucketACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutBucketACLRequestKs3ClientExceptionKs3ServiceException - 编辑bucket的acl
void putObjectACL(String bucketName, String objectName, CannedAccessControlList accessControlList) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称objectName - object名称accessControlList - CannedAccessControlListKs3ClientExceptionKs3ServiceException - 编辑object的acl
void putObjectACL(String bucketName, String objectName, AccessControlList accessControlList) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称objectName - object名称accessControlList - AccessControlListKs3ClientExceptionKs3ServiceException - 编辑object的acl
void putObjectACL(PutObjectACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutObjectACLRequestKs3ClientExceptionKs3ServiceException - 编辑object的acl
AccessControlPolicy getObjectACL(String bucketName, String ObjectName) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称ObjectName - object名称AccessControlPolicyKs3ClientExceptionKs3ServiceException - 获取object的acl
AccessControlPolicy getObjectACL(GetObjectACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetObjectACLRequestAccessControlPolicyKs3ClientExceptionKs3ServiceException - 获取object的acl
CannedAccessControlList getObjectCannedACL(String bucketName, String ObjectName) throws Ks3ClientException, Ks3ServiceException
bucketName - bucket名称ObjectName - object名称CannedAccessControlListKs3ClientExceptionKs3ServiceException - 获取object的acl
CannedAccessControlList getObjectCannedACL(GetObjectACLRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetObjectACLRequestCannedAccessControlListKs3ClientExceptionKs3ServiceException - 获取object的acl
HeadBucketResult headBucket(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称HeadBucketResultKs3ClientExceptionKs3ServiceException - 返回headers
HeadBucketResult headBucket(HeadBucketRequest request) throws Ks3ClientException, Ks3ServiceException
request - HeadBucketRequestHeadBucketResultKs3ClientExceptionKs3ServiceException - 返回headers
boolean bucketExists(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称Ks3ClientException - 判断bucket是否存在,bucket存在但不属于当前用户也会返回true
Ks3ServiceExceptionBucket createBucket(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称
Bucket是存放Object的容器,所有的Object都必须存放在特定的Bucket中。 ,每个Bucket中可以存放无限多个Object。Bucket不能嵌套,每个Bucket中只能存放Object, 不能再存放Bucket ,Bucket下的Object是一个平级的结构。
Bucket的名称全局唯一且命名规则与DNS命名规则相同:
BucketKs3ClientExceptionKs3ServiceException - 创建bucket,权限默认是私有的,存储地点为杭州
Bucket createBucket(CreateBucketRequest request) throws Ks3ClientException, Ks3ServiceException
request - CreateBucketRequestBucketKs3ClientExceptionKs3ServiceException - 创建bucket,权限默认是私有的,存储地点为杭州
void clearBucket(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - Ks3ClientExceptionKs3ServiceExceptionvoid makeDir(String bucketName, String dir) throws Ks3ClientException, Ks3ServiceException
bucketName - dir - Ks3ClientExceptionKs3ServiceExceptionvoid removeDir(String bucketName, String dir) throws Ks3ClientException, Ks3ServiceException
bucketName - dir - Ks3ClientExceptionKs3ServiceExceptionvoid deleteBucket(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称Ks3ClientExceptionKs3ServiceException - 删除bucket,bucket中内容为空时可以删除成功
注意这个操作是不能回退的
void deleteBucket(DeleteBucketRequest request) throws Ks3ClientException, Ks3ServiceException
request - DeleteBucketRequestKs3ClientExceptionKs3ServiceException - 删除bucket,bucket中内容为空时可以删除成功
注意这个操作是不能回退的
ObjectListing listObjects(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称ObjectListingKs3ClientExceptionKs3ServiceException - 列出bucket下满足条件的object
delimiter使用默认的/
返回的最大数(max-keys)使用默认的1000
ObjectListing listObjects(String bucketname, String prefix) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称prefix - 前缀ObjectListingKs3ClientExceptionKs3ServiceException - 列出bucket下满足条件的object
delimiter使用默认的/
返回的最大数(max-keys)使用默认的1000
ObjectListing listObjects(ListObjectsRequest request) throws Ks3ClientException, Ks3ServiceException
request - ListObjectsRequestObjectListingKs3ClientExceptionKs3ServiceException - 列出bucket下满足条件的object
void deleteObject(String bucketname, String key) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称key - object的key(即名称)Ks3ClientExceptionKs3ServiceException - 删除指定的object
void deleteObject(DeleteObjectRequest request) throws Ks3ClientException, Ks3ServiceException
request - DeleteObjectRequestKs3ClientExceptionKs3ServiceException - 删除指定的object
DeleteMultipleObjectsResult deleteObjects(DeleteMultipleObjectsRequest request) throws Ks3ClientException, Ks3ServiceException
request - DeleteMultipleObjectsRequestDeleteMultipleObjectsResultKs3ClientExceptionKs3ServiceException - 删除若干的objects
DeleteMultipleObjectsResult deleteObjects(List<String> keys, String bucketName) throws Ks3ClientException, Ks3ServiceException
keys - 要删除的keysDeleteMultipleObjectsResultKs3ClientExceptionKs3ServiceException - 删除若干的objects
DeleteMultipleObjectsResult deleteObjects(String[] keys, String bucketName) throws Ks3ClientException, Ks3ServiceException
keys - 要删除的keysDeleteMultipleObjectsResultKs3ClientExceptionKs3ServiceException - 删除若干的objects
GetObjectResult getObject(String bucketname, String key) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称key - object的key(即名称)GetObjectResultKs3ClientExceptionKs3ServiceException - 获取指定的object
GetObjectResult getObject(GetObjectRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetObjectRequestGetObjectResultKs3ClientExceptionKs3ServiceException - 获取指定的object
String generatePresignedUrl(String bucket, String key, int expiration) throws Ks3ClientException
bucket - key - expiration - 外链地址过期时间,单位秒Ks3ClientExceptionString generatePresignedUrl(String bucket, String key, int expiration, ResponseHeaderOverrides overrides) throws Ks3ClientException
bucket - key - expiration - 外链地址过期时间,单位秒overrides - 修改返回的headersKs3ClientExceptionPutObjectResult putObject(String bucketname, String objectkey, File file) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即名称,编码后的长度不得超过1024个字节。)file - 要上传的文件PutObjectResultKs3ClientExceptionKs3ServiceException - 上传object
PutObjectResult putObject(String bucketname, String objectkey, InputStream inputstream, ObjectMetadata objectmeta) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即名称,编码后的长度不得超过1024个字节。)inputstream - 数据流objectmeta - object元数据ObjectMetadataPutObjectResultKs3ClientExceptionKs3ServiceException - 使用时请尽量在metadata中提供content -length,否则有可能导致jvm内存溢出。可以在metadata中指定contentMD5
上传object
PutObjectResult putObject(PutObjectRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutObjectRequestPutObjectResultKs3ClientExceptionKs3ServiceException - 上传object
CopyResult copyObject(String destinationBucket, String destinationObject, String sourceBucket, String sourceKey) throws Ks3ClientException, Ks3ServiceException
destinationBucket - 目标bucketdestinationObject - 目标object keysourceBucket - 数据源bucketsourceKey - 数据源object keyCopyResultKs3ClientExceptionKs3ServiceException - 将指定的object复制到目标地点
CopyResult copyObject(String destinationBucket, String destinationObject, String sourceBucket, String sourceKey, CannedAccessControlList cannedAcl) throws Ks3ClientException, Ks3ServiceException
destinationBucket - 目标bucketdestinationObject - 目标object keysourceBucket - 数据源bucketsourceKey - 数据源object keycannedAcl - CannedAccessControlListCopyResultKs3ClientExceptionKs3ServiceException - 将指定的object复制到目标地点
CopyResult copyObject(String destinationBucket, String destinationObject, String sourceBucket, String sourceKey, AccessControlList accessControlList) throws Ks3ClientException, Ks3ServiceException
destinationBucket - 目标bucketdestinationObject - 目标object keysourceBucket - 数据源bucketsourceKey - 数据源object keyaccessControlList - AccessControlListCopyResultKs3ClientExceptionKs3ServiceException - 将指定的object复制到目标地点
CopyResult copyObject(CopyObjectRequest request) throws Ks3ClientException, Ks3ServiceException
request - CopyObjectRequestCopyResultKs3ClientExceptionKs3ServiceException - 将指定的object复制到目标地点,将复制源object的元数据、acl等信息
HeadObjectResult headObject(String bucketname, String objectkey) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object名称)HeadObjectResultKs3ClientExceptionKs3ServiceException - 获取object的元数据、etag、上次修改时间
HeadObjectResult headObject(HeadObjectRequest request) throws Ks3ClientException, Ks3ServiceException
request - HeadObjectRequestHeadObjectResultKs3ClientExceptionKs3ServiceException - 获取object的元数据、etag、上次修改时间
boolean objectExists(String bucket, String key)
bucket - key - InitiateMultipartUploadResult initiateMultipartUpload(String bucketname, String objectkey) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object名称)InitiateMultipartUploadResultKs3ClientExceptionKs3ServiceException - 初始化分块上传
InitiateMultipartUploadResult initiateMultipartUpload(InitiateMultipartUploadRequest request) throws Ks3ClientException, Ks3ServiceException
request - InitiateMultipartUploadRequestInitiateMultipartUploadResultKs3ClientExceptionKs3ServiceException - 初始化分块上传
PartETag uploadPart(UploadPartRequest request) throws Ks3ClientException, Ks3ServiceException
request - UploadPartRequestPartETagKs3ClientExceptionKs3ServiceException - 分块上传文件
CopyResult copyPart(CopyPartRequest request) throws Ks3ClientException, Ks3ServiceException
request - CopyPartRequestCopyResultKs3ClientExceptionKs3ServiceException - 分块上传时使用copy
CompleteMultipartUploadResult completeMultipartUpload(String bucketname, String objectkey, String uploadId, List<PartETag> partETags) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即名称)uploadId - 通过初始化分块上传获取到的uploadIdpartETags - public PartETag uploadPart(UploadPartRequest request)throws Ks3ClientException, Ks3ServiceException;
获取到的结果PartETag
CompleteMultipartUploadResultKs3ClientExceptionKs3ServiceException - 完成分块上传,使ks3服务器将之前上传的小块合并成一个object
CompleteMultipartUploadResult completeMultipartUpload(ListPartsResult result) throws Ks3ClientException, Ks3ServiceException
result - ListPartsResultListParts操作的返回值Ks3ClientExceptionKs3ServiceException - 完成分块上传,使ks3服务器将之前上传的小块合并成一个object
CompleteMultipartUploadResult completeMultipartUpload(CompleteMultipartUploadRequest request) throws Ks3ClientException, Ks3ServiceException
request - CompleteMultipartUploadRequestCompleteMultipartUploadResultKs3ClientExceptionKs3ServiceException - 完成分块上传,使ks3服务器将之前上传的小块合并成一个object
void abortMultipartUpload(String bucketname, String objectkey, String uploadId) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object的名称)uploadId - 通过初始化分块上传获取到的uploadIdKs3ClientExceptionKs3ServiceException - 中止分块上传
void abortMultipartUpload(AbortMultipartUploadRequest request) throws Ks3ClientException, Ks3ServiceException
request - AbortMultipartUploadRequestKs3ClientExceptionKs3ServiceException - 中止分块上传
ListPartsResult listParts(String bucketname, String objectkey, String uploadId) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object的名称)uploadId - 通过初始化分块上传获取到的uploadIdListPartsResultKs3ClientExceptionKs3ServiceException - 列出该uploadid下已经上传成功的块
ListPartsResult listParts(String bucketname, String objectkey, String uploadId, int maxParts) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object的名称)uploadId - 通过初始化分块上传获取到的uploadIdmaxParts - 列出的最大结果数ListPartsResultKs3ClientExceptionKs3ServiceException - 列出该uploadid下已经上传成功的块
ListPartsResult listParts(String bucketname, String objectkey, String uploadId, int maxParts, int partNumberMarker) throws Ks3ClientException, Ks3ServiceException
bucketname - bucket名称objectkey - object的key(即object的名称)uploadId - 通过初始化分块上传获取到的uploadIdmaxParts - 列出的最大结果数partNumberMarker - partnumber游标,即从第partNumberMarker开始罗列ListPartsResultKs3ClientExceptionKs3ServiceException - 列出该uploadid下已经上传成功的块
ListPartsResult listParts(ListPartsRequest request) throws Ks3ClientException, Ks3ServiceException
request - ListPartsRequestListPartsResultKs3ClientExceptionKs3ServiceException - 列出该uploadid下已经上传成功的块
ListMultipartUploadsResult listMultipartUploads(String bucketName) throws Ks3ClientException, Ks3ServiceException
bucketName - ListMultipartUploadsResultKs3ClientExceptionKs3ClientException - 列出bucket下分块上传未abort或complete的块
Ks3ServiceExceptionListMultipartUploadsResult listMultipartUploads(String bucketName, String prefix) throws Ks3ClientException, Ks3ServiceException
bucketName - prefix - object key前缀ListMultipartUploadsResultKs3ClientExceptionKs3ClientException - 列出bucket下分块上传未abort或complete的块
Ks3ServiceExceptionListMultipartUploadsResult listMultipartUploads(String bucketName, String prefix, String keyMarker, String uploadIdMarker) throws Ks3ClientException, Ks3ServiceException
bucketName - prefix - object key前缀keyMarker - uploadIdMarker - keyMarker为空,uploadIdMarker不为空
无意义
keyMarker不为空,uploadIdMarker不为空
列出分块上传object key为keyMarker,且upload id 大于uploadIdMarker的块
keyMarker不为空,uploadIdMarker为空
列出分块上传object key大于keyMarker的块
ListMultipartUploadsResultKs3ClientExceptionKs3ClientException - 列出bucket下分块上传未abort或complete的块
Ks3ServiceExceptionListMultipartUploadsResult listMultipartUploads(ListMultipartUploadsRequest request) throws Ks3ClientException, Ks3ServiceException
request - ListMultipartUploadsRequestListMultipartUploadsResultKs3ClientExceptionKs3ClientException - 列出bucket下分块上传未abort或complete的块
Ks3ServiceExceptionvoid putBucketCors(PutBucketCorsRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutBucketCorsRequestKs3ClientExceptionKs3ClientException - 配置bucket的跨域资源共享
Ks3ServiceExceptionBucketCorsConfiguration getBucketCors(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - Ks3ClientExceptionKs3ServiceException - 获取bucket的跨域资源共享配置
BucketCorsConfiguration getBucketCors(GetBucketCorsRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetBucketCorsRequestKs3ClientExceptionKs3ServiceException - 获取bucket的跨域资源共享配置
void deleteBucketCors(String bucketname) throws Ks3ClientException, Ks3ServiceException
bucketname - Ks3ClientExceptionKs3ServiceException - 删除bucket的跨域资源共享配置
void deleteBucketCors(DeleteBucketCorsRequest request) throws Ks3ClientException, Ks3ServiceException
request - DeleteBucketCorsRequestKs3ClientExceptionKs3ServiceException - 删除bucket的跨域资源共享配置
<X extends Ks3WebServiceResponse<Y>,Y> Y execute(Ks3WebServiceRequest request, Class<X> clazz) throws Ks3ClientException, Ks3ServiceException
request - Class<? extends Ks3WebServiceRequest> clazz - Class<? extends Ks3WebServiceResponse> Ks3ClientExceptionKs3ClientException - 对于自定义的request和response可以通过这个方法执行
Ks3ServiceExceptionPostObjectFormFields postObject(PostPolicy policy) throws Ks3ClientException
policy - PostObjectFormFieldsKs3ClientException - 通过自定义policy规则获取post object时表单中的Signature、KSSAccessKeyId、policy三项的值
PostObjectFormFields postObject(String bucket, String filename, Map<String,String> postFormData, List<String> unknowValueFormFiled) throws Ks3ClientException
bucket - 目标bucketfilename - 要上传的文件名称,当postFormData中没有使用${filename}时可以不提供postFormData - 可以确定值得表单项unknowValueFormFiled - 无法确定值得表单项PostObjectFormFieldsKs3ClientException - 通过bucket和表单中的除 Signature、KSSAccessKeyId、policy外的所有表单项 获取post object时表单中的Signature、KSSAccessKeyId、policy三项的值
由此方法生成的签名只能适用于本次请求,matchingType全部使用eq或通配
PutAdpResult putAdpTask(String bucketName, String objectKey, List<Adp> adps) throws Ks3ClientException, Ks3ServiceException
bucketName - 要处理的数据所在的bucketobjectKey - 要处理的数据的keyadps - 一系列的操作指令AdpPutAdpResultKs3ClientExceptionKs3ServiceException - 添加数据处理任务
PutAdpResult putAdpTask(String bucketName, String objectKey, List<Adp> adps, String notifyURL) throws Ks3ClientException, Ks3ServiceException
bucketName - 要处理的数据所在的bucketobjectKey - 要处理的数据的keyadps - 一系列的操作指令AdpnotifyURL - 处理完成后KS3将调用该url,以通知用户PutAdpResultKs3ClientExceptionKs3ServiceException - 添加数据处理任务
PutAdpResult putAdpTask(PutAdpRequest request) throws Ks3ClientException, Ks3ServiceException
request - PutAdpRequestPutAdpResultKs3ClientExceptionKs3ServiceException - 添加数据处理任务
AdpTask getAdpTask(String taskid) throws Ks3ClientException, Ks3ServiceException
taskid - 由putpfop,postobject,putobject,complete_mutipart_upload返回的taskidAdpTaskKs3ClientExceptionKs3ServiceException - 查询数据处理任务的状态
AdpTask getAdpTask(GetAdpRequest request) throws Ks3ClientException, Ks3ServiceException
request - GetAdpRequestAdpTaskKs3ClientExceptionKs3ServiceException - 查询数据处理任务的状态
Copyright © 2015. All rights reserved.