AWS SDK for C++

AWS SDK for C++ Version 1.11.714

Loading...
Searching...
No Matches
EnableLoggingRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/redshift/RedshiftRequest.h>
10#include <aws/redshift/Redshift_EXPORTS.h>
11#include <aws/redshift/model/LogDestinationType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Redshift {
17namespace Model {
18
25 public:
26 AWS_REDSHIFT_API EnableLoggingRequest() = default;
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 "EnableLogging"; }
33
34 AWS_REDSHIFT_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
38
39 public:
41
45 inline const Aws::String& GetClusterIdentifier() const { return m_clusterIdentifier; }
46 inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; }
47 template <typename ClusterIdentifierT = Aws::String>
48 void SetClusterIdentifier(ClusterIdentifierT&& value) {
49 m_clusterIdentifierHasBeenSet = true;
50 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
51 }
52 template <typename ClusterIdentifierT = Aws::String>
53 EnableLoggingRequest& WithClusterIdentifier(ClusterIdentifierT&& value) {
54 SetClusterIdentifier(std::forward<ClusterIdentifierT>(value));
55 return *this;
56 }
58
60
66 inline const Aws::String& GetBucketName() const { return m_bucketName; }
67 inline bool BucketNameHasBeenSet() const { return m_bucketNameHasBeenSet; }
68 template <typename BucketNameT = Aws::String>
69 void SetBucketName(BucketNameT&& value) {
70 m_bucketNameHasBeenSet = true;
71 m_bucketName = std::forward<BucketNameT>(value);
72 }
73 template <typename BucketNameT = Aws::String>
74 EnableLoggingRequest& WithBucketName(BucketNameT&& value) {
75 SetBucketName(std::forward<BucketNameT>(value));
76 return *this;
77 }
79
81
89 inline const Aws::String& GetS3KeyPrefix() const { return m_s3KeyPrefix; }
90 inline bool S3KeyPrefixHasBeenSet() const { return m_s3KeyPrefixHasBeenSet; }
91 template <typename S3KeyPrefixT = Aws::String>
92 void SetS3KeyPrefix(S3KeyPrefixT&& value) {
93 m_s3KeyPrefixHasBeenSet = true;
94 m_s3KeyPrefix = std::forward<S3KeyPrefixT>(value);
95 }
96 template <typename S3KeyPrefixT = Aws::String>
97 EnableLoggingRequest& WithS3KeyPrefix(S3KeyPrefixT&& value) {
98 SetS3KeyPrefix(std::forward<S3KeyPrefixT>(value));
99 return *this;
100 }
102
104
108 inline LogDestinationType GetLogDestinationType() const { return m_logDestinationType; }
109 inline bool LogDestinationTypeHasBeenSet() const { return m_logDestinationTypeHasBeenSet; }
111 m_logDestinationTypeHasBeenSet = true;
112 m_logDestinationType = value;
113 }
116 return *this;
117 }
119
121
126 inline const Aws::Vector<Aws::String>& GetLogExports() const { return m_logExports; }
127 inline bool LogExportsHasBeenSet() const { return m_logExportsHasBeenSet; }
128 template <typename LogExportsT = Aws::Vector<Aws::String>>
129 void SetLogExports(LogExportsT&& value) {
130 m_logExportsHasBeenSet = true;
131 m_logExports = std::forward<LogExportsT>(value);
132 }
133 template <typename LogExportsT = Aws::Vector<Aws::String>>
134 EnableLoggingRequest& WithLogExports(LogExportsT&& value) {
135 SetLogExports(std::forward<LogExportsT>(value));
136 return *this;
137 }
138 template <typename LogExportsT = Aws::String>
139 EnableLoggingRequest& AddLogExports(LogExportsT&& value) {
140 m_logExportsHasBeenSet = true;
141 m_logExports.emplace_back(std::forward<LogExportsT>(value));
142 return *this;
143 }
145 private:
146 Aws::String m_clusterIdentifier;
147
148 Aws::String m_bucketName;
149
150 Aws::String m_s3KeyPrefix;
151
153
154 Aws::Vector<Aws::String> m_logExports;
155 bool m_clusterIdentifierHasBeenSet = false;
156 bool m_bucketNameHasBeenSet = false;
157 bool m_s3KeyPrefixHasBeenSet = false;
158 bool m_logDestinationTypeHasBeenSet = false;
159 bool m_logExportsHasBeenSet = false;
160};
161
162} // namespace Model
163} // namespace Redshift
164} // namespace Aws
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
EnableLoggingRequest & WithLogDestinationType(LogDestinationType value)
EnableLoggingRequest & WithBucketName(BucketNameT &&value)
EnableLoggingRequest & WithLogExports(LogExportsT &&value)
EnableLoggingRequest & AddLogExports(LogExportsT &&value)
void SetLogDestinationType(LogDestinationType value)
EnableLoggingRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
virtual const char * GetServiceRequestName() const override
void SetClusterIdentifier(ClusterIdentifierT &&value)
EnableLoggingRequest & WithS3KeyPrefix(S3KeyPrefixT &&value)
const Aws::Vector< Aws::String > & GetLogExports() const
AWS_REDSHIFT_API EnableLoggingRequest()=default
AWS_REDSHIFT_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector