AWS SDK for C++

AWS SDK for C++ Version 1.11.686

Loading...
Searching...
No Matches
PutBucketNotificationConfigurationRequest.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/NotificationConfiguration.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 "PutBucketNotificationConfiguration"; }
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
50 inline const Aws::String& GetBucket() const { return m_bucket; }
51 inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
52 template <typename BucketT = Aws::String>
53 void SetBucket(BucketT&& value) {
54 m_bucketHasBeenSet = true;
55 m_bucket = std::forward<BucketT>(value);
56 }
57 template <typename BucketT = Aws::String>
59 SetBucket(std::forward<BucketT>(value));
60 return *this;
61 }
63
65
66 inline const NotificationConfiguration& GetNotificationConfiguration() const { return m_notificationConfiguration; }
67 inline bool NotificationConfigurationHasBeenSet() const { return m_notificationConfigurationHasBeenSet; }
68 template <typename NotificationConfigurationT = NotificationConfiguration>
69 void SetNotificationConfiguration(NotificationConfigurationT&& value) {
70 m_notificationConfigurationHasBeenSet = true;
71 m_notificationConfiguration = std::forward<NotificationConfigurationT>(value);
72 }
73 template <typename NotificationConfigurationT = NotificationConfiguration>
75 SetNotificationConfiguration(std::forward<NotificationConfigurationT>(value));
76 return *this;
77 }
79
81
86 inline const Aws::String& GetExpectedBucketOwner() const { return m_expectedBucketOwner; }
87 inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
88 template <typename ExpectedBucketOwnerT = Aws::String>
89 void SetExpectedBucketOwner(ExpectedBucketOwnerT&& value) {
90 m_expectedBucketOwnerHasBeenSet = true;
91 m_expectedBucketOwner = std::forward<ExpectedBucketOwnerT>(value);
92 }
93 template <typename ExpectedBucketOwnerT = Aws::String>
95 SetExpectedBucketOwner(std::forward<ExpectedBucketOwnerT>(value));
96 return *this;
97 }
99
101
105 inline bool GetSkipDestinationValidation() const { return m_skipDestinationValidation; }
106 inline bool SkipDestinationValidationHasBeenSet() const { return m_skipDestinationValidationHasBeenSet; }
107 inline void SetSkipDestinationValidation(bool value) {
108 m_skipDestinationValidationHasBeenSet = true;
109 m_skipDestinationValidation = value;
110 }
113 return *this;
114 }
116
118
119 inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const { return m_customizedAccessLogTag; }
120 inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
121 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
122 void SetCustomizedAccessLogTag(CustomizedAccessLogTagT&& value) {
123 m_customizedAccessLogTagHasBeenSet = true;
124 m_customizedAccessLogTag = std::forward<CustomizedAccessLogTagT>(value);
125 }
126 template <typename CustomizedAccessLogTagT = Aws::Map<Aws::String, Aws::String>>
128 SetCustomizedAccessLogTag(std::forward<CustomizedAccessLogTagT>(value));
129 return *this;
130 }
131 template <typename CustomizedAccessLogTagKeyT = Aws::String, typename CustomizedAccessLogTagValueT = Aws::String>
133 CustomizedAccessLogTagValueT&& value) {
134 m_customizedAccessLogTagHasBeenSet = true;
135 m_customizedAccessLogTag.emplace(std::forward<CustomizedAccessLogTagKeyT>(key), std::forward<CustomizedAccessLogTagValueT>(value));
136 return *this;
137 }
139 private:
140 Aws::String m_bucket;
141 bool m_bucketHasBeenSet = false;
142
143 NotificationConfiguration m_notificationConfiguration;
144 bool m_notificationConfigurationHasBeenSet = false;
145
146 Aws::String m_expectedBucketOwner;
147 bool m_expectedBucketOwnerHasBeenSet = false;
148
149 bool m_skipDestinationValidation{false};
150 bool m_skipDestinationValidationHasBeenSet = false;
151
152 Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
153 bool m_customizedAccessLogTagHasBeenSet = false;
154};
155
156} // namespace Model
157} // namespace S3
158} // namespace Aws
AWS_S3_API EndpointParameters GetEndpointContextParams() const override
PutBucketNotificationConfigurationRequest & WithBucket(BucketT &&value)
PutBucketNotificationConfigurationRequest & WithNotificationConfiguration(NotificationConfigurationT &&value)
AWS_S3_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
AWS_S3_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
PutBucketNotificationConfigurationRequest & WithCustomizedAccessLogTag(CustomizedAccessLogTagT &&value)
PutBucketNotificationConfigurationRequest & WithExpectedBucketOwner(ExpectedBucketOwnerT &&value)
AWS_S3_API Aws::String SerializePayload() const override
const Aws::Map< Aws::String, Aws::String > & GetCustomizedAccessLogTag() const
PutBucketNotificationConfigurationRequest & AddCustomizedAccessLogTag(CustomizedAccessLogTagKeyT &&key, CustomizedAccessLogTagValueT &&value)
PutBucketNotificationConfigurationRequest & WithSkipDestinationValidation(bool value)
AWS_S3_API bool HasEmbeddedError(IOStream &body, const Http::HeaderValueCollection &header) 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