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 <memory>
19 #include <iostream>
20 #include <alibabacloud/oss/Types.h>
21 #include <alibabacloud/oss/OssResult.h>
22 #include <alibabacloud/oss/model/Owner.h>
23 namespace AlibabaCloud
24 {
25 namespace OSS
26 {
27     class ALIBABACLOUD_OSS_EXPORT GetBucketInfoResult : public OssResult
28     {
29     public:
30         GetBucketInfoResult();
31         GetBucketInfoResult(const std::string& data);
32         GetBucketInfoResult(const std::shared_ptr<std::iostream>& data);
33         GetBucketInfoResult& operator=(const std::string& data);
Location()34         const std::string& Location() const { return location_; }
Name()35         const std::string& Name() const { return name_; }
CreationDate()36         const std::string& CreationDate() const { return creationDate_; }
IntranetEndpoint()37         const std::string& IntranetEndpoint() const { return intranetEndpoint_; }
ExtranetEndpoint()38         const std::string& ExtranetEndpoint() const { return extranetEndpoint_; }
StorageClass()39         AlibabaCloud::OSS::StorageClass StorageClass() const { return storageClass_; }
Acl()40         CannedAccessControlList Acl() const { return acl_; }
Owner()41         const AlibabaCloud::OSS::Owner& Owner() { return owner_; }
DataRedundancyType()42         AlibabaCloud::OSS::DataRedundancyType DataRedundancyType() const { return dataRedundancyType_; }
Comment()43         const std::string& Comment() const { return comment_; }
SSEAlgorithm()44         AlibabaCloud::OSS::SSEAlgorithm SSEAlgorithm() { return sseAlgorithm_; }
KMSMasterKeyID()45         const std::string& KMSMasterKeyID() { return kmsMasterKeyID_; }
VersioningStatus()46         AlibabaCloud::OSS::VersioningStatus VersioningStatus() { return versioningStatus_; }
47     private:
48         std::string location_;
49         std::string name_;
50         std::string creationDate_;
51         std::string intranetEndpoint_;
52         std::string extranetEndpoint_;
53         AlibabaCloud::OSS::StorageClass storageClass_;
54         CannedAccessControlList acl_;
55         AlibabaCloud::OSS::Owner owner_;
56         AlibabaCloud::OSS::DataRedundancyType dataRedundancyType_;
57         std::string comment_;
58         AlibabaCloud::OSS::SSEAlgorithm sseAlgorithm_;
59         std::string kmsMasterKeyID_;
60         AlibabaCloud::OSS::VersioningStatus versioningStatus_;
61     };
62 }
63 }
64