AWS SDK for C++

AWS SDK for C++ Version 1.11.786

Loading...
Searching...
No Matches
PutBucketMetricsConfigurationRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/s3/S3Request.h>
10#include <aws/s3/S3_EXPORTS.h>
11#include <aws/s3/model/MetricsConfiguration.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Http {
17class URI;
18} // namespace Http
19namespace S3 {
20namespace Model {
21
25 public:
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "PutBucketMetricsConfiguration"; }
33
34 AWS_S3_API Aws::String SerializePayload() const override;
35
36 AWS_S3_API void AddQueryStringParameters(Aws::Http::URI& uri) const override;
37
39
40 AWS_S3_API bool HasEmbeddedError(IOStream& body, const Http::HeaderValueCollection& header) const override;
44 AWS_S3_API EndpointParameters GetEndpointContextParams() const override;
45
47
61 inline const Aws::String& GetBucket() const { return m_bucket; }
62 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
63 template <typename BucketT = Aws::String>
64 void SetBucket(BucketT&& value) {
65 m_bucketHasBeenSet = true;
66 m_bucket = std::forward<BucketT>(value);
67 }
68 template <typename BucketT = Aws::String>
70 SetBucket(std::forward<BucketT>(value));
71 return *this;
72 }
74
76
81 inline const Aws::String& GetId() const { return m_id; }
82 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
83 template <typename IdT = Aws::String>
84 void SetId(IdT&& value) {
85 m_idHasBeenSet = true;
86 m_id = std::forward<IdT>(value);
87 }
88 template <typename IdT = Aws::String>
90 SetId(std::forward<IdT>(value));
91 return *this;
92 }
94
96
99 inline const MetricsConfiguration& GetMetricsConfiguration() const { return m_metricsConfiguration; }
100 inline bool MetricsConfigurationHasBeenSet() const { return m_metricsConfigurationHasBeenSet; }
101 template <typename MetricsConfigurationT = MetricsConfiguration>
102 void SetMetricsConfiguration(MetricsConfigurationT&& value) {
103 m_metricsConfigurationHasBeenSet = true;
104 m_metricsConfiguration = std::forward<MetricsConfigurationT>(value);
105 }
106 template <typename MetricsConfigurationT = MetricsConfiguration>
108 SetMetricsConfiguration(std::forward<MetricsConfigurationT>(value));
109 return *this;
110 }
112
114
122 inline const Aws::String& GetExpectedBucketOwner() const { return m_expectedBucketOwner; }
123 inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
124 template <typename ExpectedBucketOwnerT = Aws::String>
125 void SetExpectedBucketOwner(ExpectedBucketOwnerT&& value) {
126 m_expectedBucketOwnerHasBeenSet = true;
127 m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value);
128 }
129 template <typename ExpectedBucketOwnerT = Aws::String>
131 SetExpectedBucketOwner(std::forward<ExpectedBucketOwnerT>(value));
132 return *this;
133 }
135
137
138 inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const { return m_customizedAccessLogTag; }
139 inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
140 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
141 void SetCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) {
142 m_customizedAccessLogTagHasBeenSet = true;
143 m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value);
144 }
145 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
147 SetCustomizedAccessLogTag(std::forward<CustomizedAccessLogTagT>(value));
148 return *this;
149 }
150 template <typename CustomizedAccessLogTagKeyT = Aws::String, typename CustomizedAccessLogTagValueT = Aws::String>
151 PutBucketMetricsConfigurationRequest& AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT&& key, CustomizedAccessLogTagValueT&& value) {
152 m_customizedAccessLogTagHasBeenSet = true;
153 m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value));
154 return *this;
155 }
157 private:
158 Aws::String m_bucket;
159
160 Aws::String m_id;
161
162 MetricsConfiguration m_metricsConfiguration;
163
164 Aws::String m_expectedBucketOwner;
165
166 Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
167 bool m_bucketHasBeenSet = false;
168 bool m_idHasBeenSet = false;
169 bool m_metricsConfigurationHasBeenSet = false;
170 bool m_expectedBucketOwnerHasBeenSet = false;
171 bool m_customizedAccessLogTagHasBeenSet = false;
172};
173
174} // namespace Model
175} // namespace S3
176} // namespace Aws
PutBucketMetricsConfigurationRequest & WithMetricsConfiguration(MetricsConfigurationT &&value)
PutBucketMetricsConfigurationRequest & WithId(IdT &&value)
PutBucketMetricsConfigurationRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
PutBucketMetricsConfigurationRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
PutBucketMetricsConfigurationRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) const override
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
PutBucketMetricsConfigurationRequest & WithBucket(BucketT &&value)
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
AWS_S3_API Aws::String SerializePayload() const override
Aws::Endpoint::EndpointParameters EndpointParameters
Definition S3Request.h:19
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_iostream< char, std::char_traits< char > > IOStream
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String