1 | /* |
2 | * Copyright 2010-2017 Amazon.com, Inc. or its affiliates. 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 | * A copy of the License is located at |
7 | * |
8 | * http://aws.amazon.com/apache2.0 |
9 | * |
10 | * or in the "license" file accompanying this file. This file is distributed |
11 | * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either |
12 | * express or implied. See the License for the specific language governing |
13 | * permissions and limitations under the License. |
14 | */ |
15 | |
16 | #pragma once |
17 | #include <aws/s3/S3_EXPORTS.h> |
18 | #include <aws/s3/S3Request.h> |
19 | #include <aws/core/utils/memory/stl/AWSString.h> |
20 | #include <aws/core/utils/memory/stl/AWSMap.h> |
21 | #include <utility> |
22 | |
23 | namespace Aws |
24 | { |
25 | namespace Http |
26 | { |
27 | class URI; |
28 | } //namespace Http |
29 | namespace S3 |
30 | { |
31 | namespace Model |
32 | { |
33 | |
34 | /** |
35 | */ |
36 | class AWS_S3_API GetBucketLoggingRequest : public S3Request |
37 | { |
38 | public: |
39 | GetBucketLoggingRequest(); |
40 | |
41 | // Service request name is the Operation name which will send this request out, |
42 | // each operation should has unique request name, so that we can get operation's name from this request. |
43 | // Note: this is not true for response, multiple operations may have the same response name, |
44 | // so we can not get operation's name from response. |
45 | inline virtual const char* GetServiceRequestName() const override { return "GetBucketLogging" ; } |
46 | |
47 | Aws::String SerializePayload() const override; |
48 | |
49 | void AddQueryStringParameters(Aws::Http::URI& uri) const override; |
50 | |
51 | |
52 | /** |
53 | * <p>The bucket name for which to get the logging information.</p> |
54 | */ |
55 | inline const Aws::String& GetBucket() const{ return m_bucket; } |
56 | |
57 | /** |
58 | * <p>The bucket name for which to get the logging information.</p> |
59 | */ |
60 | inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } |
61 | |
62 | /** |
63 | * <p>The bucket name for which to get the logging information.</p> |
64 | */ |
65 | inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } |
66 | |
67 | /** |
68 | * <p>The bucket name for which to get the logging information.</p> |
69 | */ |
70 | inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } |
71 | |
72 | /** |
73 | * <p>The bucket name for which to get the logging information.</p> |
74 | */ |
75 | inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } |
76 | |
77 | /** |
78 | * <p>The bucket name for which to get the logging information.</p> |
79 | */ |
80 | inline GetBucketLoggingRequest& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} |
81 | |
82 | /** |
83 | * <p>The bucket name for which to get the logging information.</p> |
84 | */ |
85 | inline GetBucketLoggingRequest& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} |
86 | |
87 | /** |
88 | * <p>The bucket name for which to get the logging information.</p> |
89 | */ |
90 | inline GetBucketLoggingRequest& WithBucket(const char* value) { SetBucket(value); return *this;} |
91 | |
92 | |
93 | |
94 | inline const Aws::Map<Aws::String, Aws::String>& GetCustomizedAccessLogTag() const{ return m_customizedAccessLogTag; } |
95 | |
96 | |
97 | inline bool CustomizedAccessLogTagHasBeenSet() const { return m_customizedAccessLogTagHasBeenSet; } |
98 | |
99 | |
100 | inline void SetCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = value; } |
101 | |
102 | |
103 | inline void SetCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag = std::move(value); } |
104 | |
105 | |
106 | inline GetBucketLoggingRequest& WithCustomizedAccessLogTag(const Aws::Map<Aws::String, Aws::String>& value) { SetCustomizedAccessLogTag(value); return *this;} |
107 | |
108 | |
109 | inline GetBucketLoggingRequest& WithCustomizedAccessLogTag(Aws::Map<Aws::String, Aws::String>&& value) { SetCustomizedAccessLogTag(std::move(value)); return *this;} |
110 | |
111 | |
112 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(const Aws::String& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; } |
113 | |
114 | |
115 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(Aws::String&& key, const Aws::String& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; } |
116 | |
117 | |
118 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(const Aws::String& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; } |
119 | |
120 | |
121 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(Aws::String&& key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), std::move(value)); return *this; } |
122 | |
123 | |
124 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(const char* key, Aws::String&& value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, std::move(value)); return *this; } |
125 | |
126 | |
127 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(Aws::String&& key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(std::move(key), value); return *this; } |
128 | |
129 | |
130 | inline GetBucketLoggingRequest& AddCustomizedAccessLogTag(const char* key, const char* value) { m_customizedAccessLogTagHasBeenSet = true; m_customizedAccessLogTag.emplace(key, value); return *this; } |
131 | |
132 | private: |
133 | |
134 | Aws::String m_bucket; |
135 | bool m_bucketHasBeenSet; |
136 | |
137 | Aws::Map<Aws::String, Aws::String> m_customizedAccessLogTag; |
138 | bool m_customizedAccessLogTagHasBeenSet; |
139 | }; |
140 | |
141 | } // namespace Model |
142 | } // namespace S3 |
143 | } // namespace Aws |
144 | |