├── .github └── workflows │ ├── linux-clang.yml │ ├── linux-gcc.yml │ ├── mac.yml │ └── windows.yml ├── .gitignore ├── CHANGELOG ├── CMakeLists.txt ├── LICENSE ├── README.md ├── README_zh.md ├── VERSION ├── ptest ├── CMakeLists.txt └── src │ ├── Config.cc │ ├── Config.h │ └── Program.cc ├── sample ├── CMakeLists.txt └── src │ ├── Config.cc │ ├── Config.h │ ├── LiveChannel │ ├── LiveChannelSample.cc │ └── LiveChannelSample.h │ ├── Program.cc │ ├── bucket │ ├── BucketSample.cc │ └── BucketSample.h │ ├── encryption │ ├── EncryptionSample.cc │ └── EncryptionSample.h │ ├── object │ ├── ObjectSample.cc │ └── ObjectSample.h │ ├── presignedurl │ ├── PresignedUrlSample.cc │ └── PresignedUrlSample.h │ └── service │ ├── ServiceSample.cc │ └── ServiceSample.h ├── sdk ├── CMakeLists.txt ├── include │ └── alibabacloud │ │ └── oss │ │ ├── Config.h │ │ ├── Const.h │ │ ├── Export.h │ │ ├── Global.h │ │ ├── OssClient.h │ │ ├── OssEncryptionClient.h │ │ ├── OssError.h │ │ ├── OssFwd.h │ │ ├── OssRequest.h │ │ ├── OssResponse.h │ │ ├── OssResult.h │ │ ├── ServiceRequest.h │ │ ├── ServiceResult.h │ │ ├── Types.h │ │ ├── auth │ │ ├── Credentials.h │ │ └── CredentialsProvider.h │ │ ├── client │ │ ├── AsyncCallerContext.h │ │ ├── ClientConfiguration.h │ │ ├── Error.h │ │ ├── RateLimiter.h │ │ └── RetryStrategy.h │ │ ├── encryption │ │ ├── Cipher.h │ │ ├── ContentCryptoMaterial.h │ │ ├── CryptoConfiguration.h │ │ └── EncryptionMaterials.h │ │ ├── http │ │ ├── HttpClient.h │ │ ├── HttpMessage.h │ │ ├── HttpRequest.h │ │ ├── HttpResponse.h │ │ ├── HttpType.h │ │ └── Url.h │ │ ├── model │ │ ├── AbortBucketWormRequest.h │ │ ├── AbortMultipartUploadRequest.h │ │ ├── AppendObjectRequest.h │ │ ├── AppendObjectResult.h │ │ ├── Bucket.h │ │ ├── CORSRule.h │ │ ├── CompleteBucketWormRequest.h │ │ ├── CompleteMultipartUploadRequest.h │ │ ├── CompleteMultipartUploadResult.h │ │ ├── CopyObjectRequest.h │ │ ├── CopyObjectResult.h │ │ ├── CreateBucketRequest.h │ │ ├── CreateSelectObjectMetaRequest.h │ │ ├── CreateSelectObjectMetaResult.h │ │ ├── CreateSymlinkRequest.h │ │ ├── CreateSymlinkResult.h │ │ ├── DeleteBucketCorsRequest.h │ │ ├── DeleteBucketEncryptionRequest.h │ │ ├── DeleteBucketInventoryConfigurationRequest.h │ │ ├── DeleteBucketLifecycleRequest.h │ │ ├── DeleteBucketLoggingRequest.h │ │ ├── DeleteBucketPolicyRequest.h │ │ ├── DeleteBucketQosInfoRequest.h │ │ ├── DeleteBucketRequest.h │ │ ├── DeleteBucketTaggingRequest.h │ │ ├── DeleteBucketWebsiteRequest.h │ │ ├── DeleteLiveChannelRequest.h │ │ ├── DeleteObjectRequest.h │ │ ├── DeleteObjectResult.h │ │ ├── DeleteObjectTaggingRequest.h │ │ ├── DeleteObjectTaggingResult.h │ │ ├── DeleteObjectVersionsRequest.h │ │ ├── DeleteObjectVersionsResult.h │ │ ├── DeleteObjectsRequest.h │ │ ├── DeleteObjectsResult.h │ │ ├── DownloadObjectRequest.h │ │ ├── ExtendBucketWormRequest.h │ │ ├── GeneratePresignedUrlRequest.h │ │ ├── GenerateRTMPSignedUrlRequest.h │ │ ├── GetBucketAclRequest.h │ │ ├── GetBucketAclResult.h │ │ ├── GetBucketCorsRequest.h │ │ ├── GetBucketCorsResult.h │ │ ├── GetBucketEncryptionRequest.h │ │ ├── GetBucketEncryptionResult.h │ │ ├── GetBucketInfoRequest.h │ │ ├── GetBucketInfoResult.h │ │ ├── GetBucketInventoryConfigurationRequest.h │ │ ├── GetBucketInventoryConfigurationResult.h │ │ ├── GetBucketLifecycleRequest.h │ │ ├── GetBucketLifecycleResult.h │ │ ├── GetBucketLocationRequest.h │ │ ├── GetBucketLocationResult.h │ │ ├── GetBucketLoggingRequest.h │ │ ├── GetBucketLoggingResult.h │ │ ├── GetBucketPaymentRequest.h │ │ ├── GetBucketPaymentResult.h │ │ ├── GetBucketPolicyRequest.h │ │ ├── GetBucketPolicyResult.h │ │ ├── GetBucketQosInfoRequest.h │ │ ├── GetBucketQosInfoResult.h │ │ ├── GetBucketRefererRequest.h │ │ ├── GetBucketRefererResult.h │ │ ├── GetBucketStatRequest.h │ │ ├── GetBucketStatResult.h │ │ ├── GetBucketStorageCapacityRequest.h │ │ ├── GetBucketStorageCapacityResult.h │ │ ├── GetBucketTaggingRequest.h │ │ ├── GetBucketTaggingResult.h │ │ ├── GetBucketVersioningRequest.h │ │ ├── GetBucketVersioningResult.h │ │ ├── GetBucketWebsiteRequest.h │ │ ├── GetBucketWebsiteResult.h │ │ ├── GetBucketWormRequest.h │ │ ├── GetBucketWormResult.h │ │ ├── GetLiveChannelHistoryRequest.h │ │ ├── GetLiveChannelHistoryResult.h │ │ ├── GetLiveChannelInfoRequest.h │ │ ├── GetLiveChannelInfoResult.h │ │ ├── GetLiveChannelStatRequest.h │ │ ├── GetLiveChannelStatResult.h │ │ ├── GetObjectAclRequest.h │ │ ├── GetObjectAclResult.h │ │ ├── GetObjectByUrlRequest.h │ │ ├── GetObjectMetaRequest.h │ │ ├── GetObjectRequest.h │ │ ├── GetObjectResult.h │ │ ├── GetObjectTaggingRequest.h │ │ ├── GetObjectTaggingResult.h │ │ ├── GetSymlinkRequest.h │ │ ├── GetSymlinkResult.h │ │ ├── GetUserQosInfoRequest.h │ │ ├── GetUserQosInfoResult.h │ │ ├── GetVodPlaylistRequest.h │ │ ├── GetVodPlaylistResult.h │ │ ├── HeadObjectRequest.h │ │ ├── InitiateBucketWormRequest.h │ │ ├── InitiateBucketWormResult.h │ │ ├── InitiateMultipartUploadRequest.h │ │ ├── InitiateMultipartUploadResult.h │ │ ├── InputFormat.h │ │ ├── InventoryConfiguration.h │ │ ├── LifecycleRule.h │ │ ├── ListBucketInventoryConfigurationsRequest.h │ │ ├── ListBucketInventoryConfigurationsResult.h │ │ ├── ListBucketsRequest.h │ │ ├── ListBucketsResult.h │ │ ├── ListLiveChannelRequest.h │ │ ├── ListLiveChannelResult.h │ │ ├── ListMultipartUploadsRequest.h │ │ ├── ListMultipartUploadsResult.h │ │ ├── ListObjectVersionsRequest.h │ │ ├── ListObjectVersionsResult.h │ │ ├── ListObjectsRequest.h │ │ ├── ListObjectsResult.h │ │ ├── ListObjectsV2Request.h │ │ ├── ListObjectsV2Result.h │ │ ├── ListPartsRequest.h │ │ ├── ListPartsResult.h │ │ ├── MultiCopyObjectRequest.h │ │ ├── MultipartUploadCryptoContext.h │ │ ├── ObjectCallbackBuilder.h │ │ ├── ObjectMetaData.h │ │ ├── OutputFormat.h │ │ ├── Owner.h │ │ ├── Part.h │ │ ├── PostVodPlaylistRequest.h │ │ ├── ProcessObjectRequest.h │ │ ├── PutLiveChannelRequest.h │ │ ├── PutLiveChannelResult.h │ │ ├── PutLiveChannelStatusRequest.h │ │ ├── PutObjectByUrlRequest.h │ │ ├── PutObjectRequest.h │ │ ├── PutObjectResult.h │ │ ├── QosConfiguration.h │ │ ├── RestoreObjectRequest.h │ │ ├── RestoreObjectResult.h │ │ ├── SelectObjectRequest.h │ │ ├── SetBucketAclRequest.h │ │ ├── SetBucketCorsRequest.h │ │ ├── SetBucketEncryptionRequest.h │ │ ├── SetBucketInventoryConfigurationRequest.h │ │ ├── SetBucketLifecycleRequest.h │ │ ├── SetBucketLoggingRequest.h │ │ ├── SetBucketPaymentRequest.h │ │ ├── SetBucketPolicyRequest.h │ │ ├── SetBucketQosInfoRequest.h │ │ ├── SetBucketRefererRequest.h │ │ ├── SetBucketStorageCapacityRequest.h │ │ ├── SetBucketTaggingRequest.h │ │ ├── SetBucketVersioningRequest.h │ │ ├── SetBucketWebsiteRequest.h │ │ ├── SetObjectAclRequest.h │ │ ├── SetObjectAclResult.h │ │ ├── SetObjectTaggingRequest.h │ │ ├── SetObjectTaggingResult.h │ │ ├── Tagging.h │ │ ├── UploadObjectRequest.h │ │ ├── UploadPartCopyRequest.h │ │ ├── UploadPartCopyResult.h │ │ ├── UploadPartRequest.h │ │ └── VoidResult.h │ │ └── utils │ │ ├── Executor.h │ │ ├── Outcome.h │ │ └── Runnable.h └── src │ ├── Config.h.in │ ├── OssClient.cc │ ├── OssClientImpl.cc │ ├── OssClientImpl.h │ ├── OssRequest.cc │ ├── OssResponse.cc │ ├── OssResult.cc │ ├── ServiceRequest.cc │ ├── auth │ ├── Credentials.cc │ ├── CredentialsProvider.cc │ └── SimpleCredentialsProvider.cc │ ├── client │ ├── AsyncCallerContext.cc │ ├── Client.cc │ ├── Client.h │ └── ClientConfiguration.cc │ ├── encryption │ ├── Cipher.cc │ ├── CipherOpenssl.cc │ ├── CipherOpenssl.h │ ├── ContentCryptoMaterial.cc │ ├── CryptoConfiguration.cc │ ├── CryptoModule.cc │ ├── CryptoModule.h │ ├── CryptoStreamBuf.cc │ ├── CryptoStreamBuf.h │ ├── EncryptionMaterials.cc │ └── OssEncryptionClient.cc │ ├── external │ ├── json │ │ ├── json-forwards.h │ │ ├── json.h │ │ └── jsoncpp.cpp │ └── tinyxml2 │ │ ├── tinyxml2.cpp │ │ └── tinyxml2.h │ ├── http │ ├── CurlHttpClient.cc │ ├── CurlHttpClient.h │ ├── HttpClient.cc │ ├── HttpMessage.cc │ ├── HttpRequest.cc │ ├── HttpResponse.cc │ └── Url.cc │ ├── model │ ├── AbortBucketWormRequest.cc │ ├── AbortMultipartUploadRequest.cc │ ├── AppendObjectRequest.cc │ ├── AppendObjectResult.cc │ ├── Bucket.cc │ ├── CompleteBucketWormRequest.cc │ ├── CompleteMultipartUploadRequest.cc │ ├── CompleteMultipartUploadResult.cc │ ├── CopyObjectRequest.cc │ ├── CopyObjectResult.cc │ ├── CreateBucketRequest.cc │ ├── CreateSelectObjectMetaRequest.cc │ ├── CreateSelectObjectMetaResult.cc │ ├── CreateSymlinkRequest.cc │ ├── CreateSymlinkResult.cc │ ├── DeleteBucketCorsRequest.cc │ ├── DeleteBucketEncryptionRequest.cc │ ├── DeleteBucketInventoryConfigurationRequest.cc │ ├── DeleteBucketLifecycleRequest.cc │ ├── DeleteBucketLoggingRequest.cc │ ├── DeleteBucketPolicyRequest.cc │ ├── DeleteBucketQosInfoRequest.cc │ ├── DeleteBucketTaggingRequest.cc │ ├── DeleteBucketWebsiteRequest.cc │ ├── DeleteLiveChannelRequest.cc │ ├── DeleteObjectResult.cc │ ├── DeleteObjectTaggingRequest.cc │ ├── DeleteObjectVersionsRequest.cc │ ├── DeleteObjectVersionsResult.cc │ ├── DeleteObjectsRequest.cc │ ├── DeleteObjectsResult.cc │ ├── ExtendBucketWormRequest.cc │ ├── GeneratePresignedUrlRequest.cc │ ├── GenerateRTMPSignedUrlRequest.cc │ ├── GetBucketAclRequest.cc │ ├── GetBucketAclResult.cc │ ├── GetBucketCorsRequest.cc │ ├── GetBucketCorsResult.cc │ ├── GetBucketEncryptionRequest.cc │ ├── GetBucketEncryptionResult.cc │ ├── GetBucketInfoRequest.cc │ ├── GetBucketInfoResult.cc │ ├── GetBucketInventoryConfigurationRequest.cc │ ├── GetBucketInventoryConfigurationResult.cc │ ├── GetBucketLifecycleRequest.cc │ ├── GetBucketLifecycleResult.cc │ ├── GetBucketLocationRequest.cc │ ├── GetBucketLocationResult.cc │ ├── GetBucketLoggingRequest.cc │ ├── GetBucketLoggingResult.cc │ ├── GetBucketPaymentRequest.cc │ ├── GetBucketPaymentResult.cc │ ├── GetBucketPolicyRequest.cc │ ├── GetBucketPolicyResult.cc │ ├── GetBucketQosInfoRequest.cc │ ├── GetBucketQosInfoResult.cc │ ├── GetBucketRefererRequest.cc │ ├── GetBucketRefererResult.cc │ ├── GetBucketStatRequest.cc │ ├── GetBucketStatResult.cc │ ├── GetBucketStorageCapacityRequest.cc │ ├── GetBucketStorageCapacityResult.cc │ ├── GetBucketTaggingRequest.cc │ ├── GetBucketTaggingResult.cc │ ├── GetBucketVersioningRequest.cc │ ├── GetBucketVersioningResult.cc │ ├── GetBucketWebsiteRequest.cc │ ├── GetBucketWebsiteResult.cc │ ├── GetBucketWormRequest.cc │ ├── GetBucketWormResult.cc │ ├── GetLiveChannelHistoryRequest.cc │ ├── GetLiveChannelHistoryResult.cc │ ├── GetLiveChannelInfoRequest.cc │ ├── GetLiveChannelInfoResult.cc │ ├── GetLiveChannelStatRequest.cc │ ├── GetLiveChannelStatResult.cc │ ├── GetObjectAclRequest.cc │ ├── GetObjectAclResult.cc │ ├── GetObjectByUrlRequest.cc │ ├── GetObjectMetaRequest.cc │ ├── GetObjectRequest.cc │ ├── GetObjectResult.cc │ ├── GetObjectTaggingRequest.cc │ ├── GetObjectTaggingResult.cc │ ├── GetSymlinkRequest.cc │ ├── GetSymlinkResult.cc │ ├── GetUserQosInfoRequest.cc │ ├── GetUserQosInfoResult.cc │ ├── GetVodPlaylistRequest.cc │ ├── GetVodPlaylistResult.cc │ ├── InitiateBucketWormRequest.cc │ ├── InitiateBucketWormResult.cc │ ├── InitiateMultipartUploadRequest.cc │ ├── InitiateMultipartUploadResult.cc │ ├── InputFormat.cc │ ├── InventoryConfiguration.cc │ ├── LifecycleRule.cc │ ├── ListBucketInventoryConfigurationsRequest.cc │ ├── ListBucketInventoryConfigurationsResult.cc │ ├── ListBucketsRequest.cc │ ├── ListBucketsResult.cc │ ├── ListLiveChannelRequest.cc │ ├── ListLiveChannelResult.cc │ ├── ListMultipartUploadsRequest.cc │ ├── ListMultipartUploadsResult.cc │ ├── ListObjectVersionsResult.cc │ ├── ListObjectsRequest.cc │ ├── ListObjectsResult.cc │ ├── ListObjectsV2Request.cc │ ├── ListObjectsV2Result.cc │ ├── ListPartsRequest.cc │ ├── ListPartsResult.cc │ ├── ModelError.cc │ ├── ModelError.h │ ├── ObjectCallbackBuilder.cc │ ├── ObjectMetaData.cc │ ├── OutputFormat.cc │ ├── PostVodPlaylistRequest.cc │ ├── ProcessObjectRequest.cc │ ├── PutLiveChannelRequest.cc │ ├── PutLiveChannelResult.cc │ ├── PutLiveChannelStatusRequest.cc │ ├── PutObjectByUrlRequest.cc │ ├── PutObjectRequest.cc │ ├── PutObjectResult.cc │ ├── RestoreObjectRequest.cc │ ├── RestoreObjectResult.cc │ ├── SelectObjectRequest.cc │ ├── SetBucketAclRequest.cc │ ├── SetBucketCorsRequest.cc │ ├── SetBucketEncryptionRequest.cc │ ├── SetBucketInventoryConfigurationRequest.cc │ ├── SetBucketLifecycleRequest.cc │ ├── SetBucketLoggingRequest.cc │ ├── SetBucketPaymentRequest.cc │ ├── SetBucketPolicyRequest.cc │ ├── SetBucketQosInfoRequest.cc │ ├── SetBucketRefererRequest.cc │ ├── SetBucketStorageCapacityRequest.cc │ ├── SetBucketTaggingRequest.cc │ ├── SetBucketVersioningRequest.cc │ ├── SetBucketWebsiteRequest.cc │ ├── SetObjectAclRequest.cc │ ├── SetObjectAclResult.cc │ ├── SetObjectTaggingRequest.cc │ ├── Tagging.cc │ ├── UploadPartCopyRequest.cc │ ├── UploadPartCopyResult.cc │ └── UploadPartRequest.cc │ ├── resumable │ ├── DownloadObjectRequest.cc │ ├── MultiCopyObjectRequest.cc │ ├── ResumableBaseWorker.cc │ ├── ResumableBaseWorker.h │ ├── ResumableCopier.cc │ ├── ResumableCopier.h │ ├── ResumableDownloader.cc │ ├── ResumableDownloader.h │ ├── ResumableUploader.cc │ ├── ResumableUploader.h │ └── UploadObjectRequest.cc │ ├── signer │ ├── HmacSha1Signer.cc │ ├── HmacSha1Signer.h │ ├── Signer.cc │ ├── Signer.h │ ├── SignerV1.cc │ └── SignerV4.cc │ └── utils │ ├── Crc32.cc │ ├── Crc32.h │ ├── Crc64.cc │ ├── Crc64.h │ ├── Executor.cc │ ├── FileSystemUtils.cc │ ├── FileSystemUtils.h │ ├── LogUtils.cc │ ├── LogUtils.h │ ├── Runnable.cc │ ├── SignUtils.cc │ ├── SignUtils.h │ ├── StreamBuf.h │ ├── ThreadExecutor.cc │ ├── ThreadExecutor.h │ ├── Utils.cc │ └── Utils.h ├── test ├── CMakeLists.txt ├── data │ ├── BingWallpaper.jpg │ ├── ca-certificates.crt │ ├── cpp-enc-example.jpg │ ├── example.jpg │ ├── go-enc-example.jpg │ ├── sample_data.csv │ └── sample_data.csv.gz ├── external │ └── gtest │ │ ├── gtest-all.cc │ │ └── gtest.h └── src │ ├── AccessKey │ └── AccessKeyTest.cc │ ├── Bucket │ ├── BucketAclSettingsTest.cc │ ├── BucketBasicOperationTest.cc │ ├── BucketCorsSettingsTest.cc │ ├── BucketEncryptionTest.cc │ ├── BucketInventoryConfigurationTest.cc │ ├── BucketLifecycleSettingsTest.cc │ ├── BucketLoggingSettingsTest.cc │ ├── BucketPolicySettingsTest.cc │ ├── BucketQosInfoTest.cc │ ├── BucketRefersSettingsTest.cc │ ├── BucketRequestPaymentTest.cc │ ├── BucketStorageCapacityTest.cc │ ├── BucketTaggingtTest.cc │ ├── BucketVersioningTest.cc │ ├── BucketWebsiteSettingsTest.cc │ └── BucketWormSettings.cc │ ├── Config.cc │ ├── Config.h │ ├── Encryption │ ├── CipherTest.cc │ ├── CryptoObjectTest.cc │ ├── CryptoObjectVersioningTest.cc │ ├── CryptoResumableObjectTest.cc │ └── CryptoStreamBufTest.cc │ ├── LiveChannel │ ├── DeleteLiveChannelTest.cc │ ├── GenerateRTMPSignatrueUrlTest.cc │ ├── GetLiveChannelHistoryTest.cc │ ├── ListLiveChannelTest.cc │ ├── PostAndGetVodPlayListTest.cc │ ├── PutAndGetLiveChannelStatusTest.cc │ └── PutAndGetLiveChannelTest.cc │ ├── MultipartUpload │ ├── CallableTest.cc │ ├── MultipartUploadTest.cc │ ├── ObjectAsyncTest.cc │ └── ResumableObjectTest.cc │ ├── Object │ ├── ObjectAclTest.cc │ ├── ObjectAppendTest.cc │ ├── ObjectBasicOperationTest.cc │ ├── ObjectCallbackTest.cc │ ├── ObjectCopyTest.cc │ ├── ObjectEncodingTypeTest.cc │ ├── ObjectHashCheckTest.cc │ ├── ObjectProcessTest.cc │ ├── ObjectProgressTest .cc │ ├── ObjectRequestPaymentTest.cc │ ├── ObjectRestoreTest.cc │ ├── ObjectSignedUrlTest.cc │ ├── ObjectSymlinkTest.cc │ ├── ObjectTaggingTest.cc │ ├── ObjectTrafficLimitTest.cc │ ├── ObjectVersioningTest.cc │ └── SelectObjectTest.cc │ ├── Other │ ├── Crc64Test.cc │ ├── EndpointTest.cc │ ├── FileSystemUtilsFunctionTest.cc │ ├── HttpClientTest.cc │ ├── HttpsTest.cc │ ├── IpEndpointTest.cc │ ├── LogTest.cc │ ├── RateLimiterTest.cc │ ├── SignerTest.cc │ └── UtilsFunctionTest.cc │ ├── Program.cc │ ├── Utils.cc │ └── Utils.h └── third_party ├── include ├── curl │ ├── config-win32.h │ ├── curl.h │ ├── curlbuild.h │ ├── curlrules.h │ ├── curlver.h │ ├── easy.h │ ├── mprintf.h │ ├── multi.h │ ├── stdcheaders.h │ └── typecheck-gcc.h └── openssl │ ├── aes.h │ ├── applink.c │ ├── asn1.h │ ├── asn1_mac.h │ ├── asn1t.h │ ├── bio.h │ ├── blowfish.h │ ├── bn.h │ ├── buffer.h │ ├── camellia.h │ ├── cast.h │ ├── cmac.h │ ├── cms.h │ ├── comp.h │ ├── conf.h │ ├── conf_api.h │ ├── crypto.h │ ├── des.h │ ├── des_old.h │ ├── dh.h │ ├── dsa.h │ ├── dso.h │ ├── dtls1.h │ ├── e_os2.h │ ├── ebcdic.h │ ├── ec.h │ ├── ecdh.h │ ├── ecdsa.h │ ├── engine.h │ ├── err.h │ ├── evp.h │ ├── hmac.h │ ├── idea.h │ ├── krb5_asn.h │ ├── kssl.h │ ├── lhash.h │ ├── md4.h │ ├── md5.h │ ├── mdc2.h │ ├── modes.h │ ├── obj_mac.h │ ├── objects.h │ ├── ocsp.h │ ├── opensslconf.h │ ├── opensslv.h │ ├── ossl_typ.h │ ├── pem.h │ ├── pem2.h │ ├── pkcs12.h │ ├── pkcs7.h │ ├── pqueue.h │ ├── rand.h │ ├── rc2.h │ ├── rc4.h │ ├── ripemd.h │ ├── rsa.h │ ├── safestack.h │ ├── seed.h │ ├── sha.h │ ├── srp.h │ ├── srtp.h │ ├── ssl.h │ ├── ssl2.h │ ├── ssl23.h │ ├── ssl3.h │ ├── stack.h │ ├── symhacks.h │ ├── tls1.h │ ├── ts.h │ ├── txt_db.h │ ├── ui.h │ ├── ui_compat.h │ ├── whrlpool.h │ ├── x509.h │ ├── x509_vfy.h │ └── x509v3.h └── lib ├── Win32 ├── libcurl.dll ├── libcurl.lib ├── libeay32.dll ├── libeay32.lib ├── ssleay32.dll ├── ssleay32.lib └── zlibwapi.dll └── x64 ├── libcurl.dll ├── libcurl.lib ├── libeay32.dll ├── libeay32.lib ├── ssleay32.dll ├── ssleay32.lib └── zlibwapi.dll /.github/workflows/linux-clang.yml: -------------------------------------------------------------------------------- 1 | name: Ubuntu (clang) 2 | 3 | on: 4 | push: 5 | branches: [ master ] 6 | pull_request: 7 | branches: [ master ] 8 | 9 | jobs: 10 | build: 11 | strategy: 12 | matrix: 13 | mode: [ Debug, Release ] 14 | cpp_version: [11, 20] 15 | runs-on: ubuntu-22.04 16 | 17 | steps: 18 | - name: check out 19 | uses: actions/checkout@v3 20 | 21 | - name: Install Dependencies 22 | run: | 23 | sudo apt-get update 24 | sudo apt-get install curl libssl-dev libcurl4-openssl-dev 25 | 26 | - name: configure cmake 27 | run: CXX=clang++ CC=clang cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.mode }} -DCMAKE_CXX_STANDARD=${{ matrix.cpp_version }} 28 | 29 | - name: build project 30 | run: cmake --build ${{ github.workspace }}/build --config ${{ matrix.mode }} 31 | 32 | 33 | -------------------------------------------------------------------------------- /.github/workflows/linux-gcc.yml: -------------------------------------------------------------------------------- 1 | name: Ubuntu (gcc) 2 | 3 | on: 4 | push: 5 | branches: [ master ] 6 | pull_request: 7 | branches: [ master ] 8 | 9 | jobs: 10 | ubuntu_gcc: 11 | strategy: 12 | matrix: 13 | mode: [ Debug, Release ] 14 | cpp_version: [11, 20] 15 | runs-on: ubuntu-22.04 16 | 17 | steps: 18 | - name: check out 19 | uses: actions/checkout@v3 20 | 21 | - name: Install Dependencies 22 | run: | 23 | sudo apt-get update 24 | sudo apt-get install curl libssl-dev libcurl4-openssl-dev 25 | 26 | - name: checkout gcc version 27 | run: gcc --version 28 | 29 | - name: configure cmake 30 | run: CXX=g++ CC=gcc cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.mode }} -DCMAKE_CXX_STANDARD=${{ matrix.cpp_version }} 31 | 32 | - name: build project 33 | run: cmake --build ${{ github.workspace }}/build --config ${{ matrix.mode }} 34 | -------------------------------------------------------------------------------- /.github/workflows/mac.yml: -------------------------------------------------------------------------------- 1 | name: macOS Monterey 12 2 | 3 | on: 4 | push: 5 | branches: [ master ] 6 | pull_request: 7 | branches: [ master ] 8 | 9 | jobs: 10 | build: 11 | strategy: 12 | matrix: 13 | mode: [ Debug, Release ] 14 | cpp_version: [11, 20] 15 | 16 | runs-on: macos-12 17 | 18 | steps: 19 | - name: check out 20 | uses: actions/checkout@v3 21 | 22 | - name: configure cmake 23 | run: CXX=clang++ CC=clang cmake -B ${{ github.workspace }}/build -DCMAKE_BUILD_TYPE=${{ matrix.mode }} -DCMAKE_CXX_STANDARD=${{ matrix.cpp_version }} 24 | 25 | - name: build project 26 | run: cmake --build ${{ github.workspace }}/build --config ${{ matrix.mode }} 27 | 28 | -------------------------------------------------------------------------------- /.github/workflows/windows.yml: -------------------------------------------------------------------------------- 1 | name: Windows Server 2022 2 | 3 | on: 4 | push: 5 | branches: [ master ] 6 | pull_request: 7 | branches: [ master ] 8 | 9 | jobs: 10 | build: 11 | runs-on: windows-latest 12 | 13 | strategy: 14 | matrix: 15 | mode: [Debug, Release] 16 | cpp_version: [11, 20] 17 | arch: [x64] 18 | 19 | env: 20 | CXX: cl.exe 21 | CC: cl.exe 22 | 23 | steps: 24 | - name: check out 25 | uses: actions/checkout@v3 26 | 27 | - name: generate project 28 | run: cmake -B ${{ github.workspace }}\build -DCMAKE_BUILD_TYPE=${{ matrix.mode }} -A${{ matrix.arch }} -DCMAKE_CXX_STANDARD=${{ matrix.cpp_version }} 29 | 30 | - name: build project 31 | run: cmake --build ${{ github.workspace }}\build --config ${{ matrix.mode }} 32 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .cache 2 | build 3 | -------------------------------------------------------------------------------- /CHANGELOG: -------------------------------------------------------------------------------- 1 | 2018-10-08 Version: 1.0.0 2 | 1. pre-release version for oss sdk 3 | 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2009-2017 Alibaba Cloud All rights reserved. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- 1 | 1.10.0 -------------------------------------------------------------------------------- /ptest/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | # 4 | # Licensed under the Apache License, Version 2.0 (the "License"); 5 | # you may not use this file except in compliance with the License. 6 | # You may obtain a copy of the License at 7 | # 8 | # http://www.apache.org/licenses/LICENSE-2.0 9 | # 10 | # Unless required by applicable law or agreed to in writing, software 11 | # distributed under the License is distributed on an "AS IS" BASIS, 12 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | # See the License for the specific language governing permissions and 14 | # limitations under the License. 15 | # 16 | project(cpp-sdk-ptest VERSION ${version}) 17 | 18 | file(GLOB ptest_src "src/*") 19 | 20 | 21 | add_executable(${PROJECT_NAME} ${ptest_src}) 22 | 23 | target_include_directories(${PROJECT_NAME} 24 | PRIVATE ${CMAKE_SOURCE_DIR}/sdk/include) 25 | 26 | target_link_libraries(${PROJECT_NAME} cpp-sdk${STATIC_LIB_SUFFIX}) 27 | target_link_libraries(${PROJECT_NAME} ${CRYPTO_LIBS}) 28 | target_link_libraries(${PROJECT_NAME} ${CLIENT_LIBS}) 29 | if (${TARGET_OS} STREQUAL "LINUX") 30 | target_link_libraries(${PROJECT_NAME} pthread) 31 | endif() 32 | 33 | target_compile_options(${PROJECT_NAME} 34 | PRIVATE "${SDK_COMPILER_FLAGS}") 35 | -------------------------------------------------------------------------------- /ptest/src/Config.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | namespace AlibabaCloud 4 | { 5 | namespace OSS 6 | { 7 | namespace PTest 8 | { 9 | class Config 10 | { 11 | public: 12 | Config() = default; 13 | static void PrintHelp(); 14 | static void PrintCfgInfo(); 15 | static int ParseArg(int argc, char **argv); 16 | static int LoadCfgFile(); 17 | 18 | 19 | public: 20 | static std::string Version; 21 | static std::string Endpoint; 22 | static std::string AccessKeyId; 23 | static std::string AccessKeySecret; 24 | static std::string BucketName; 25 | static std::string OssCfgFile; 26 | 27 | static std::string Command; 28 | static std::string BaseLocalFile; 29 | static std::string BaseRemoteKey; 30 | 31 | static int PartSize; 32 | static int Parallel; 33 | static int Multithread; 34 | static int LoopTimes; 35 | static int LoopDurationS; 36 | static bool Persistent; 37 | static bool DifferentSource; 38 | static bool CrcCheck; 39 | 40 | static int SpeedKBPerSec; 41 | 42 | static bool Debug; 43 | static bool DumpDetail; 44 | static bool PrintPercentile; 45 | }; 46 | } 47 | } 48 | } 49 | 50 | -------------------------------------------------------------------------------- /sample/src/Config.cc: -------------------------------------------------------------------------------- 1 | #include 2 | #include "Config.h" 3 | 4 | std::string Config::AccessKeyId = ""; 5 | std::string Config::AccessKeySecret = ""; 6 | std::string Config::Endpoint = ""; 7 | std::string Config::DirToDownload = ""; 8 | std::string Config::FileToUpload = ""; 9 | std::string Config::FileDownloadTo = ""; 10 | std::string Config::BigFileToUpload = ""; 11 | std::string Config::ImageFileToUpload = ""; 12 | std::string Config::CallbackServer = ""; 13 | std::string Config::CheckpointDir = ""; 14 | std::string Config::PublicKeyPath = ""; 15 | std::string Config::PrivateKeyPath = ""; -------------------------------------------------------------------------------- /sample/src/Config.h: -------------------------------------------------------------------------------- 1 | #include 2 | class Config 3 | { 4 | public: 5 | static std::string AccessKeyId; 6 | static std::string AccessKeySecret; 7 | static std::string Endpoint; 8 | static std::string DirToDownload; 9 | static std::string FileToUpload; 10 | static std::string FileDownloadTo; 11 | static std::string BigFileToUpload; 12 | static std::string ImageFileToUpload; 13 | static std::string CallbackServer; 14 | static std::string CheckpointDir; 15 | static std::string PublicKeyPath; 16 | static std::string PrivateKeyPath; 17 | 18 | }; 19 | 20 | -------------------------------------------------------------------------------- /sample/src/LiveChannel/LiveChannelSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define MAX_LOOP_TIMES 60 5 | 6 | class LiveChannelSample 7 | { 8 | public: 9 | LiveChannelSample(const std::string& bucket, const std::string& channeName); 10 | ~LiveChannelSample(); 11 | 12 | int PutLiveChannel(); 13 | int GetLiveChannelInfo(); 14 | int GetLiveChannelStat(); 15 | int ListLiveChannel(); 16 | int GetLiveChannelHistory(); 17 | int PostVodPlayList(); 18 | int GetVodPlayList(); 19 | int PutLiveChannelStatus(); 20 | int DeleteLiveChannel(); 21 | private: 22 | AlibabaCloud::OSS::OssClient *client; 23 | std::string bucket_; 24 | std::string channelName_; 25 | std::string rtmpUrl_; 26 | std::string signedRTMPUrl_; 27 | time_t timeStart_; 28 | time_t timeEnd_; 29 | bool isSuccess_; 30 | }; 31 | -------------------------------------------------------------------------------- /sample/src/bucket/BucketSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | class BucketSample 4 | { 5 | public: 6 | BucketSample(const std::string &bucket); 7 | ~BucketSample(); 8 | 9 | void DoesBucketExist(); 10 | 11 | void InvalidBucketName(); 12 | void CreateAndDeleteBucket(); 13 | void SetBucketAcl(); 14 | void SetBucketLogging(); 15 | void SetBucketWebsite(); 16 | void SetBucketReferer(); 17 | void SetBucketLifecycle(); 18 | void SetBucketCors(); 19 | 20 | void DeleteBucketLogging(); 21 | void DeleteBucketWebsite(); 22 | void DeleteBucketLifecycle(); 23 | void DeleteBucketCors(); 24 | 25 | void GetBucketAcl(); 26 | void GetBucketLocation(); 27 | void GetBucketLogging(); 28 | void GetBucketWebsite(); 29 | void GetBucketReferer(); 30 | void GetBucketLifecycle(); 31 | void GetBucketStat(); 32 | void GetBucketCors(); 33 | 34 | void CleanAndDeleteBucket(const std::string &bucket); 35 | void DeleteBucketsByPrefix(); 36 | 37 | private: 38 | void PrintError(const std::string &funcName, const AlibabaCloud::OSS::OssError &error); 39 | AlibabaCloud::OSS::OssClient *client; 40 | std::string bucket_; 41 | }; 42 | -------------------------------------------------------------------------------- /sample/src/encryption/EncryptionSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | class EncryptionSample 4 | { 5 | public: 6 | EncryptionSample(const std::string &bucket); 7 | ~EncryptionSample(); 8 | 9 | void PutObjectFromBuffer(); 10 | void PutObjectFromFile(); 11 | void GetObjectToBuffer(); 12 | void GetObjectToFile(); 13 | void MultipartUploadObject(); 14 | 15 | #if !defined(OSS_DISABLE_RESUAMABLE) 16 | void UploadObjectProgress(); 17 | void DownloadObjectProcess(); 18 | #endif 19 | 20 | private: 21 | void PrintError(const std::string &funcName, const AlibabaCloud::OSS::OssError &error); 22 | AlibabaCloud::OSS::OssEncryptionClient *client; 23 | std::string bucket_; 24 | }; 25 | -------------------------------------------------------------------------------- /sample/src/object/ObjectSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | class ObjectSample 4 | { 5 | public: 6 | ObjectSample(const std::string &bucket); 7 | ~ObjectSample(); 8 | 9 | void DoesObjectExist(); 10 | void PutFolder(); 11 | void PutObjectFromBuffer(); 12 | void PutObjectFromFile(); 13 | void GetObjectToBuffer(); 14 | void GetObjectToFile(); 15 | void DeleteObject(); 16 | void DeleteObjects(); 17 | void HeadObject(); 18 | void GetObjectMeta(); 19 | void AppendObject(); 20 | void MultipartUploadObject(); 21 | void ResumableObject(); 22 | 23 | void PutObjectProgress(); 24 | void GetObjectProgress(); 25 | 26 | void PutObjectCallable(); 27 | void GetObjectCallable(); 28 | 29 | #if !defined(OSS_DISABLE_RESUAMABLE) 30 | void UploadObjectProgress(); 31 | void MultiCopyObjectProcess(); 32 | void DownloadObjectProcess(); 33 | #endif 34 | 35 | void CopyObject(); 36 | void RestoreArchiveObject(const std::string bucket, const std::string key, int maxWaitTimeInSeconds); 37 | 38 | void PutObjectCallback(); 39 | 40 | void ListObjects(); 41 | void ListObjectWithMarker(); 42 | void ListObjectWithEncodeType(); 43 | 44 | private: 45 | void PrintError(const std::string &funcName, const AlibabaCloud::OSS::OssError &error); 46 | AlibabaCloud::OSS::OssClient *client; 47 | std::string bucket_; 48 | }; 49 | -------------------------------------------------------------------------------- /sample/src/presignedurl/PresignedUrlSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | class PresignedUrlSample 4 | { 5 | public: 6 | PresignedUrlSample(const std::string &bucket); 7 | ~PresignedUrlSample(); 8 | 9 | void GenPutPresignedUrl(); 10 | void GenGetPresignedUrl(); 11 | void PutObjectByUrlFromBuffer(); 12 | void PutObjectByUrlFromFile(); 13 | void GetObjectByUrlToBuffer(); 14 | void GetObjectByUrlToFile(); 15 | 16 | 17 | private: 18 | void PrintError(const std::string &funcName, const AlibabaCloud::OSS::OssError &error); 19 | AlibabaCloud::OSS::OssClient *client; 20 | std::string bucket_; 21 | std::string key_; 22 | }; 23 | -------------------------------------------------------------------------------- /sample/src/service/ServiceSample.h: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | class ServiceSample 4 | { 5 | public: 6 | ServiceSample(); 7 | ~ServiceSample(); 8 | void ListBuckets(); 9 | void ListBucketsWithMarker(); 10 | void ListBucketsWithPrefix(); 11 | private: 12 | void PrintError(const std::string &funcName, const AlibabaCloud::OSS::OssError &error); 13 | AlibabaCloud::OSS::OssClient *client; 14 | }; 15 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/Config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | // version = (major << 16) + (minor << 8) + patch 20 | #define ALIBABACLOUD_OSS_VERSION ((1 << 16) + (10 << 8) + 0) 21 | 22 | #define ALIBABACLOUD_OSS_VERSION_STR "1.10.0" 23 | 24 | // auto generated by cmake option 25 | /* #undef OSS_DISABLE_BUCKET */ 26 | /* #undef OSS_DISABLE_LIVECHANNEL */ 27 | /* #undef OSS_DISABLE_RESUAMABLE */ 28 | /* #undef OSS_DISABLE_ENCRYPTION */ 29 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/Export.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include "Global.h" 19 | 20 | #if defined(ALIBABACLOUD_SHARED) 21 | # if defined(ALIBABACLOUD_OSS_LIBRARY) 22 | # define ALIBABACLOUD_OSS_EXPORT ALIBABACLOUD_DECL_EXPORT 23 | # else 24 | # define ALIBABACLOUD_OSS_EXPORT ALIBABACLOUD_DECL_IMPORT 25 | # endif 26 | #else 27 | # define ALIBABACLOUD_OSS_EXPORT 28 | #endif 29 | 30 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/Global.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include "Config.h" 20 | 21 | #if defined(_WIN32) 22 | # ifdef _MSC_VER 23 | # pragma warning(disable : 4251) 24 | # endif // _MSC_VER 25 | # define ALIBABACLOUD_DECL_EXPORT __declspec(dllexport) 26 | # define ALIBABACLOUD_DECL_IMPORT __declspec(dllimport) 27 | #elif __GNUC__ >= 4 28 | # define ALIBABACLOUD_DECL_EXPORT __attribute__((visibility("default"))) 29 | # define ALIBABACLOUD_DECL_IMPORT __attribute__((visibility("default"))) 30 | #endif 31 | 32 | #if !defined(ALIBABACLOUD_DECL_EXPORT) 33 | # define ALIBABACLOUD_DECL_EXPORT 34 | #endif 35 | 36 | #if !defined(ALIBABACLOUD_DECL_IMPORT) 37 | # define ALIBABACLOUD_DECL_IMPORT 38 | #endif 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/OssResponse.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT OssResponse 27 | { 28 | public: 29 | OssResponse(); 30 | explicit OssResponse(const std::string& payload); 31 | ~OssResponse(); 32 | std::string payload()const; 33 | private: 34 | std::string payload_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/client/AsyncCallerContext.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT AsyncCallerContext 26 | { 27 | public: 28 | AsyncCallerContext(); 29 | explicit AsyncCallerContext(const std::string &uuid); 30 | virtual ~AsyncCallerContext(); 31 | 32 | const std::string &Uuid()const; 33 | void setUuid(const std::string &uuid); 34 | private: 35 | std::string uuid_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/client/RateLimiter.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | /*the unit of rate is kB/S*/ 26 | class ALIBABACLOUD_OSS_EXPORT RateLimiter 27 | { 28 | public: 29 | virtual ~RateLimiter() {} 30 | virtual void setRate(int rate) = 0; 31 | virtual int Rate() const = 0; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/client/RetryStrategy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT RetryStrategy 26 | { 27 | public: 28 | virtual ~RetryStrategy() {} 29 | virtual bool shouldRetry(const Error& error, long attemptedRetries) const = 0; 30 | virtual long calcDelayTimeMs(const Error& error, long attemptedRetries) const = 0; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/encryption/CryptoConfiguration.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | enum class CryptoStorageMethod 28 | { 29 | METADATA, 30 | }; 31 | 32 | enum class CryptoMode 33 | { 34 | ENCRYPTION_AESCTR, 35 | }; 36 | 37 | class ALIBABACLOUD_OSS_EXPORT CryptoConfiguration 38 | { 39 | public: 40 | CryptoConfiguration(); 41 | ~CryptoConfiguration(); 42 | 43 | public: 44 | CryptoMode cryptoMode; 45 | CryptoStorageMethod cryptoStorageMethod; 46 | }; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/AbortBucketWormRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT AbortBucketWormRequest : public OssBucketRequest 26 | { 27 | public: 28 | AbortBucketWormRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/AbortMultipartUploadRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2018 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT AbortMultipartUploadRequest: public OssObjectRequest 27 | { 28 | public: 29 | AbortMultipartUploadRequest(const std::string& bucket, const std::string& key, 30 | const std::string& uploadId); 31 | protected: 32 | virtual ParameterCollection specialParameters() const; 33 | private: 34 | std::string uploadId_; 35 | }; 36 | } 37 | } -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/AppendObjectResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT AppendObjectResult : public OssObjectResult 28 | { 29 | public: 30 | public: 31 | AppendObjectResult(); 32 | AppendObjectResult(const HeaderCollection& header); 33 | uint64_t Length() const { return length_ ; } 34 | uint64_t CRC64() const { return crc64_ ; } 35 | private: 36 | uint64_t length_; 37 | uint64_t crc64_; 38 | }; 39 | } 40 | } 41 | 42 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/CompleteBucketWormRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT CompleteBucketWormRequest : public OssBucketRequest 26 | { 27 | public: 28 | CompleteBucketWormRequest(const std::string& bucket, const std::string& wormId); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | private: 32 | std::string wormId_; 33 | }; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/CreateSymlinkResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT CreateSymlinkResult : public OssObjectResult 28 | { 29 | public: 30 | CreateSymlinkResult(); 31 | CreateSymlinkResult(const std::string& etag); 32 | CreateSymlinkResult(const HeaderCollection& headers); 33 | const std::string& ETag() const { return etag_; } 34 | private: 35 | std::string etag_; 36 | }; 37 | } 38 | } 39 | 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketCorsRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketCorsRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketCorsRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketEncryptionRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketEncryptionRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketEncryptionRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketInventoryConfigurationRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketInventoryConfigurationRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketInventoryConfigurationRequest(const std::string& bucket); 29 | DeleteBucketInventoryConfigurationRequest(const std::string& bucket, const std::string& id); 30 | void setId(const std::string& id) { id_ = id; } 31 | protected: 32 | virtual ParameterCollection specialParameters() const; 33 | private: 34 | std::string id_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketLifecycleRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | 27 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketLifecycleRequest : public OssBucketRequest 28 | { 29 | public: 30 | DeleteBucketLifecycleRequest(const std::string& bucket); 31 | protected: 32 | virtual ParameterCollection specialParameters() const; 33 | }; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketLoggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | 26 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketLoggingRequest : public OssBucketRequest 27 | { 28 | public: 29 | DeleteBucketLoggingRequest(const std::string& bucket); 30 | protected: 31 | virtual ParameterCollection specialParameters() const; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketPolicyRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | 26 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketPolicyRequest : public OssBucketRequest 27 | { 28 | public: 29 | DeleteBucketPolicyRequest(const std::string& bucket); 30 | protected: 31 | virtual ParameterCollection specialParameters() const; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketQosInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketQosInfoRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketQosInfoRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketRequest(const std::string& bucket): 29 | OssBucketRequest(bucket) 30 | { 31 | } 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketTaggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketTaggingRequest : public OssBucketRequest 27 | { 28 | public: 29 | DeleteBucketTaggingRequest(const std::string& bucket); 30 | void setTagging(const Tagging& tagging); 31 | 32 | protected: 33 | virtual ParameterCollection specialParameters() const; 34 | private: 35 | Tagging tagging_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteBucketWebsiteRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteBucketWebsiteRequest : public OssBucketRequest 26 | { 27 | public: 28 | DeleteBucketWebsiteRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteLiveChannelRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteLiveChannelRequest : public LiveChannelRequest 26 | { 27 | public: 28 | DeleteLiveChannelRequest(const std::string& bucket, const std::string& channelName); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | virtual int validate() const; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteObjectRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteObjectRequest : public OssObjectRequest 26 | { 27 | public: 28 | DeleteObjectRequest(const std::string& bucket, const std::string& key): 29 | OssObjectRequest(bucket, key) 30 | { 31 | } 32 | 33 | DeleteObjectRequest(const std::string& bucket, const std::string& key, const std::string& versionId) : 34 | OssObjectRequest(bucket, key) 35 | { 36 | versionId_ = versionId; 37 | } 38 | }; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteObjectResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT DeleteObjectResult : public OssObjectResult 27 | { 28 | public: 29 | DeleteObjectResult(); 30 | DeleteObjectResult(const HeaderCollection& header); 31 | bool DeleteMarker() const; 32 | private: 33 | bool deleteMarker_; 34 | }; 35 | } 36 | } 37 | 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteObjectTaggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteObjectTaggingRequest : public OssObjectRequest 26 | { 27 | public: 28 | DeleteObjectTaggingRequest(const std::string& bucket, const std::string& key); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteObjectTaggingResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT DeleteObjectTaggingResult : public OssObjectResult 26 | { 27 | public: 28 | DeleteObjectTaggingResult():OssObjectResult(){} 29 | DeleteObjectTaggingResult(const HeaderCollection& headers) : OssObjectResult(headers) {} 30 | }; 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/DeleteObjectsResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT DeleteObjectsResult : public OssResult 28 | { 29 | public: 30 | DeleteObjectsResult(); 31 | DeleteObjectsResult(const std::string& data); 32 | DeleteObjectsResult(const std::shared_ptr& data); 33 | DeleteObjectsResult& operator=(const std::string& data); 34 | bool Quiet() const; 35 | const std::list& keyList() const; 36 | private: 37 | bool quiet_; 38 | std::list keyList_; 39 | }; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/ExtendBucketWormRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT ExtendBucketWormRequest : public OssBucketRequest 26 | { 27 | public: 28 | ExtendBucketWormRequest(const std::string& bucket, const std::string& wormId, uint32_t day); 29 | protected: 30 | virtual std::string payload() const; 31 | virtual ParameterCollection specialParameters() const; 32 | private: 33 | std::string wormId_; 34 | uint32_t day_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketAclRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketAclRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketAclRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketCorsRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketCorsRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketCorsRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketCorsResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketCorsResult : public OssResult 27 | { 28 | public: 29 | GetBucketCorsResult(); 30 | GetBucketCorsResult(const std::string& data); 31 | GetBucketCorsResult(const std::shared_ptr& data); 32 | GetBucketCorsResult& operator=(const std::string& data); 33 | const CORSRuleList& CORSRules() const { return ruleList_; }; 34 | private: 35 | CORSRuleList ruleList_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketEncryptionRequest.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | /* 3 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 4 | * 5 | * Licensed under the Apache License, Version 2.0 (the "License"); 6 | * you may not use this file except in compliance with the License. 7 | * You may obtain a copy of the License at 8 | * 9 | * http://www.apache.org/licenses/LICENSE-2.0 10 | * 11 | * Unless required by applicable law or agreed to in writing, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | */ 17 | 18 | #pragma once 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketEncryptionRequest : public OssBucketRequest 27 | { 28 | public: 29 | GetBucketEncryptionRequest(const std::string& bucket); 30 | protected: 31 | virtual ParameterCollection specialParameters() const; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketInfoRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketInfoRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketInventoryConfigurationRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketInventoryConfigurationRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketInventoryConfigurationRequest(const std::string& bucket); 29 | GetBucketInventoryConfigurationRequest(const std::string& bucket, const std::string& id); 30 | void setId(const std::string& id) { id_ = id; } 31 | protected: 32 | virtual ParameterCollection specialParameters() const; 33 | private: 34 | std::string id_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketLifecycleRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketLifecycleRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketLifecycleRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketLifecycleResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT GetBucketLifecycleResult : public OssResult 28 | { 29 | public: 30 | GetBucketLifecycleResult(); 31 | GetBucketLifecycleResult(const std::string& data); 32 | GetBucketLifecycleResult(const std::shared_ptr& data); 33 | GetBucketLifecycleResult& operator=(const std::string& data); 34 | const LifecycleRuleList& LifecycleRules() { return lifecycleRuleList_; } 35 | private: 36 | LifecycleRuleList lifecycleRuleList_; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketLocationRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketLocationRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketLocationRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketLocationResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketLocationResult : public OssResult 27 | { 28 | public: 29 | GetBucketLocationResult(); 30 | GetBucketLocationResult(const std::string& data); 31 | GetBucketLocationResult(const std::shared_ptr& data); 32 | GetBucketLocationResult& operator=(const std::string& data); 33 | const std::string& Location() const { return location_; } 34 | private: 35 | std::string location_; 36 | public: 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketLoggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketLoggingRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketLoggingRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketPaymentRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketRequestPaymentRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketRequestPaymentRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketPaymentResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT GetBucketPaymentResult : public OssResult 28 | { 29 | public: 30 | GetBucketPaymentResult(); 31 | GetBucketPaymentResult(const std::string& data); 32 | GetBucketPaymentResult(const std::shared_ptr& data); 33 | GetBucketPaymentResult& operator=(const std::string& data); 34 | RequestPayer Payer()const { return payer_; } 35 | private: 36 | RequestPayer payer_; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketPolicyRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketPolicyRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketPolicyRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketPolicyResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketPolicyResult : public OssResult 27 | { 28 | public: 29 | GetBucketPolicyResult(); 30 | GetBucketPolicyResult(const std::string& data); 31 | GetBucketPolicyResult(const std::shared_ptr& data); 32 | GetBucketPolicyResult& operator=(const std::string& data); 33 | const std::string& Policy()const { return policy_; } 34 | private: 35 | std::string policy_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketQosInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketQosInfoRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketQosInfoRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketQosInfoResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketQosInfoResult : public OssResult 27 | { 28 | public: 29 | GetBucketQosInfoResult(); 30 | GetBucketQosInfoResult(const std::string& data); 31 | GetBucketQosInfoResult(const std::shared_ptr& data); 32 | GetBucketQosInfoResult& operator=(const std::string& data); 33 | const QosConfiguration& QosInfo() const { return qosInfo_; } 34 | private: 35 | QosConfiguration qosInfo_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketRefererRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketRefererRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketRefererRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketStatRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketStatRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketStatRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketStorageCapacityRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketStorageCapacityRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketStorageCapacityRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketStorageCapacityResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT GetBucketStorageCapacityResult : public OssResult 28 | { 29 | public: 30 | GetBucketStorageCapacityResult(); 31 | GetBucketStorageCapacityResult(const std::string& data); 32 | GetBucketStorageCapacityResult(const std::shared_ptr& data); 33 | GetBucketStorageCapacityResult& operator=(const std::string& data); 34 | int64_t StorageCapacity() const { return storageCapacity_; } 35 | private: 36 | int64_t storageCapacity_; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketTaggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketTaggingRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketTaggingRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketTaggingResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetBucketTaggingResult : public OssResult 27 | { 28 | public: 29 | GetBucketTaggingResult(); 30 | GetBucketTaggingResult(const std::string& data); 31 | GetBucketTaggingResult(const std::shared_ptr& data); 32 | GetBucketTaggingResult& operator=(const std::string& data); 33 | const AlibabaCloud::OSS::Tagging& Tagging() const { return tagging_; }; 34 | private: 35 | AlibabaCloud::OSS::Tagging tagging_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketVersioningRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketVersioningRequest: public OssBucketRequest 26 | { 27 | public: 28 | GetBucketVersioningRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketVersioningResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT GetBucketVersioningResult : public OssResult 28 | { 29 | public: 30 | GetBucketVersioningResult(); 31 | GetBucketVersioningResult(const std::string& data); 32 | GetBucketVersioningResult(const std::shared_ptr& data); 33 | GetBucketVersioningResult& operator=(const std::string& data); 34 | VersioningStatus Status() const { return status_; } 35 | private: 36 | VersioningStatus status_; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketWebsiteRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketWebsiteRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketWebsiteRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetBucketWormRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetBucketWormRequest : public OssBucketRequest 26 | { 27 | public: 28 | GetBucketWormRequest(const std::string& bucket); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetLiveChannelHistoryRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | 24 | namespace AlibabaCloud 25 | { 26 | namespace OSS 27 | { 28 | class ALIBABACLOUD_OSS_EXPORT GetLiveChannelHistoryRequest : public LiveChannelRequest 29 | { 30 | public: 31 | GetLiveChannelHistoryRequest(const std::string& bucket, const std::string& channelName); 32 | 33 | protected: 34 | virtual ParameterCollection specialParameters() const; 35 | virtual int validate() const; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetLiveChannelInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | 24 | namespace AlibabaCloud 25 | { 26 | namespace OSS 27 | { 28 | class ALIBABACLOUD_OSS_EXPORT GetLiveChannelInfoRequest : public LiveChannelRequest 29 | { 30 | public: 31 | GetLiveChannelInfoRequest(const std::string& bucket, const std::string& channelName); 32 | 33 | protected: 34 | virtual ParameterCollection specialParameters() const; 35 | virtual int validate() const; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetLiveChannelStatRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | 24 | namespace AlibabaCloud 25 | { 26 | namespace OSS 27 | { 28 | class ALIBABACLOUD_OSS_EXPORT GetLiveChannelStatRequest : public LiveChannelRequest 29 | { 30 | public: 31 | GetLiveChannelStatRequest(const std::string& bucket, const std::string& channelName); 32 | 33 | protected: 34 | virtual ParameterCollection specialParameters() const; 35 | virtual int validate() const; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetObjectAclRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT GetObjectAclRequest: public OssObjectRequest 27 | { 28 | public: 29 | GetObjectAclRequest(const std::string& bucket, const std::string& key); 30 | protected: 31 | virtual ParameterCollection specialParameters() const; 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetObjectMetaRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetObjectMetaRequest : public OssObjectRequest 26 | { 27 | public: 28 | GetObjectMetaRequest(const std::string& bucket, const std::string& key): 29 | OssObjectRequest(bucket, key) 30 | { 31 | } 32 | protected: 33 | virtual ParameterCollection specialParameters() const; 34 | }; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetObjectTaggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetObjectTaggingRequest : public OssObjectRequest 26 | { 27 | public: 28 | GetObjectTaggingRequest(const std::string& bucket, const std::string& key); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetSymlinkRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | #include 23 | 24 | namespace AlibabaCloud 25 | { 26 | namespace OSS 27 | { 28 | class ALIBABACLOUD_OSS_EXPORT GetSymlinkRequest: public OssObjectRequest 29 | { 30 | public: 31 | GetSymlinkRequest(const std::string& bucket, const std::string& key); 32 | protected: 33 | virtual ParameterCollection specialParameters() const; 34 | }; 35 | } 36 | } 37 | 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetUserQosInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT GetUserQosInfoRequest : public OssRequest 26 | { 27 | public: 28 | GetUserQosInfoRequest(); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | }; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/GetVodPlaylistResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | 28 | class ALIBABACLOUD_OSS_EXPORT GetVodPlaylistResult: public OssResult 29 | { 30 | public: 31 | GetVodPlaylistResult(); 32 | GetVodPlaylistResult(const std::string& data); 33 | GetVodPlaylistResult(const std::shared_ptr& data); 34 | GetVodPlaylistResult& operator=(const std::string& data); 35 | 36 | const std::string& PlaylistContent() const; 37 | 38 | private: 39 | std::string playListContent_; 40 | }; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/HeadObjectRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT HeadObjectRequest : public OssObjectRequest 26 | { 27 | public: 28 | HeadObjectRequest(const std::string& bucket, const std::string& key): 29 | OssObjectRequest(bucket, key) 30 | { 31 | } 32 | }; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/InitiateBucketWormRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT InitiateBucketWormRequest : public OssBucketRequest 26 | { 27 | public: 28 | InitiateBucketWormRequest(const std::string& bucket, uint32_t day); 29 | protected: 30 | virtual std::string payload() const; 31 | virtual ParameterCollection specialParameters() const; 32 | private: 33 | uint32_t day_; 34 | }; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/InitiateBucketWormResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT InitiateBucketWormResult : public OssResult 27 | { 28 | public: 29 | InitiateBucketWormResult(); 30 | InitiateBucketWormResult(const HeaderCollection& header); 31 | const std::string& WormId()const { return wormId_; } 32 | private: 33 | std::string wormId_; 34 | }; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/ListBucketInventoryConfigurationsRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT ListBucketInventoryConfigurationsRequest : public OssBucketRequest 26 | { 27 | public: 28 | ListBucketInventoryConfigurationsRequest(const std::string& bucket); 29 | void setContinuationToken(const std::string& token) { continuationToken_ = token; } 30 | protected: 31 | virtual ParameterCollection specialParameters() const; 32 | private: 33 | std::string continuationToken_; 34 | }; 35 | } 36 | } 37 | 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/ListLiveChannelRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT ListLiveChannelRequest: public OssBucketRequest 26 | { 27 | public: 28 | ListLiveChannelRequest(const std::string &bucket); 29 | 30 | void setMarker(const std::string& marker); 31 | void setMaxKeys(uint32_t maxKeys); 32 | void setPrefix(const std::string& prefix); 33 | protected: 34 | virtual ParameterCollection specialParameters() const; 35 | virtual int validate() const; 36 | private: 37 | std::string prefix_; 38 | std::string marker_; 39 | uint32_t maxKeys_; 40 | }; 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/RestoreObjectRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | #include 22 | 23 | namespace AlibabaCloud 24 | { 25 | namespace OSS 26 | { 27 | class ALIBABACLOUD_OSS_EXPORT RestoreObjectRequest: public OssObjectRequest 28 | { 29 | public: 30 | RestoreObjectRequest(const std::string& bucket, const std::string& key); 31 | void setDays(uint32_t days); 32 | void setTierType(TierType type); 33 | protected: 34 | virtual std::string payload() const; 35 | virtual ParameterCollection specialParameters() const; 36 | private: 37 | uint32_t days_; 38 | TierType tierType_; 39 | bool tierTypeIsSet_; 40 | }; 41 | } 42 | } 43 | 44 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/RestoreObjectResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT RestoreObjectResult : public OssObjectResult 27 | { 28 | public: 29 | RestoreObjectResult(); 30 | RestoreObjectResult(const HeaderCollection& header); 31 | }; 32 | } 33 | } 34 | 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketAclRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT SetBucketAclRequest: public OssBucketRequest 27 | { 28 | public: 29 | SetBucketAclRequest(const std::string& bucket, CannedAccessControlList acl); 30 | void setAcl(CannedAccessControlList acl); 31 | protected: 32 | virtual HeaderCollection specialHeaders() const; 33 | virtual ParameterCollection specialParameters() const; 34 | private: 35 | CannedAccessControlList acl_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketPaymentRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT SetBucketRequestPaymentRequest : public OssBucketRequest 27 | { 28 | public: 29 | SetBucketRequestPaymentRequest(const std::string& bucket); 30 | SetBucketRequestPaymentRequest(const std::string& bucket, RequestPayer payer); 31 | void setRequestPayer(RequestPayer payer) { payer_ = payer; } 32 | protected: 33 | virtual std::string payload() const; 34 | virtual ParameterCollection specialParameters() const; 35 | private: 36 | RequestPayer payer_; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketPolicyRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT SetBucketPolicyRequest : public OssBucketRequest 26 | { 27 | public: 28 | SetBucketPolicyRequest(const std::string& bucket); 29 | SetBucketPolicyRequest(const std::string& bucket, const std::string& policy); 30 | void setPolicy(const std::string& policy) { policy_ = policy; } 31 | protected: 32 | virtual std::string payload() const; 33 | virtual ParameterCollection specialParameters() const; 34 | private: 35 | std::string policy_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketQosInfoRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT SetBucketQosInfoRequest : public OssBucketRequest 27 | { 28 | public: 29 | SetBucketQosInfoRequest(const std::string& bucket); 30 | SetBucketQosInfoRequest(const std::string& bucket, const QosConfiguration& qos); 31 | protected: 32 | virtual std::string payload() const; 33 | virtual ParameterCollection specialParameters() const; 34 | private: 35 | QosConfiguration qosInfo_; 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketStorageCapacityRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT SetBucketStorageCapacityRequest : public OssBucketRequest 26 | { 27 | public: 28 | SetBucketStorageCapacityRequest(const std::string& bucket, int64_t storageCapacity); 29 | protected: 30 | virtual ParameterCollection specialParameters() const; 31 | virtual std::string payload() const; 32 | virtual int validate() const; 33 | private: 34 | int64_t storageCapacity_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketTaggingRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT SetBucketTaggingRequest : public OssBucketRequest 27 | { 28 | public: 29 | SetBucketTaggingRequest(const std::string& bucket); 30 | SetBucketTaggingRequest(const std::string& bucket, const Tagging& tagging); 31 | void setTagging(const Tagging& tagging); 32 | protected: 33 | virtual std::string payload() const; 34 | virtual ParameterCollection specialParameters() const; 35 | virtual int validate() const; 36 | private: 37 | Tagging tagging_; 38 | }; 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetBucketVersioningRequest.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT SetBucketVersioningRequest : public OssBucketRequest 26 | { 27 | public: 28 | SetBucketVersioningRequest(const std::string& bucket, VersioningStatus status); 29 | void setStatus(VersioningStatus status); 30 | protected: 31 | virtual std::string payload() const; 32 | virtual ParameterCollection specialParameters() const; 33 | private: 34 | VersioningStatus status_; 35 | }; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetObjectAclResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT SetObjectAclResult : public OssObjectResult 27 | { 28 | public: 29 | SetObjectAclResult(); 30 | SetObjectAclResult(const HeaderCollection& header); 31 | }; 32 | } 33 | } 34 | 35 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/SetObjectTaggingResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ALIBABACLOUD_OSS_EXPORT SetObjectTaggingResult : public OssObjectResult 26 | { 27 | public: 28 | SetObjectTaggingResult(): OssObjectResult() {} 29 | SetObjectTaggingResult(const HeaderCollection& headers): OssObjectResult(headers) {} 30 | }; 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/model/VoidResult.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | 20 | namespace AlibabaCloud 21 | { 22 | namespace OSS 23 | { 24 | class ALIBABACLOUD_OSS_EXPORT VoidResult :public OssResult 25 | { 26 | public: 27 | VoidResult() = default; 28 | ~VoidResult() = default; 29 | private: 30 | }; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/utils/Executor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | 29 | namespace AlibabaCloud 30 | { 31 | namespace OSS 32 | { 33 | class ALIBABACLOUD_OSS_EXPORT Executor 34 | { 35 | public: 36 | Executor(); 37 | virtual ~Executor(); 38 | virtual void execute(Runnable* task) = 0; 39 | }; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /sdk/include/alibabacloud/oss/utils/Runnable.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | #include 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | class ALIBABACLOUD_OSS_EXPORT Runnable 27 | { 28 | public: 29 | explicit Runnable(const std::function f); 30 | void run()const; 31 | private: 32 | std::function f_; 33 | }; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /sdk/src/Config.h.in: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | // version = (major << 16) + (minor << 8) + patch 20 | #define ALIBABACLOUD_OSS_VERSION ((@PROJECT_VERSION_MAJOR@ << 16) + (@PROJECT_VERSION_MINOR@ << 8) + @PROJECT_VERSION_PATCH@) 21 | 22 | #define ALIBABACLOUD_OSS_VERSION_STR "@PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@.@PROJECT_VERSION_PATCH@" 23 | 24 | // auto generated by cmake option 25 | #cmakedefine OSS_DISABLE_BUCKET 26 | #cmakedefine OSS_DISABLE_LIVECHANNEL 27 | #cmakedefine OSS_DISABLE_RESUAMABLE 28 | #cmakedefine OSS_DISABLE_ENCRYPTION -------------------------------------------------------------------------------- /sdk/src/OssResponse.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | OssResponse::OssResponse() : 22 | payload_() 23 | { 24 | } 25 | 26 | OssResponse::OssResponse(const std::string &payload) : 27 | payload_(payload) 28 | { 29 | } 30 | 31 | OssResponse::~OssResponse() 32 | { 33 | } 34 | 35 | std::string OssResponse::payload() const 36 | { 37 | return payload_; 38 | } 39 | -------------------------------------------------------------------------------- /sdk/src/OssResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include 19 | 20 | using namespace AlibabaCloud::OSS; 21 | 22 | OssResult::OssResult() : 23 | parseDone_(false) 24 | { 25 | } 26 | 27 | OssResult::OssResult(const HeaderCollection& header): 28 | OssResult() 29 | { 30 | if (header.find("x-oss-request-id") != header.end()) { 31 | requestId_ = header.at("x-oss-request-id"); 32 | } 33 | } 34 | 35 | OssObjectResult::OssObjectResult() : 36 | OssResult() 37 | { 38 | } 39 | 40 | OssObjectResult::OssObjectResult(const HeaderCollection& header) : 41 | OssResult(header) 42 | { 43 | if (header.find("x-oss-version-id") != header.end()) { 44 | versionId_ = header.at("x-oss-version-id"); 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /sdk/src/auth/SimpleCredentialsProvider.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | SimpleCredentialsProvider::SimpleCredentialsProvider(const Credentials &credentials): 22 | CredentialsProvider(), 23 | credentials_(credentials) 24 | { 25 | } 26 | 27 | SimpleCredentialsProvider::SimpleCredentialsProvider(const std::string & accessKeyId, 28 | const std::string & accessKeySecret, 29 | const std::string &securityToken) : 30 | CredentialsProvider(), 31 | credentials_(accessKeyId, accessKeySecret, securityToken) 32 | { 33 | } 34 | 35 | SimpleCredentialsProvider::~SimpleCredentialsProvider() 36 | { 37 | } 38 | 39 | Credentials SimpleCredentialsProvider::getCredentials() 40 | { 41 | return credentials_; 42 | } 43 | -------------------------------------------------------------------------------- /sdk/src/client/AsyncCallerContext.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include "../utils/Utils.h" 19 | 20 | using namespace AlibabaCloud::OSS; 21 | 22 | AsyncCallerContext::AsyncCallerContext() : 23 | uuid_(GenerateUuid()) 24 | { 25 | } 26 | 27 | AsyncCallerContext::AsyncCallerContext(const std::string &uuid) : 28 | uuid_(uuid) 29 | { 30 | } 31 | 32 | AsyncCallerContext::~AsyncCallerContext() 33 | { 34 | } 35 | 36 | const std::string &AsyncCallerContext::Uuid()const 37 | { 38 | return uuid_; 39 | } 40 | 41 | void AsyncCallerContext::setUuid(const std::string &uuid) 42 | { 43 | uuid_ = uuid; 44 | } 45 | -------------------------------------------------------------------------------- /sdk/src/encryption/ContentCryptoMaterial.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | 20 | using namespace AlibabaCloud::OSS; 21 | 22 | ContentCryptoMaterial::ContentCryptoMaterial() 23 | { 24 | } 25 | 26 | ContentCryptoMaterial::~ContentCryptoMaterial() 27 | { 28 | } 29 | -------------------------------------------------------------------------------- /sdk/src/encryption/CryptoConfiguration.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | #include 17 | 18 | using namespace AlibabaCloud::OSS; 19 | 20 | CryptoConfiguration::CryptoConfiguration(): 21 | cryptoMode(CryptoMode::ENCRYPTION_AESCTR), 22 | cryptoStorageMethod(CryptoStorageMethod::METADATA) 23 | { 24 | } 25 | 26 | CryptoConfiguration::~CryptoConfiguration() 27 | { 28 | } 29 | -------------------------------------------------------------------------------- /sdk/src/model/AbortBucketWormRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | AbortBucketWormRequest::AbortBucketWormRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection AbortBucketWormRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["worm"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/AbortMultipartUploadRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include "../utils/Utils.h" 20 | 21 | using namespace AlibabaCloud::OSS; 22 | 23 | AbortMultipartUploadRequest::AbortMultipartUploadRequest( 24 | const std::string &bucket, const std::string &key, const std::string &uploadId) : 25 | OssObjectRequest(bucket, key), 26 | uploadId_(uploadId) 27 | { 28 | } 29 | 30 | ParameterCollection AbortMultipartUploadRequest::specialParameters() const 31 | { 32 | ParameterCollection parameters; 33 | parameters["uploadId"] = uploadId_; 34 | return parameters; 35 | } 36 | -------------------------------------------------------------------------------- /sdk/src/model/Bucket.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | 20 | using namespace AlibabaCloud::OSS; 21 | 22 | Bucket::~Bucket() 23 | { 24 | } 25 | -------------------------------------------------------------------------------- /sdk/src/model/CompleteBucketWormRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | CompleteBucketWormRequest::CompleteBucketWormRequest(const std::string &bucket, const std::string& wormId) : 22 | OssBucketRequest(bucket), 23 | wormId_(wormId) 24 | { 25 | } 26 | 27 | ParameterCollection CompleteBucketWormRequest::specialParameters() const 28 | { 29 | ParameterCollection parameters; 30 | parameters["wormId"] = wormId_; 31 | return parameters; 32 | } -------------------------------------------------------------------------------- /sdk/src/model/CreateSymlinkResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include 19 | #include "../utils/Utils.h" 20 | 21 | using namespace AlibabaCloud::OSS; 22 | 23 | CreateSymlinkResult::CreateSymlinkResult(): 24 | OssObjectResult() 25 | { 26 | } 27 | 28 | CreateSymlinkResult::CreateSymlinkResult(const std::string& etag): 29 | OssObjectResult(), 30 | etag_(TrimQuotes(etag.c_str())) 31 | { 32 | } 33 | 34 | CreateSymlinkResult::CreateSymlinkResult(const HeaderCollection& headers): 35 | OssObjectResult(headers) 36 | { 37 | if (headers.find(Http::ETAG) != headers.end()) { 38 | etag_ = TrimQuotes(headers.at(Http::ETAG).c_str()); 39 | } 40 | } 41 | 42 | 43 | -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketCorsRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketCorsRequest::DeleteBucketCorsRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketCorsRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["cors"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketEncryptionRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketEncryptionRequest::DeleteBucketEncryptionRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketEncryptionRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["encryption"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketInventoryConfigurationRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketInventoryConfigurationRequest::DeleteBucketInventoryConfigurationRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | DeleteBucketInventoryConfigurationRequest::DeleteBucketInventoryConfigurationRequest(const std::string& bucket, const std::string& id) : 27 | DeleteBucketInventoryConfigurationRequest(bucket) 28 | { 29 | id_ = id; 30 | } 31 | 32 | ParameterCollection DeleteBucketInventoryConfigurationRequest::specialParameters() const 33 | { 34 | ParameterCollection parameters; 35 | parameters["inventory"] = ""; 36 | parameters["inventoryId"] = id_; 37 | return parameters; 38 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketLifecycleRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketLifecycleRequest::DeleteBucketLifecycleRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketLifecycleRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["lifecycle"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketLoggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketLoggingRequest::DeleteBucketLoggingRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketLoggingRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["logging"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketPolicyRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketPolicyRequest::DeleteBucketPolicyRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketPolicyRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["policy"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketQosInfoRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketQosInfoRequest::DeleteBucketQosInfoRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketQosInfoRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["qosInfo"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketTaggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketTaggingRequest::DeleteBucketTaggingRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | void DeleteBucketTaggingRequest::setTagging(const Tagging& tagging) 27 | { 28 | tagging_ = tagging; 29 | } 30 | 31 | ParameterCollection DeleteBucketTaggingRequest::specialParameters() const 32 | { 33 | ParameterCollection parameters; 34 | std::string str; 35 | for (const Tag& tag : tagging_.Tags()) 36 | { 37 | if (!str.empty()) 38 | str += ","; 39 | str += tag.Key(); 40 | } 41 | parameters["tagging"] = str; 42 | return parameters; 43 | } 44 | 45 | -------------------------------------------------------------------------------- /sdk/src/model/DeleteBucketWebsiteRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteBucketWebsiteRequest::DeleteBucketWebsiteRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteBucketWebsiteRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["website"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/DeleteLiveChannelRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include "../utils/Utils.h" 19 | #include "ModelError.h" 20 | 21 | using namespace AlibabaCloud::OSS; 22 | 23 | DeleteLiveChannelRequest::DeleteLiveChannelRequest(const std::string &bucket, 24 | const std::string &channelName) 25 | :LiveChannelRequest(bucket, channelName) 26 | { 27 | 28 | } 29 | 30 | ParameterCollection DeleteLiveChannelRequest::specialParameters() const 31 | { 32 | ParameterCollection collection; 33 | collection["live"] = ""; 34 | return collection; 35 | } 36 | 37 | int DeleteLiveChannelRequest::validate() const 38 | { 39 | return LiveChannelRequest::validate(); 40 | } 41 | -------------------------------------------------------------------------------- /sdk/src/model/DeleteObjectResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include "../utils/Utils.h" 20 | using namespace AlibabaCloud::OSS; 21 | 22 | DeleteObjectResult::DeleteObjectResult(): 23 | OssObjectResult(), 24 | deleteMarker_(false) 25 | { 26 | } 27 | 28 | DeleteObjectResult::DeleteObjectResult(const HeaderCollection& headers): 29 | OssObjectResult(headers), 30 | deleteMarker_(false) 31 | { 32 | if (headers.find("x-oss-delete-marker") != headers.end()) { 33 | deleteMarker_ = true; 34 | } 35 | } 36 | 37 | bool DeleteObjectResult::DeleteMarker() const 38 | { 39 | return deleteMarker_; 40 | } 41 | -------------------------------------------------------------------------------- /sdk/src/model/DeleteObjectTaggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | DeleteObjectTaggingRequest::DeleteObjectTaggingRequest(const std::string& bucket, const std::string& key): 22 | OssObjectRequest(bucket, key) 23 | { 24 | } 25 | 26 | ParameterCollection DeleteObjectTaggingRequest::specialParameters() const 27 | { 28 | auto parameters = OssObjectRequest::specialParameters(); 29 | parameters["tagging"] = ""; 30 | return parameters; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /sdk/src/model/GetBucketAclRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketAclRequest::GetBucketAclRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketAclRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["acl"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketCorsRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketCorsRequest::GetBucketCorsRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketCorsRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["cors"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketEncryptionRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketEncryptionRequest::GetBucketEncryptionRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketEncryptionRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["encryption"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketInfoRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketInfoRequest::GetBucketInfoRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketInfoRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["bucketInfo"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketInventoryConfigurationRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketInventoryConfigurationRequest::GetBucketInventoryConfigurationRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | GetBucketInventoryConfigurationRequest::GetBucketInventoryConfigurationRequest(const std::string& bucket, const std::string& id) : 27 | GetBucketInventoryConfigurationRequest(bucket) 28 | { 29 | id_ = id; 30 | } 31 | 32 | ParameterCollection GetBucketInventoryConfigurationRequest::specialParameters() const 33 | { 34 | ParameterCollection parameters; 35 | parameters["inventory"] = ""; 36 | parameters["inventoryId"] = id_; 37 | return parameters; 38 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketLifecycleRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketLifecycleRequest::GetBucketLifecycleRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketLifecycleRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["lifecycle"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketLocationRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketLocationRequest::GetBucketLocationRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketLocationRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["location"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketLoggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketLoggingRequest::GetBucketLoggingRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketLoggingRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["logging"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketPaymentRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketRequestPaymentRequest::GetBucketRequestPaymentRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketRequestPaymentRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["requestPayment"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketPolicyRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketPolicyRequest::GetBucketPolicyRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketPolicyRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["policy"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketPolicyResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketPolicyResult::GetBucketPolicyResult() : 22 | OssResult() 23 | { 24 | } 25 | 26 | GetBucketPolicyResult::GetBucketPolicyResult(const std::string& result): 27 | GetBucketPolicyResult() 28 | { 29 | *this = result; 30 | } 31 | 32 | GetBucketPolicyResult::GetBucketPolicyResult(const std::shared_ptr& result): 33 | GetBucketPolicyResult() 34 | { 35 | std::istreambuf_iterator isb(*result.get()), end; 36 | std::string str(isb, end); 37 | *this = str; 38 | } 39 | 40 | GetBucketPolicyResult& GetBucketPolicyResult::operator =(const std::string& result) 41 | { 42 | policy_ = result; 43 | parseDone_ = true; 44 | return *this; 45 | } 46 | -------------------------------------------------------------------------------- /sdk/src/model/GetBucketQosInfoRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketQosInfoRequest::GetBucketQosInfoRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketQosInfoRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["qosInfo"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketRefererRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketRefererRequest::GetBucketRefererRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketRefererRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["referer"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketStatRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketStatRequest::GetBucketStatRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketStatRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["stat"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketStorageCapacityRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketStorageCapacityRequest::GetBucketStorageCapacityRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketStorageCapacityRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["qos"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketTaggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketTaggingRequest::GetBucketTaggingRequest(const std::string& bucket) 22 | :OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketTaggingRequest::specialParameters() const 27 | { 28 | ParameterCollection paramters; 29 | paramters["tagging"] = ""; 30 | return paramters; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /sdk/src/model/GetBucketVersioningRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketVersioningRequest::GetBucketVersioningRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketVersioningRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["versioning"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketWebsiteRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketWebsiteRequest::GetBucketWebsiteRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketWebsiteRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["website"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetBucketWormRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetBucketWormRequest::GetBucketWormRequest(const std::string &bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection GetBucketWormRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["worm"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/GetLiveChannelInfoRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include "../utils/Utils.h" 21 | #include "ModelError.h" 22 | #include "Const.h" 23 | 24 | 25 | using namespace AlibabaCloud::OSS; 26 | 27 | GetLiveChannelInfoRequest::GetLiveChannelInfoRequest(const std::string& bucket, 28 | const std::string& channelName): 29 | LiveChannelRequest(bucket, channelName) 30 | { 31 | 32 | } 33 | 34 | ParameterCollection GetLiveChannelInfoRequest::specialParameters() const 35 | { 36 | ParameterCollection collection; 37 | collection["live"] = ""; 38 | return collection; 39 | } 40 | 41 | int GetLiveChannelInfoRequest::validate() const 42 | { 43 | return LiveChannelRequest::validate(); 44 | } 45 | 46 | -------------------------------------------------------------------------------- /sdk/src/model/GetLiveChannelStatRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include "../utils/Utils.h" 21 | #include "ModelError.h" 22 | #include "Const.h" 23 | 24 | 25 | using namespace AlibabaCloud::OSS; 26 | 27 | GetLiveChannelStatRequest::GetLiveChannelStatRequest(const std::string& bucket, 28 | const std::string& channelName): 29 | LiveChannelRequest(bucket, channelName) 30 | { 31 | 32 | } 33 | 34 | ParameterCollection GetLiveChannelStatRequest::specialParameters() const 35 | { 36 | ParameterCollection collection; 37 | collection["live"] = ""; 38 | collection["comp"] = "stat"; 39 | return collection; 40 | } 41 | 42 | int GetLiveChannelStatRequest::validate() const 43 | { 44 | return LiveChannelRequest::validate(); 45 | } 46 | -------------------------------------------------------------------------------- /sdk/src/model/GetObjectAclRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | #include 20 | #include "../utils/Utils.h" 21 | using namespace AlibabaCloud::OSS; 22 | 23 | GetObjectAclRequest::GetObjectAclRequest(const std::string &bucket, const std::string &key) 24 | :OssObjectRequest(bucket,key) 25 | { 26 | } 27 | 28 | ParameterCollection GetObjectAclRequest::specialParameters() const 29 | { 30 | auto parameters = OssObjectRequest::specialParameters(); 31 | parameters["acl"]=""; 32 | return parameters; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /sdk/src/model/GetObjectMetaRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | ParameterCollection GetObjectMetaRequest::specialParameters() const 22 | { 23 | auto parameters = OssObjectRequest::specialParameters(); 24 | parameters["objectMeta"] = ""; 25 | return parameters; 26 | } 27 | -------------------------------------------------------------------------------- /sdk/src/model/GetObjectTaggingRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetObjectTaggingRequest::GetObjectTaggingRequest(const std::string &bucket, const std::string &key) 22 | :OssObjectRequest(bucket, key) 23 | { 24 | } 25 | 26 | ParameterCollection GetObjectTaggingRequest::specialParameters() const 27 | { 28 | auto parameters = OssObjectRequest::specialParameters(); 29 | parameters["tagging"] = ""; 30 | return parameters; 31 | } 32 | 33 | -------------------------------------------------------------------------------- /sdk/src/model/GetSymlinkRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetSymlinkRequest::GetSymlinkRequest(const std::string &bucket, const std::string &key): 22 | OssObjectRequest(bucket, key) 23 | { 24 | } 25 | 26 | ParameterCollection GetSymlinkRequest::specialParameters() const 27 | { 28 | auto parameters = OssObjectRequest::specialParameters(); 29 | parameters["symlink"] = ""; 30 | return parameters; 31 | } 32 | 33 | 34 | -------------------------------------------------------------------------------- /sdk/src/model/GetUserQosInfoRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | GetUserQosInfoRequest::GetUserQosInfoRequest() : 22 | OssRequest() 23 | { 24 | } 25 | 26 | ParameterCollection GetUserQosInfoRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["qosInfo"] = ""; 30 | return parameters; 31 | } -------------------------------------------------------------------------------- /sdk/src/model/InitiateBucketWormResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include 19 | using namespace AlibabaCloud::OSS; 20 | 21 | InitiateBucketWormResult::InitiateBucketWormResult() : 22 | OssResult() 23 | { 24 | } 25 | 26 | InitiateBucketWormResult::InitiateBucketWormResult(const HeaderCollection& header) : 27 | OssResult(header) 28 | { 29 | if (header.find("x-oss-worm-id") != header.end()) { 30 | wormId_ = header.at("x-oss-worm-id"); 31 | } 32 | parseDone_ = true; 33 | } 34 | 35 | -------------------------------------------------------------------------------- /sdk/src/model/ListBucketInventoryConfigurationsRequest.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | ListBucketInventoryConfigurationsRequest::ListBucketInventoryConfigurationsRequest(const std::string& bucket) : 22 | OssBucketRequest(bucket) 23 | { 24 | } 25 | 26 | ParameterCollection ListBucketInventoryConfigurationsRequest::specialParameters() const 27 | { 28 | ParameterCollection parameters; 29 | parameters["inventory"] = ""; 30 | if (!continuationToken_.empty()) { 31 | parameters["continuation-token"] = continuationToken_; 32 | } 33 | return parameters; 34 | } -------------------------------------------------------------------------------- /sdk/src/model/RestoreObjectResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | using namespace AlibabaCloud::OSS; 19 | 20 | RestoreObjectResult::RestoreObjectResult(): 21 | OssObjectResult() 22 | { 23 | } 24 | 25 | RestoreObjectResult::RestoreObjectResult(const HeaderCollection& header): 26 | OssObjectResult(header) 27 | { 28 | } 29 | 30 | -------------------------------------------------------------------------------- /sdk/src/model/SetObjectAclResult.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | SetObjectAclResult::SetObjectAclResult(): 22 | OssObjectResult() 23 | { 24 | } 25 | 26 | SetObjectAclResult::SetObjectAclResult(const HeaderCollection& header): 27 | OssObjectResult(header) 28 | { 29 | } 30 | 31 | -------------------------------------------------------------------------------- /sdk/src/model/Tagging.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | #include "../utils/Utils.h" 19 | #include 20 | 21 | using namespace AlibabaCloud::OSS; 22 | 23 | std::string Tagging::toQueryParameters() 24 | { 25 | std::string sep; 26 | std::stringstream ss; 27 | for (const auto& tag : tagSet_) 28 | { 29 | if (tag.Key().empty()) 30 | continue; 31 | 32 | if (tag.Value().empty()) 33 | ss << sep << UrlEncode(tag.Key()); 34 | else 35 | ss << sep << UrlEncode(tag.Key()) << "=" << UrlEncode(tag.Value()); 36 | 37 | sep = "&"; 38 | } 39 | return ss.str(); 40 | } 41 | -------------------------------------------------------------------------------- /sdk/src/signer/HmacSha1Signer.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include "Signer.h" 20 | 21 | 22 | namespace AlibabaCloud 23 | { 24 | namespace OSS 25 | { 26 | 27 | class HmacSha1Signer 28 | { 29 | public: 30 | HmacSha1Signer(); 31 | ~HmacSha1Signer(); 32 | 33 | static std::string generate(const std::string &src, const std::string &secret); 34 | }; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /sdk/src/signer/Signer.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include "Signer.h" 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | Signer::Signer(Type type, const std::string & name, const std::string & version) : 22 | type_(type), 23 | name_(name), 24 | version_(version) 25 | { 26 | } 27 | 28 | Signer::~Signer() 29 | { 30 | } 31 | 32 | std::string Signer::name() const 33 | { 34 | return name_; 35 | } 36 | 37 | Signer::Type Signer::type() const 38 | { 39 | return type_; 40 | } 41 | 42 | std::string Signer::version() const 43 | { 44 | return version_; 45 | } 46 | 47 | std::shared_ptr Signer::createSigner(SignatureVersionType version) 48 | { 49 | if (version == SignatureVersionType::V4) { 50 | return std::make_shared(); 51 | } 52 | return std::make_shared(); 53 | } 54 | -------------------------------------------------------------------------------- /sdk/src/utils/Crc32.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | namespace AlibabaCloud 21 | { 22 | namespace OSS 23 | { 24 | class CRC32 25 | { 26 | public: 27 | static uint32_t CalcCRC(uint32_t crc, const void *buf, size_t bufLen); 28 | }; 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /sdk/src/utils/Crc64.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | #include 19 | #include 20 | namespace AlibabaCloud 21 | { 22 | namespace OSS 23 | { 24 | class CRC64 25 | { 26 | public: 27 | static uint64_t CalcCRC(uint64_t crc, void *buf, size_t len); 28 | static uint64_t CombineCRC(uint64_t crc1, uint64_t crc2, uintmax_t len2); 29 | static uint64_t CalcCRC(uint64_t crc, void *buf, size_t len, bool little); 30 | }; 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /sdk/src/utils/Executor.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | Executor::Executor() 22 | { 23 | } 24 | 25 | Executor::~Executor() 26 | { 27 | } 28 | -------------------------------------------------------------------------------- /sdk/src/utils/Runnable.cc: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | 19 | using namespace AlibabaCloud::OSS; 20 | 21 | Runnable::Runnable(const std::function f) : 22 | f_(f) 23 | { 24 | } 25 | 26 | void Runnable::run() const 27 | { 28 | f_(); 29 | } -------------------------------------------------------------------------------- /sdk/src/utils/ThreadExecutor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #pragma once 18 | 19 | #include 20 | 21 | namespace AlibabaCloud 22 | { 23 | namespace OSS 24 | { 25 | class ThreadExecutor: public Executor 26 | { 27 | public: 28 | ThreadExecutor(); 29 | virtual ~ThreadExecutor(); 30 | void execute(Runnable* task); 31 | private: 32 | enum class State 33 | { 34 | Free, Locked, Shutdown 35 | }; 36 | void detach(std::thread::id id); 37 | std::atomic state_; 38 | std::unordered_map threads_; 39 | }; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /test/data/BingWallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/data/BingWallpaper.jpg -------------------------------------------------------------------------------- /test/data/cpp-enc-example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/data/cpp-enc-example.jpg -------------------------------------------------------------------------------- /test/data/example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/data/example.jpg -------------------------------------------------------------------------------- /test/data/go-enc-example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/data/go-enc-example.jpg -------------------------------------------------------------------------------- /test/data/sample_data.csv.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/data/sample_data.csv.gz -------------------------------------------------------------------------------- /test/src/Config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #include 18 | class Config 19 | { 20 | public: 21 | static void ParseArg(int argc, char **argv); 22 | static bool InitTestEnv(); 23 | static std::string GetDataPath(); 24 | public: 25 | static std::string AccessKeyId; 26 | static std::string AccessKeySecret; 27 | static std::string Endpoint; 28 | static std::string Region; 29 | static std::string SecondEndpoint; 30 | static std::string CallbackServer; 31 | static std::string CfgFilePath; 32 | static std::string PayerAccessKeyId; 33 | static std::string PayerAccessKeySecret; 34 | static std::string PayerUID; 35 | static std::string RamRoleArn; 36 | static std::string RamUID; 37 | }; 38 | 39 | -------------------------------------------------------------------------------- /test/src/Encryption/CryptoObjectTest.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/src/Encryption/CryptoObjectTest.cc -------------------------------------------------------------------------------- /test/src/MultipartUpload/MultipartUploadTest.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/src/MultipartUpload/MultipartUploadTest.cc -------------------------------------------------------------------------------- /test/src/Object/ObjectBasicOperationTest.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/src/Object/ObjectBasicOperationTest.cc -------------------------------------------------------------------------------- /test/src/Object/ObjectCopyTest.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/test/src/Object/ObjectCopyTest.cc -------------------------------------------------------------------------------- /third_party/include/curl/stdcheaders.h: -------------------------------------------------------------------------------- 1 | #ifndef __STDC_HEADERS_H 2 | #define __STDC_HEADERS_H 3 | /*************************************************************************** 4 | * _ _ ____ _ 5 | * Project ___| | | | _ \| | 6 | * / __| | | | |_) | | 7 | * | (__| |_| | _ <| |___ 8 | * \___|\___/|_| \_\_____| 9 | * 10 | * Copyright (C) 1998 - 2010, Daniel Stenberg, , et al. 11 | * 12 | * This software is licensed as described in the file COPYING, which 13 | * you should have received as part of this distribution. The terms 14 | * are also available at http://curl.haxx.se/docs/copyright.html. 15 | * 16 | * You may opt to use, copy, modify, merge, publish, distribute and/or sell 17 | * copies of the Software, and permit persons to whom the Software is 18 | * furnished to do so, under the terms of the COPYING file. 19 | * 20 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 21 | * KIND, either express or implied. 22 | * 23 | ***************************************************************************/ 24 | 25 | #include 26 | 27 | size_t fread (void *, size_t, size_t, FILE *); 28 | size_t fwrite (const void *, size_t, size_t, FILE *); 29 | 30 | int strcasecmp(const char *, const char *); 31 | int strncasecmp(const char *, const char *, size_t); 32 | 33 | #endif /* __STDC_HEADERS_H */ 34 | -------------------------------------------------------------------------------- /third_party/include/openssl/ebcdic.h: -------------------------------------------------------------------------------- 1 | /* crypto/ebcdic.h */ 2 | 3 | #ifndef HEADER_EBCDIC_H 4 | # define HEADER_EBCDIC_H 5 | 6 | # include 7 | 8 | #ifdef __cplusplus 9 | extern "C" { 10 | #endif 11 | 12 | /* Avoid name clashes with other applications */ 13 | # define os_toascii _openssl_os_toascii 14 | # define os_toebcdic _openssl_os_toebcdic 15 | # define ebcdic2ascii _openssl_ebcdic2ascii 16 | # define ascii2ebcdic _openssl_ascii2ebcdic 17 | 18 | extern const unsigned char os_toascii[256]; 19 | extern const unsigned char os_toebcdic[256]; 20 | void *ebcdic2ascii(void *dest, const void *srce, size_t count); 21 | void *ascii2ebcdic(void *dest, const void *srce, size_t count); 22 | 23 | #ifdef __cplusplus 24 | } 25 | #endif 26 | #endif 27 | -------------------------------------------------------------------------------- /third_party/include/openssl/whrlpool.h: -------------------------------------------------------------------------------- 1 | #ifndef HEADER_WHRLPOOL_H 2 | # define HEADER_WHRLPOOL_H 3 | 4 | # include 5 | # include 6 | 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | 11 | # define WHIRLPOOL_DIGEST_LENGTH (512/8) 12 | # define WHIRLPOOL_BBLOCK 512 13 | # define WHIRLPOOL_COUNTER (256/8) 14 | 15 | typedef struct { 16 | union { 17 | unsigned char c[WHIRLPOOL_DIGEST_LENGTH]; 18 | /* double q is here to ensure 64-bit alignment */ 19 | double q[WHIRLPOOL_DIGEST_LENGTH / sizeof(double)]; 20 | } H; 21 | unsigned char data[WHIRLPOOL_BBLOCK / 8]; 22 | unsigned int bitoff; 23 | size_t bitlen[WHIRLPOOL_COUNTER / sizeof(size_t)]; 24 | } WHIRLPOOL_CTX; 25 | 26 | # ifndef OPENSSL_NO_WHIRLPOOL 27 | # ifdef OPENSSL_FIPS 28 | int private_WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 29 | # endif 30 | int WHIRLPOOL_Init(WHIRLPOOL_CTX *c); 31 | int WHIRLPOOL_Update(WHIRLPOOL_CTX *c, const void *inp, size_t bytes); 32 | void WHIRLPOOL_BitUpdate(WHIRLPOOL_CTX *c, const void *inp, size_t bits); 33 | int WHIRLPOOL_Final(unsigned char *md, WHIRLPOOL_CTX *c); 34 | unsigned char *WHIRLPOOL(const void *inp, size_t bytes, unsigned char *md); 35 | # endif 36 | 37 | #ifdef __cplusplus 38 | } 39 | #endif 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /third_party/lib/Win32/libcurl.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/libcurl.dll -------------------------------------------------------------------------------- /third_party/lib/Win32/libcurl.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/libcurl.lib -------------------------------------------------------------------------------- /third_party/lib/Win32/libeay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/libeay32.dll -------------------------------------------------------------------------------- /third_party/lib/Win32/libeay32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/libeay32.lib -------------------------------------------------------------------------------- /third_party/lib/Win32/ssleay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/ssleay32.dll -------------------------------------------------------------------------------- /third_party/lib/Win32/ssleay32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/ssleay32.lib -------------------------------------------------------------------------------- /third_party/lib/Win32/zlibwapi.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/Win32/zlibwapi.dll -------------------------------------------------------------------------------- /third_party/lib/x64/libcurl.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/libcurl.dll -------------------------------------------------------------------------------- /third_party/lib/x64/libcurl.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/libcurl.lib -------------------------------------------------------------------------------- /third_party/lib/x64/libeay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/libeay32.dll -------------------------------------------------------------------------------- /third_party/lib/x64/libeay32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/libeay32.lib -------------------------------------------------------------------------------- /third_party/lib/x64/ssleay32.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/ssleay32.dll -------------------------------------------------------------------------------- /third_party/lib/x64/ssleay32.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/ssleay32.lib -------------------------------------------------------------------------------- /third_party/lib/x64/zlibwapi.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aliyun/aliyun-oss-cpp-sdk/0632d336ac861816669a1b0eecac30fb8ff71abb/third_party/lib/x64/zlibwapi.dll --------------------------------------------------------------------------------