AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateBucketConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/s3/S3_EXPORTS.h>
9#include <aws/s3/model/BucketInfo.h>
10#include <aws/s3/model/BucketLocationConstraint.h>
11#include <aws/s3/model/LocationInfo.h>
12#include <aws/s3/model/Tag.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Xml {
19class XmlNode;
20} // namespace Xml
21} // namespace Utils
22namespace S3 {
23namespace Model {
24
31 public:
32 AWS_S3_API CreateBucketConfiguration() = default;
35
36 AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
37
39
52 inline BucketLocationConstraint GetLocationConstraint() const { return m_locationConstraint; }
53 inline bool LocationConstraintHasBeenSet() const { return m_locationConstraintHasBeenSet; }
55 m_locationConstraintHasBeenSet = true;
56 m_locationConstraint = value;
57 }
60 return *this;
61 }
63
65
75 inline const LocationInfo& GetLocation() const { return m_location; }
76 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
77 template <typename LocationT = LocationInfo>
78 void SetLocation(LocationT&& value) {
79 m_locationHasBeenSet = true;
80 m_location = std::forward<LocationT>(value);
81 }
82 template <typename LocationT = LocationInfo>
84 SetLocation(std::forward<LocationT>(value));
85 return *this;
86 }
88
90
94 inline const BucketInfo& GetBucket() const { return m_bucket; }
95 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
96 template <typename BucketT = BucketInfo>
97 void SetBucket(BucketT&& value) {
98 m_bucketHasBeenSet = true;
99 m_bucket = std::forward<BucketT>(value);
100 }
101 template <typename BucketT = BucketInfo>
103 SetBucket(std::forward<BucketT>(value));
104 return *this;
105 }
107
109
122 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
123 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
124 template <typename TagsT = Aws::Vector<Tag>>
125 void SetTags(TagsT&& value) {
126 m_tagsHasBeenSet = true;
127 m_tags = std::forward<TagsT>(value);
128 }
129 template <typename TagsT = Aws::Vector<Tag>>
131 SetTags(std::forward<TagsT>(value));
132 return *this;
133 }
134 template <typename TagsT = Tag>
136 m_tagsHasBeenSet = true;
137 m_tags.emplace_back(std::forward<TagsT>(value));
138 return *this;
139 }
141 private:
143
144 LocationInfo m_location;
145
146 BucketInfo m_bucket;
147
148 Aws::Vector<Tag> m_tags;
149 bool m_locationConstraintHasBeenSet = false;
150 bool m_locationHasBeenSet = false;
151 bool m_bucketHasBeenSet = false;
152 bool m_tagsHasBeenSet = false;
153};
154
155} // namespace Model
156} // namespace S3
157} // namespace Aws
CreateBucketConfiguration & WithBucket(BucketT &&value)
AWS_S3_API void AddToNode(Aws::Utils::Xml::XmlNode &parentNode) const
CreateBucketConfiguration & WithTags(TagsT &&value)
AWS_S3_API CreateBucketConfiguration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
CreateBucketConfiguration & WithLocationConstraint(BucketLocationConstraint value)
CreateBucketConfiguration & WithLocation(LocationT &&value)
CreateBucketConfiguration & AddTags(TagsT &&value)
void SetLocationConstraint(BucketLocationConstraint value)
AWS_S3_API CreateBucketConfiguration()=default
AWS_S3_API CreateBucketConfiguration(const Aws::Utils::Xml::XmlNode &xmlNode)
BucketLocationConstraint GetLocationConstraint() const
std::vector< T, Aws::Allocator< T > > Vector