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 <memory> 20 #include <iostream> 21 #include <alibabacloud/oss/Global.h> 22 #include <alibabacloud/oss/Types.h> 23 #include <alibabacloud/oss/OssError.h> 24 #include <alibabacloud/oss/ServiceResult.h> 25 #include <alibabacloud/oss/utils/Outcome.h> 26 #include <alibabacloud/oss/model/VoidResult.h> 27 28 #if !defined(OSS_DISABLE_BUCKET) 29 #include <alibabacloud/oss/model/ListBucketsRequest.h> 30 #include <alibabacloud/oss/model/ListBucketsResult.h> 31 #include <alibabacloud/oss/model/CreateBucketRequest.h> 32 #include <alibabacloud/oss/model/SetBucketAclRequest.h> 33 #include <alibabacloud/oss/model/SetBucketLoggingRequest.h> 34 #include <alibabacloud/oss/model/SetBucketWebsiteRequest.h> 35 #include <alibabacloud/oss/model/SetBucketRefererRequest.h> 36 #include <alibabacloud/oss/model/SetBucketLifecycleRequest.h> 37 #include <alibabacloud/oss/model/SetBucketCorsRequest.h> 38 #include <alibabacloud/oss/model/SetBucketStorageCapacityRequest.h> 39 #include <alibabacloud/oss/model/DeleteBucketRequest.h> 40 #include <alibabacloud/oss/model/DeleteBucketLoggingRequest.h> 41 #include <alibabacloud/oss/model/DeleteBucketWebsiteRequest.h> 42 #include <alibabacloud/oss/model/DeleteBucketLifecycleRequest.h> 43 #include <alibabacloud/oss/model/DeleteBucketCorsRequest.h> 44 #include <alibabacloud/oss/model/GetBucketAclRequest.h> 45 #include <alibabacloud/oss/model/GetBucketAclResult.h> 46 #include <alibabacloud/oss/model/GetBucketLocationRequest.h> 47 #include <alibabacloud/oss/model/GetBucketLocationResult.h> 48 #include <alibabacloud/oss/model/GetBucketInfoRequest.h> 49 #include <alibabacloud/oss/model/GetBucketInfoResult.h> 50 #include <alibabacloud/oss/model/GetBucketLoggingRequest.h> 51 #include <alibabacloud/oss/model/GetBucketLoggingResult.h> 52 #include <alibabacloud/oss/model/GetBucketWebsiteRequest.h> 53 #include <alibabacloud/oss/model/GetBucketWebsiteResult.h> 54 #include <alibabacloud/oss/model/GetBucketRefererRequest.h> 55 #include <alibabacloud/oss/model/GetBucketRefererResult.h> 56 #include <alibabacloud/oss/model/GetBucketLifecycleRequest.h> 57 #include <alibabacloud/oss/model/GetBucketLifecycleResult.h> 58 #include <alibabacloud/oss/model/GetBucketStatRequest.h> 59 #include <alibabacloud/oss/model/GetBucketStatResult.h> 60 #include <alibabacloud/oss/model/GetBucketCorsRequest.h> 61 #include <alibabacloud/oss/model/GetBucketCorsResult.h> 62 #include <alibabacloud/oss/model/GetBucketStorageCapacityRequest.h> 63 #include <alibabacloud/oss/model/GetBucketStorageCapacityResult.h> 64 #include <alibabacloud/oss/model/SetBucketPolicyRequest.h> 65 #include <alibabacloud/oss/model/GetBucketPolicyRequest.h> 66 #include <alibabacloud/oss/model/GetBucketPolicyResult.h> 67 #include <alibabacloud/oss/model/DeleteBucketPolicyRequest.h> 68 #include <alibabacloud/oss/model/SetBucketPaymentRequest.h> 69 #include <alibabacloud/oss/model/GetBucketPaymentRequest.h> 70 #include <alibabacloud/oss/model/GetBucketPaymentResult.h> 71 #include <alibabacloud/oss/model/SetBucketEncryptionRequest.h> 72 #include <alibabacloud/oss/model/DeleteBucketEncryptionRequest.h> 73 #include <alibabacloud/oss/model/GetBucketEncryptionRequest.h> 74 #include <alibabacloud/oss/model/GetBucketEncryptionResult.h> 75 #include <alibabacloud/oss/model/SetBucketTaggingRequest.h> 76 #include <alibabacloud/oss/model/GetBucketTaggingRequest.h> 77 #include <alibabacloud/oss/model/GetBucketTaggingResult.h> 78 #include <alibabacloud/oss/model/DeleteBucketTaggingRequest.h> 79 #include <alibabacloud/oss/model/SetBucketQosInfoRequest.h> 80 #include <alibabacloud/oss/model/DeleteBucketQosInfoRequest.h> 81 #include <alibabacloud/oss/model/GetBucketQosInfoRequest.h> 82 #include <alibabacloud/oss/model/GetBucketQosInfoResult.h> 83 #include <alibabacloud/oss/model/GetUserQosInfoRequest.h> 84 #include <alibabacloud/oss/model/GetUserQosInfoResult.h> 85 #include <alibabacloud/oss/model/SetBucketVersioningRequest.h> 86 #include <alibabacloud/oss/model/GetBucketVersioningRequest.h> 87 #include <alibabacloud/oss/model/GetBucketVersioningResult.h> 88 #include <alibabacloud/oss/model/SetBucketInventoryConfigurationRequest.h> 89 #include <alibabacloud/oss/model/DeleteBucketInventoryConfigurationRequest.h> 90 #include <alibabacloud/oss/model/GetBucketInventoryConfigurationResult.h> 91 #include <alibabacloud/oss/model/GetBucketInventoryConfigurationRequest.h> 92 #include <alibabacloud/oss/model/ListBucketInventoryConfigurationsRequest.h> 93 #include <alibabacloud/oss/model/ListBucketInventoryConfigurationsResult.h> 94 #endif 95 96 #include <alibabacloud/oss/model/ListObjectsRequest.h> 97 #include <alibabacloud/oss/model/ListObjectsResult.h> 98 #include <alibabacloud/oss/model/ListObjectVersionsRequest.h> 99 #include <alibabacloud/oss/model/ListObjectVersionsResult.h> 100 #include <alibabacloud/oss/model/GetObjectRequest.h> 101 #include <alibabacloud/oss/model/GetObjectResult.h> 102 #include <alibabacloud/oss/model/PutObjectRequest.h> 103 #include <alibabacloud/oss/model/PutObjectResult.h> 104 #include <alibabacloud/oss/model/DeleteObjectRequest.h> 105 #include <alibabacloud/oss/model/DeleteObjectResult.h> 106 #include <alibabacloud/oss/model/DeleteObjectsRequest.h> 107 #include <alibabacloud/oss/model/DeleteObjectsResult.h> 108 #include <alibabacloud/oss/model/DeleteObjectVersionsRequest.h> 109 #include <alibabacloud/oss/model/DeleteObjectVersionsResult.h> 110 #include <alibabacloud/oss/model/HeadObjectRequest.h> 111 #include <alibabacloud/oss/model/GetObjectMetaRequest.h> 112 #include <alibabacloud/oss/model/GeneratePresignedUrlRequest.h> 113 #include <alibabacloud/oss/model/GetObjectByUrlRequest.h> 114 #include <alibabacloud/oss/model/PutObjectByUrlRequest.h> 115 #include <alibabacloud/oss/model/GetObjectAclRequest.h> 116 #include <alibabacloud/oss/model/GetObjectAclResult.h> 117 #include <alibabacloud/oss/model/AppendObjectRequest.h> 118 #include <alibabacloud/oss/model/AppendObjectResult.h> 119 #include <alibabacloud/oss/model/CopyObjectRequest.h> 120 #include <alibabacloud/oss/model/CopyObjectResult.h> 121 #include <alibabacloud/oss/model/GetSymlinkRequest.h> 122 #include <alibabacloud/oss/model/GetSymlinkResult.h> 123 #include <alibabacloud/oss/model/RestoreObjectRequest.h> 124 #include <alibabacloud/oss/model/RestoreObjectResult.h> 125 #include <alibabacloud/oss/model/CreateSymlinkRequest.h> 126 #include <alibabacloud/oss/model/CreateSymlinkResult.h> 127 #include <alibabacloud/oss/model/SetObjectAclRequest.h> 128 #include <alibabacloud/oss/model/SetObjectAclResult.h> 129 #include <alibabacloud/oss/model/ProcessObjectRequest.h> 130 #include <alibabacloud/oss/model/ObjectCallbackBuilder.h> 131 #include <alibabacloud/oss/model/SelectObjectRequest.h> 132 #include <alibabacloud/oss/model/CreateSelectObjectMetaRequest.h> 133 #include <alibabacloud/oss/model/CreateSelectObjectMetaResult.h> 134 #include <alibabacloud/oss/model/SetObjectTaggingRequest.h> 135 #include <alibabacloud/oss/model/SetObjectTaggingResult.h> 136 #include <alibabacloud/oss/model/GetObjectTaggingRequest.h> 137 #include <alibabacloud/oss/model/GetObjectTaggingResult.h> 138 #include <alibabacloud/oss/model/DeleteObjectTaggingRequest.h> 139 #include <alibabacloud/oss/model/DeleteObjectTaggingResult.h> 140 141 #include <alibabacloud/oss/model/InitiateMultipartUploadRequest.h> 142 #include <alibabacloud/oss/model/InitiateMultipartUploadResult.h> 143 #include <alibabacloud/oss/model/UploadPartRequest.h> 144 #include <alibabacloud/oss/model/UploadPartCopyRequest.h> 145 #include <alibabacloud/oss/model/UploadPartCopyResult.h> 146 #include <alibabacloud/oss/model/CompleteMultipartUploadRequest.h> 147 #include <alibabacloud/oss/model/CompleteMultipartUploadResult.h> 148 #include <alibabacloud/oss/model/AbortMultipartUploadRequest.h> 149 #include <alibabacloud/oss/model/ListMultipartUploadsRequest.h> 150 #include <alibabacloud/oss/model/ListMultipartUploadsResult.h> 151 #include <alibabacloud/oss/model/ListPartsRequest.h> 152 #include <alibabacloud/oss/model/ListPartsResult.h> 153 154 #if !defined(OSS_DISABLE_RESUAMABLE) 155 #include <alibabacloud/oss/model/UploadObjectRequest.h> 156 #include <alibabacloud/oss/model/MultiCopyObjectRequest.h> 157 #include <alibabacloud/oss/model/DownloadObjectRequest.h> 158 #endif 159 160 #if !defined(OSS_DISABLE_LIVECHANNEL) 161 #include <alibabacloud/oss/model/PutLiveChannelStatusRequest.h> 162 #include <alibabacloud/oss/model/PutLiveChannelRequest.h> 163 #include <alibabacloud/oss/model/PutLiveChannelResult.h> 164 #include <alibabacloud/oss/model/PostVodPlaylistRequest.h> 165 #include <alibabacloud/oss/model/GetVodPlaylistRequest.h> 166 #include <alibabacloud/oss/model/GetVodPlaylistResult.h> 167 #include <alibabacloud/oss/model/GetLiveChannelStatRequest.h> 168 #include <alibabacloud/oss/model/GetLiveChannelStatResult.h> 169 #include <alibabacloud/oss/model/GetLiveChannelInfoRequest.h> 170 #include <alibabacloud/oss/model/GetLiveChannelInfoResult.h> 171 #include <alibabacloud/oss/model/GetLiveChannelHistoryRequest.h> 172 #include <alibabacloud/oss/model/GetLiveChannelHistoryResult.h> 173 #include <alibabacloud/oss/model/ListLiveChannelRequest.h> 174 #include <alibabacloud/oss/model/ListLiveChannelResult.h> 175 #include <alibabacloud/oss/model/DeleteLiveChannelRequest.h> 176 #include <alibabacloud/oss/model/GenerateRTMPSignedUrlRequest.h> 177 #endif 178 179 namespace AlibabaCloud 180 { 181 namespace OSS 182 { 183 using OssOutcome = Outcome<OssError, ServiceResult>; 184 using VoidOutcome = Outcome<OssError, VoidResult>; 185 using StringOutcome = Outcome<OssError, std::string>; 186 187 #if !defined(OSS_DISABLE_BUCKET) 188 using ListBucketsOutcome = Outcome<OssError, ListBucketsResult>; 189 using CreateBucketOutcome = Outcome<OssError, Bucket>; 190 using ListBucketInventoryConfigurationsOutcome = Outcome<OssError, ListBucketInventoryConfigurationsResult>; 191 192 using GetBucketAclOutcome = Outcome<OssError, GetBucketAclResult>; 193 using GetBucketLocationOutcome = Outcome<OssError, GetBucketLocationResult>; 194 using GetBucketInfoOutcome = Outcome<OssError, GetBucketInfoResult>; 195 using GetBucketLoggingOutcome = Outcome<OssError, GetBucketLoggingResult>; 196 using GetBucketWebsiteOutcome = Outcome<OssError, GetBucketWebsiteResult>; 197 using GetBucketRefererOutcome = Outcome<OssError, GetBucketRefererResult>; 198 using GetBucketLifecycleOutcome = Outcome<OssError, GetBucketLifecycleResult>; 199 using GetBucketStatOutcome = Outcome<OssError, GetBucketStatResult>; 200 using GetBucketCorsOutcome = Outcome<OssError, GetBucketCorsResult>; 201 using GetBucketStorageCapacityOutcome = Outcome<OssError, GetBucketStorageCapacityResult>; 202 using GetBucketPolicyOutcome = Outcome<OssError, GetBucketPolicyResult>; 203 using GetBucketPaymentOutcome = Outcome<OssError, GetBucketPaymentResult>; 204 using GetBucketEncryptionOutcome = Outcome<OssError, GetBucketEncryptionResult>; 205 using GetBucketTaggingOutcome = Outcome<OssError, GetBucketTaggingResult>; 206 using GetBucketQosInfoOutcome = Outcome<OssError, GetBucketQosInfoResult>; 207 using GetUserQosInfoOutcome = Outcome<OssError, GetUserQosInfoResult>; 208 using GetBucketVersioningOutcome = Outcome<OssError, GetBucketVersioningResult>; 209 using GetBucketInventoryConfigurationOutcome = Outcome<OssError, GetBucketInventoryConfigurationResult>; 210 #endif 211 212 using ListObjectOutcome = Outcome<OssError, ListObjectsResult>; 213 using ListObjectVersionsOutcome = Outcome<OssError, ListObjectVersionsResult>; 214 215 using GetObjectOutcome = Outcome<OssError, GetObjectResult>; 216 using PutObjectOutcome = Outcome<OssError, PutObjectResult>; 217 using DeleteObjectOutcome = Outcome<OssError, DeleteObjectResult>; 218 using DeleteObjecstOutcome = Outcome<OssError, DeleteObjectsResult>; 219 using DeleteObjecVersionstOutcome = Outcome<OssError, DeleteObjectVersionsResult>; 220 using ObjectMetaDataOutcome = Outcome<OssError, ObjectMetaData>; 221 222 using GetObjectAclOutcome = Outcome<OssError, GetObjectAclResult>; 223 using SetObjectAclOutcome = Outcome<OssError, SetObjectAclResult>; 224 using AppendObjectOutcome = Outcome<OssError, AppendObjectResult>; 225 using CopyObjectOutcome = Outcome<OssError, CopyObjectResult>; 226 using RestoreObjectOutcome = Outcome<OssError, RestoreObjectResult>; 227 using GetSymlinkOutcome = Outcome<OssError, GetSymlinkResult>; 228 using CreateSymlinkOutcome = Outcome<OssError, CreateSymlinkResult>; 229 using CreateSelectObjectMetaOutcome = Outcome<OssError, CreateSelectObjectMetaResult>; 230 using SetObjectTaggingOutcome = Outcome<OssError, SetObjectTaggingResult>; 231 using GetObjectTaggingOutcome = Outcome<OssError, GetObjectTaggingResult>; 232 using DeleteObjectTaggingOutcome = Outcome<OssError, DeleteObjectTaggingResult>; 233 234 /*multipart*/ 235 using InitiateMultipartUploadOutcome = Outcome<OssError, InitiateMultipartUploadResult>; 236 using UploadPartCopyOutcome = Outcome<OssError, UploadPartCopyResult>; 237 using CompleteMultipartUploadOutcome = Outcome<OssError, CompleteMultipartUploadResult>; 238 using ListMultipartUploadsOutcome = Outcome<OssError, ListMultipartUploadsResult>; 239 using ListPartsOutcome = Outcome<OssError, ListPartsResult>; 240 241 #if !defined(OSS_DISABLE_LIVECHANNEL) 242 /*livechannel*/ 243 using PutLiveChannelOutcome = Outcome<OssError, PutLiveChannelResult>; 244 using GetLiveChannelStatOutcome = Outcome<OssError, GetLiveChannelStatResult>; 245 using GetLiveChannelInfoOutcome = Outcome<OssError, GetLiveChannelInfoResult>; 246 using GetLiveChannelHistoryOutcome = Outcome<OssError, GetLiveChannelHistoryResult>; 247 using ListLiveChannelOutcome = Outcome<OssError, ListLiveChannelResult>; 248 using GetVodPlaylistOutcome = Outcome<OssError, GetVodPlaylistResult>; 249 #endif 250 } 251 } 252