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 <string> 19 #include <alibabacloud/oss/Export.h> 20 #include <alibabacloud/oss/Types.h> 21 #include <alibabacloud/oss/model/Owner.h> 22 23 namespace AlibabaCloud 24 { 25 namespace OSS 26 { 27 class ListBucketsResult; 28 class ALIBABACLOUD_OSS_EXPORT Bucket 29 { 30 public: 31 Bucket() = default; 32 ~Bucket(); Location()33 const std::string& Location() const { return location_; } Name()34 const std::string& Name() const { return name_; } CreationDate()35 const std::string& CreationDate() const { return creationDate_; } IntranetEndpoint()36 const std::string& IntranetEndpoint() const { return intranetEndpoint_; } ExtranetEndpoint()37 const std::string& ExtranetEndpoint() const { return extranetEndpoint_; } StorageClass()38 AlibabaCloud::OSS::StorageClass StorageClass() const { return storageClass_; } Owner()39 const AlibabaCloud::OSS::Owner& Owner() const { return owner_; } 40 private: 41 friend class ListBucketsResult; 42 std::string location_; 43 std::string name_; 44 std::string creationDate_; 45 std::string intranetEndpoint_; 46 std::string extranetEndpoint_; 47 AlibabaCloud::OSS::StorageClass storageClass_; 48 AlibabaCloud::OSS::Owner owner_; 49 }; 50 } 51 } 52