AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
S3HudiDirectTarget.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/glue/Glue_EXPORTS.h>
11#include <aws/glue/model/AutoDataQuality.h>
12#include <aws/glue/model/DirectSchemaChangePolicy.h>
13#include <aws/glue/model/HudiTargetCompressionType.h>
14#include <aws/glue/model/TargetFormat.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Glue {
26namespace Model {
27
35 public:
36 AWS_GLUE_API S3HudiDirectTarget() = default;
40
42
45 inline const Aws::String& GetName() const { return m_name; }
46 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
47 template <typename NameT = Aws::String>
48 void SetName(NameT&& value) {
49 m_nameHasBeenSet = true;
50 m_name = std::forward<NameT>(value);
51 }
52 template <typename NameT = Aws::String>
53 S3HudiDirectTarget& WithName(NameT&& value) {
54 SetName(std::forward<NameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::Vector<Aws::String>& GetInputs() const { return m_inputs; }
64 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
65 template <typename InputsT = Aws::Vector<Aws::String>>
66 void SetInputs(InputsT&& value) {
67 m_inputsHasBeenSet = true;
68 m_inputs = std::forward<InputsT>(value);
69 }
70 template <typename InputsT = Aws::Vector<Aws::String>>
71 S3HudiDirectTarget& WithInputs(InputsT&& value) {
72 SetInputs(std::forward<InputsT>(value));
73 return *this;
74 }
75 template <typename InputsT = Aws::String>
76 S3HudiDirectTarget& AddInputs(InputsT&& value) {
77 m_inputsHasBeenSet = true;
78 m_inputs.emplace_back(std::forward<InputsT>(value));
79 return *this;
80 }
82
84
87 inline const Aws::String& GetPath() const { return m_path; }
88 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
89 template <typename PathT = Aws::String>
90 void SetPath(PathT&& value) {
91 m_pathHasBeenSet = true;
92 m_path = std::forward<PathT>(value);
93 }
94 template <typename PathT = Aws::String>
95 S3HudiDirectTarget& WithPath(PathT&& value) {
96 SetPath(std::forward<PathT>(value));
97 return *this;
98 }
100
102
107 inline HudiTargetCompressionType GetCompression() const { return m_compression; }
108 inline bool CompressionHasBeenSet() const { return m_compressionHasBeenSet; }
110 m_compressionHasBeenSet = true;
111 m_compression = value;
112 }
114 SetCompression(value);
115 return *this;
116 }
118
120
124 inline const Aws::String& GetNumberTargetPartitions() const { return m_numberTargetPartitions; }
125 inline bool NumberTargetPartitionsHasBeenSet() const { return m_numberTargetPartitionsHasBeenSet; }
126 template <typename NumberTargetPartitionsT = Aws::String>
127 void SetNumberTargetPartitions(NumberTargetPartitionsT&& value) {
128 m_numberTargetPartitionsHasBeenSet = true;
129 m_numberTargetPartitions = std::forward<NumberTargetPartitionsT>(value);
130 }
131 template <typename NumberTargetPartitionsT = Aws::String>
132 S3HudiDirectTarget& WithNumberTargetPartitions(NumberTargetPartitionsT&& value) {
133 SetNumberTargetPartitions(std::forward<NumberTargetPartitionsT>(value));
134 return *this;
135 }
137
139
142 inline const Aws::Vector<Aws::Vector<Aws::String>>& GetPartitionKeys() const { return m_partitionKeys; }
143 inline bool PartitionKeysHasBeenSet() const { return m_partitionKeysHasBeenSet; }
144 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
145 void SetPartitionKeys(PartitionKeysT&& value) {
146 m_partitionKeysHasBeenSet = true;
147 m_partitionKeys = std::forward<PartitionKeysT>(value);
148 }
149 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
150 S3HudiDirectTarget& WithPartitionKeys(PartitionKeysT&& value) {
151 SetPartitionKeys(std::forward<PartitionKeysT>(value));
152 return *this;
153 }
154 template <typename PartitionKeysT = Aws::Vector<Aws::String>>
155 S3HudiDirectTarget& AddPartitionKeys(PartitionKeysT&& value) {
156 m_partitionKeysHasBeenSet = true;
157 m_partitionKeys.emplace_back(std::forward<PartitionKeysT>(value));
158 return *this;
159 }
161
163
166 inline TargetFormat GetFormat() const { return m_format; }
167 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
168 inline void SetFormat(TargetFormat value) {
169 m_formatHasBeenSet = true;
170 m_format = value;
171 }
173 SetFormat(value);
174 return *this;
175 }
177
179
182 inline const Aws::Map<Aws::String, Aws::String>& GetAdditionalOptions() const { return m_additionalOptions; }
183 inline bool AdditionalOptionsHasBeenSet() const { return m_additionalOptionsHasBeenSet; }
184 template <typename AdditionalOptionsT = Aws::Map<Aws::String, Aws::String>>
185 void SetAdditionalOptions(AdditionalOptionsT&& value) {
186 m_additionalOptionsHasBeenSet = true;
187 m_additionalOptions = std::forward<AdditionalOptionsT>(value);
188 }
189 template <typename AdditionalOptionsT = Aws::Map<Aws::String, Aws::String>>
190 S3HudiDirectTarget& WithAdditionalOptions(AdditionalOptionsT&& value) {
191 SetAdditionalOptions(std::forward<AdditionalOptionsT>(value));
192 return *this;
193 }
194 template <typename AdditionalOptionsKeyT = Aws::String, typename AdditionalOptionsValueT = Aws::String>
195 S3HudiDirectTarget& AddAdditionalOptions(AdditionalOptionsKeyT&& key, AdditionalOptionsValueT&& value) {
196 m_additionalOptionsHasBeenSet = true;
197 m_additionalOptions.emplace(std::forward<AdditionalOptionsKeyT>(key), std::forward<AdditionalOptionsValueT>(value));
198 return *this;
199 }
201
203
206 inline const DirectSchemaChangePolicy& GetSchemaChangePolicy() const { return m_schemaChangePolicy; }
207 inline bool SchemaChangePolicyHasBeenSet() const { return m_schemaChangePolicyHasBeenSet; }
208 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
209 void SetSchemaChangePolicy(SchemaChangePolicyT&& value) {
210 m_schemaChangePolicyHasBeenSet = true;
211 m_schemaChangePolicy = std::forward<SchemaChangePolicyT>(value);
212 }
213 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
214 S3HudiDirectTarget& WithSchemaChangePolicy(SchemaChangePolicyT&& value) {
215 SetSchemaChangePolicy(std::forward<SchemaChangePolicyT>(value));
216 return *this;
217 }
219
221
226 inline const AutoDataQuality& GetAutoDataQuality() const { return m_autoDataQuality; }
227 inline bool AutoDataQualityHasBeenSet() const { return m_autoDataQualityHasBeenSet; }
228 template <typename AutoDataQualityT = AutoDataQuality>
229 void SetAutoDataQuality(AutoDataQualityT&& value) {
230 m_autoDataQualityHasBeenSet = true;
231 m_autoDataQuality = std::forward<AutoDataQualityT>(value);
232 }
233 template <typename AutoDataQualityT = AutoDataQuality>
234 S3HudiDirectTarget& WithAutoDataQuality(AutoDataQualityT&& value) {
235 SetAutoDataQuality(std::forward<AutoDataQualityT>(value));
236 return *this;
237 }
239 private:
240 Aws::String m_name;
241
243
244 Aws::String m_path;
245
247
248 Aws::String m_numberTargetPartitions;
249
251
253
254 Aws::Map<Aws::String, Aws::String> m_additionalOptions;
255
256 DirectSchemaChangePolicy m_schemaChangePolicy;
257
258 AutoDataQuality m_autoDataQuality;
259 bool m_nameHasBeenSet = false;
260 bool m_inputsHasBeenSet = false;
261 bool m_pathHasBeenSet = false;
262 bool m_compressionHasBeenSet = false;
263 bool m_numberTargetPartitionsHasBeenSet = false;
264 bool m_partitionKeysHasBeenSet = false;
265 bool m_formatHasBeenSet = false;
266 bool m_additionalOptionsHasBeenSet = false;
267 bool m_schemaChangePolicyHasBeenSet = false;
268 bool m_autoDataQualityHasBeenSet = false;
269};
270
271} // namespace Model
272} // namespace Glue
273} // namespace Aws
S3HudiDirectTarget & WithCompression(HudiTargetCompressionType value)
S3HudiDirectTarget & WithAdditionalOptions(AdditionalOptionsT &&value)
void SetNumberTargetPartitions(NumberTargetPartitionsT &&value)
S3HudiDirectTarget & WithFormat(TargetFormat value)
S3HudiDirectTarget & WithInputs(InputsT &&value)
const Aws::String & GetPath() const
S3HudiDirectTarget & AddInputs(InputsT &&value)
void SetPartitionKeys(PartitionKeysT &&value)
const Aws::String & GetName() const
const Aws::Vector< Aws::Vector< Aws::String > > & GetPartitionKeys() const
S3HudiDirectTarget & AddPartitionKeys(PartitionKeysT &&value)
S3HudiDirectTarget & WithName(NameT &&value)
AWS_GLUE_API S3HudiDirectTarget(Aws::Utils::Json::JsonView jsonValue)
void SetCompression(HudiTargetCompressionType value)
S3HudiDirectTarget & WithPartitionKeys(PartitionKeysT &&value)
void SetSchemaChangePolicy(SchemaChangePolicyT &&value)
S3HudiDirectTarget & AddAdditionalOptions(AdditionalOptionsKeyT &&key, AdditionalOptionsValueT &&value)
AWS_GLUE_API S3HudiDirectTarget & operator=(Aws::Utils::Json::JsonView jsonValue)
S3HudiDirectTarget & WithAutoDataQuality(AutoDataQualityT &&value)
HudiTargetCompressionType GetCompression() const
S3HudiDirectTarget & WithPath(PathT &&value)
const AutoDataQuality & GetAutoDataQuality() const
S3HudiDirectTarget & WithSchemaChangePolicy(SchemaChangePolicyT &&value)
void SetAdditionalOptions(AdditionalOptionsT &&value)
const Aws::String & GetNumberTargetPartitions() const
const Aws::Vector< Aws::String > & GetInputs() const
S3HudiDirectTarget & WithNumberTargetPartitions(NumberTargetPartitionsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAdditionalOptions() const
AWS_GLUE_API S3HudiDirectTarget()=default
void SetAutoDataQuality(AutoDataQualityT &&value)
const DirectSchemaChangePolicy & GetSchemaChangePolicy() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue