1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/s3-crt/S3Crt_EXPORTS.h>
8 #include <aws/s3-crt/S3CrtRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/memory/stl/AWSMap.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Http
16 {
17     class URI;
18 } //namespace Http
19 namespace S3Crt
20 {
21 namespace Model
22 {
23 
24   /**
25    */
26   class AWS_S3CRT_API ListBucketAnalyticsConfigurationsRequest : public S3CrtRequest
27   {
28   public:
29     ListBucketAnalyticsConfigurationsRequest();
30 
31     // Service request name is the Operation name which will send this request out,
32     // each operation should has unique request name, so that we can get operation's name from this request.
33     // Note: this is not true for response, multiple operations may have the same response name,
34     // so we can not get operation's name from response.
GetServiceRequestName()35     inline virtual const char* GetServiceRequestName() const override { return "ListBucketAnalyticsConfigurations"; }
36 
37     Aws::String SerializePayload() const override;
38 
39     void AddQueryStringParameters(Aws::Http::URI& uri) const override;
40 
41     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
42 
43 
44     /**
45      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
46      */
GetBucket()47     inline const Aws::String& GetBucket() const{ return m_bucket; }
48 
49     /**
50      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
51      */
BucketHasBeenSet()52     inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
53 
54     /**
55      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
56      */
SetBucket(const Aws::String & value)57     inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
58 
59     /**
60      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
61      */
SetBucket(Aws::String && value)62     inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
63 
64     /**
65      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
66      */
SetBucket(const char * value)67     inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
68 
69     /**
70      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
71      */
WithBucket(const Aws::String & value)72     inline ListBucketAnalyticsConfigurationsRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
73 
74     /**
75      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
76      */
WithBucket(Aws::String && value)77     inline ListBucketAnalyticsConfigurationsRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
78 
79     /**
80      * <p>The name of the bucket from which analytics configurations are retrieved.</p>
81      */
WithBucket(const char * value)82     inline ListBucketAnalyticsConfigurationsRequest& WithBucket(const char* value) { SetBucket(value); return *this;}
83 
84 
85     /**
86      * <p>The ContinuationToken that represents a placeholder from where this request
87      * should begin.</p>
88      */
GetContinuationToken()89     inline const Aws::String& GetContinuationToken() const{ return m_continuationToken; }
90 
91     /**
92      * <p>The ContinuationToken that represents a placeholder from where this request
93      * should begin.</p>
94      */
ContinuationTokenHasBeenSet()95     inline bool ContinuationTokenHasBeenSet() const { return m_continuationTokenHasBeenSet; }
96 
97     /**
98      * <p>The ContinuationToken that represents a placeholder from where this request
99      * should begin.</p>
100      */
SetContinuationToken(const Aws::String & value)101     inline void SetContinuationToken(const Aws::String& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = value; }
102 
103     /**
104      * <p>The ContinuationToken that represents a placeholder from where this request
105      * should begin.</p>
106      */
SetContinuationToken(Aws::String && value)107     inline void SetContinuationToken(Aws::String&& value) { m_continuationTokenHasBeenSet = true; m_continuationToken = std::move(value); }
108 
109     /**
110      * <p>The ContinuationToken that represents a placeholder from where this request
111      * should begin.</p>
112      */
SetContinuationToken(const char * value)113     inline void SetContinuationToken(const char* value) { m_continuationTokenHasBeenSet = true; m_continuationToken.assign(value); }
114 
115     /**
116      * <p>The ContinuationToken that represents a placeholder from where this request
117      * should begin.</p>
118      */
WithContinuationToken(const Aws::String & value)119     inline ListBucketAnalyticsConfigurationsRequest& WithContinuationToken(const Aws::String& value) { SetContinuationToken(value); return *this;}
120 
121     /**
122      * <p>The ContinuationToken that represents a placeholder from where this request
123      * should begin.</p>
124      */
WithContinuationToken(Aws::String && value)125     inline ListBucketAnalyticsConfigurationsRequest& WithContinuationToken(Aws::String&& value) { SetContinuationToken(std::move(value)); return *this;}
126 
127     /**
128      * <p>The ContinuationToken that represents a placeholder from where this request
129      * should begin.</p>
130      */
WithContinuationToken(const char * value)131     inline ListBucketAnalyticsConfigurationsRequest& WithContinuationToken(const char* value) { SetContinuationToken(value); return *this;}
132 
133 
134     /**
135      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
136      * different account, the request will fail with an HTTP <code>403 (Access
137      * Denied)</code> error.</p>
138      */
GetExpectedBucketOwner()139     inline const Aws::String& GetExpectedBucketOwner() const{ return m_expectedBucketOwner; }
140 
141     /**
142      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
143      * different account, the request will fail with an HTTP <code>403 (Access
144      * Denied)</code> error.</p>
145      */
ExpectedBucketOwnerHasBeenSet()146     inline bool ExpectedBucketOwnerHasBeenSet() const { return m_expectedBucketOwnerHasBeenSet; }
147 
148     /**
149      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
150      * different account, the request will fail with an HTTP <code>403 (Access
151      * Denied)</code> error.</p>
152      */
SetExpectedBucketOwner(const Aws::String & value)153     inline void SetExpectedBucketOwner(const Aws::String& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = value; }
154 
155     /**
156      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
157      * different account, the request will fail with an HTTP <code>403 (Access
158      * Denied)</code> error.</p>
159      */
SetExpectedBucketOwner(Aws::String && value)160     inline void SetExpectedBucketOwner(Aws::String&& value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner = std::move(value); }
161 
162     /**
163      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
164      * different account, the request will fail with an HTTP <code>403 (Access
165      * Denied)</code> error.</p>
166      */
SetExpectedBucketOwner(const char * value)167     inline void SetExpectedBucketOwner(const char* value) { m_expectedBucketOwnerHasBeenSet = true; m_expectedBucketOwner.assign(value); }
168 
169     /**
170      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
171      * different account, the request will fail with an HTTP <code>403 (Access
172      * Denied)</code> error.</p>
173      */
WithExpectedBucketOwner(const Aws::String & value)174     inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(const Aws::String& value) { SetExpectedBucketOwner(value); return *this;}
175 
176     /**
177      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
178      * different account, the request will fail with an HTTP <code>403 (Access
179      * Denied)</code> error.</p>
180      */
WithExpectedBucketOwner(Aws::String && value)181     inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(Aws::String&& value) { SetExpectedBucketOwner(std::move(value)); return *this;}
182 
183     /**
184      * <p>The account ID of the expected bucket owner. If the bucket is owned by a
185      * different account, the request will fail with an HTTP <code>403 (Access
186      * Denied)</code> error.</p>
187      */
WithExpectedBucketOwner(const char * value)188     inline ListBucketAnalyticsConfigurationsRequest& WithExpectedBucketOwner(const char* value) { SetExpectedBucketOwner(value); return *this;}
189 
190 
191 
GetCustomizedAccessLogTag()192     inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; }
193 
194 
CustomizedAccessLogTagHasBeenSet()195     inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; }
196 
197 
SetCustomizedAccessLogTag(const Aws::Map<Aws::String,Aws::String> & value)198     inline void SetCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = value; }
199 
200 
SetCustomizedAccessLogTag(Aws::Map<Aws::String,Aws::String> && value)201     inline void SetCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::move(value); }
202 
203 
WithCustomizedAccessLogTag(const Aws::Map<Aws::String,Aws::String> & value)204     inline ListBucketAnalyticsConfigurationsRequest& WithCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { SetCustomizedAccessLogTag(value); return *this;}
205 
206 
WithCustomizedAccessLogTag(Aws::Map<Aws::String,Aws::String> && value)207     inline ListBucketAnalyticsConfigurationsRequest& WithCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { SetCustomizedAccessLogTag(std::move(value)); return *this;}
208 
209 
AddCustomizedAccessLogTag(const Aws::String & key,const Aws::String & value)210     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(const Aws::String& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; }
211 
212 
AddCustomizedAccessLogTag(Aws::String && key,const Aws::String & value)213     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(Aws::String&& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; }
214 
215 
AddCustomizedAccessLogTag(const Aws::String & key,Aws::String && value)216     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(const Aws::String& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; }
217 
218 
AddCustomizedAccessLogTag(Aws::String && key,Aws::String && value)219     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(Aws::String&& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), std::move(value)); return *this; }
220 
221 
AddCustomizedAccessLogTag(const char * key,Aws::String && value)222     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(const char* key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; }
223 
224 
AddCustomizedAccessLogTag(Aws::String && key,const char * value)225     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(Aws::String&& key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; }
226 
227 
AddCustomizedAccessLogTag(const char * key,const char * value)228     inline ListBucketAnalyticsConfigurationsRequest& AddCustomizedAccessLogTag(const char* key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; }
229 
230   private:
231 
232     Aws::String m_bucket;
233     bool m_bucketHasBeenSet;
234 
235     Aws::String m_continuationToken;
236     bool m_continuationTokenHasBeenSet;
237 
238     Aws::String m_expectedBucketOwner;
239     bool m_expectedBucketOwnerHasBeenSet;
240 
241     Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag;
242     bool m_customizedAccessLogTagHasBeenSet;
243   };
244 
245 } // namespace Model
246 } // namespace S3Crt
247 } // namespace Aws
248