AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
S3DirectTarget.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/glue/Glue_EXPORTS.h>
10#include <aws/glue/model/AutoDataQuality.h>
11#include <aws/glue/model/DirectSchemaChangePolicy.h>
12#include <aws/glue/model/GlueSchema.h>
13#include <aws/glue/model/TargetFormat.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Glue {
25namespace Model {
26
34 public:
35 AWS_GLUE_API S3DirectTarget() = default;
39
41
44 inline const Aws::String& GetName() const { return m_name; }
45 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
46 template <typename NameT = Aws::String>
47 void SetName(NameT&& value) {
48 m_nameHasBeenSet = true;
49 m_name = std::forward<NameT>(value);
50 }
51 template <typename NameT = Aws::String>
52 S3DirectTarget& WithName(NameT&& value) {
53 SetName(std::forward<NameT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::Vector<Aws::String>& GetInputs() const { return m_inputs; }
63 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
64 template <typename InputsT = Aws::Vector<Aws::String>>
65 void SetInputs(InputsT&& value) {
66 m_inputsHasBeenSet = true;
67 m_inputs = std::forward<InputsT>(value);
68 }
69 template <typename InputsT = Aws::Vector<Aws::String>>
70 S3DirectTarget& WithInputs(InputsT&& value) {
71 SetInputs(std::forward<InputsT>(value));
72 return *this;
73 }
74 template <typename InputsT = Aws::String>
75 S3DirectTarget& AddInputs(InputsT&& value) {
76 m_inputsHasBeenSet = true;
77 m_inputs.emplace_back(std::forward<InputsT>(value));
78 return *this;
79 }
81
83
86 inline const Aws::Vector<Aws::Vector<Aws::String>>& GetPartitionKeys() const { return m_partitionKeys; }
87 inline bool PartitionKeysHasBeenSet() const { return m_partitionKeysHasBeenSet; }
88 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
89 void SetPartitionKeys(PartitionKeysT&& value) {
90 m_partitionKeysHasBeenSet = true;
91 m_partitionKeys = std::forward<PartitionKeysT>(value);
92 }
93 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
94 S3DirectTarget& WithPartitionKeys(PartitionKeysT&& value) {
95 SetPartitionKeys(std::forward<PartitionKeysT>(value));
96 return *this;
97 }
98 template <typename PartitionKeysT = Aws::Vector<Aws::String>>
99 S3DirectTarget& AddPartitionKeys(PartitionKeysT&& value) {
100 m_partitionKeysHasBeenSet = true;
101 m_partitionKeys.emplace_back(std::forward<PartitionKeysT>(value));
102 return *this;
103 }
105
107
110 inline const Aws::String& GetPath() const { return m_path; }
111 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
112 template <typename PathT = Aws::String>
113 void SetPath(PathT&& value) {
114 m_pathHasBeenSet = true;
115 m_path = std::forward<PathT>(value);
116 }
117 template <typename PathT = Aws::String>
118 S3DirectTarget& WithPath(PathT&& value) {
119 SetPath(std::forward<PathT>(value));
120 return *this;
121 }
123
125
130 inline const Aws::String& GetCompression() const { return m_compression; }
131 inline bool CompressionHasBeenSet() const { return m_compressionHasBeenSet; }
132 template <typename CompressionT = Aws::String>
133 void SetCompression(CompressionT&& value) {
134 m_compressionHasBeenSet = true;
135 m_compression = std::forward<CompressionT>(value);
136 }
137 template <typename CompressionT = Aws::String>
138 S3DirectTarget& WithCompression(CompressionT&& value) {
139 SetCompression(std::forward<CompressionT>(value));
140 return *this;
141 }
143
145
149 inline const Aws::String& GetNumberTargetPartitions() const { return m_numberTargetPartitions; }
150 inline bool NumberTargetPartitionsHasBeenSet() const { return m_numberTargetPartitionsHasBeenSet; }
151 template <typename NumberTargetPartitionsT = Aws::String>
152 void SetNumberTargetPartitions(NumberTargetPartitionsT&& value) {
153 m_numberTargetPartitionsHasBeenSet = true;
154 m_numberTargetPartitions = std::forward<NumberTargetPartitionsT>(value);
155 }
156 template <typename NumberTargetPartitionsT = Aws::String>
157 S3DirectTarget& WithNumberTargetPartitions(NumberTargetPartitionsT&& value) {
158 SetNumberTargetPartitions(std::forward<NumberTargetPartitionsT>(value));
159 return *this;
160 }
162
164
167 inline TargetFormat GetFormat() const { return m_format; }
168 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
169 inline void SetFormat(TargetFormat value) {
170 m_formatHasBeenSet = true;
171 m_format = value;
172 }
174 SetFormat(value);
175 return *this;
176 }
178
180
183 inline const DirectSchemaChangePolicy& GetSchemaChangePolicy() const { return m_schemaChangePolicy; }
184 inline bool SchemaChangePolicyHasBeenSet() const { return m_schemaChangePolicyHasBeenSet; }
185 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
186 void SetSchemaChangePolicy(SchemaChangePolicyT&& value) {
187 m_schemaChangePolicyHasBeenSet = true;
188 m_schemaChangePolicy = std::forward<SchemaChangePolicyT>(value);
189 }
190 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
191 S3DirectTarget& WithSchemaChangePolicy(SchemaChangePolicyT&& value) {
192 SetSchemaChangePolicy(std::forward<SchemaChangePolicyT>(value));
193 return *this;
194 }
196
198
203 inline const AutoDataQuality& GetAutoDataQuality() const { return m_autoDataQuality; }
204 inline bool AutoDataQualityHasBeenSet() const { return m_autoDataQualityHasBeenSet; }
205 template <typename AutoDataQualityT = AutoDataQuality>
206 void SetAutoDataQuality(AutoDataQualityT&& value) {
207 m_autoDataQualityHasBeenSet = true;
208 m_autoDataQuality = std::forward<AutoDataQualityT>(value);
209 }
210 template <typename AutoDataQualityT = AutoDataQuality>
211 S3DirectTarget& WithAutoDataQuality(AutoDataQualityT&& value) {
212 SetAutoDataQuality(std::forward<AutoDataQualityT>(value));
213 return *this;
214 }
216
218
221 inline const Aws::Vector<GlueSchema>& GetOutputSchemas() const { return m_outputSchemas; }
222 inline bool OutputSchemasHasBeenSet() const { return m_outputSchemasHasBeenSet; }
223 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
224 void SetOutputSchemas(OutputSchemasT&& value) {
225 m_outputSchemasHasBeenSet = true;
226 m_outputSchemas = std::forward<OutputSchemasT>(value);
227 }
228 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
229 S3DirectTarget& WithOutputSchemas(OutputSchemasT&& value) {
230 SetOutputSchemas(std::forward<OutputSchemasT>(value));
231 return *this;
232 }
233 template <typename OutputSchemasT = GlueSchema>
234 S3DirectTarget& AddOutputSchemas(OutputSchemasT&& value) {
235 m_outputSchemasHasBeenSet = true;
236 m_outputSchemas.emplace_back(std::forward<OutputSchemasT>(value));
237 return *this;
238 }
240 private:
241 Aws::String m_name;
242
244
246
247 Aws::String m_path;
248
249 Aws::String m_compression;
250
251 Aws::String m_numberTargetPartitions;
252
254
255 DirectSchemaChangePolicy m_schemaChangePolicy;
256
257 AutoDataQuality m_autoDataQuality;
258
259 Aws::Vector<GlueSchema> m_outputSchemas;
260 bool m_nameHasBeenSet = false;
261 bool m_inputsHasBeenSet = false;
262 bool m_partitionKeysHasBeenSet = false;
263 bool m_pathHasBeenSet = false;
264 bool m_compressionHasBeenSet = false;
265 bool m_numberTargetPartitionsHasBeenSet = false;
266 bool m_formatHasBeenSet = false;
267 bool m_schemaChangePolicyHasBeenSet = false;
268 bool m_autoDataQualityHasBeenSet = false;
269 bool m_outputSchemasHasBeenSet = false;
270};
271
272} // namespace Model
273} // namespace Glue
274} // namespace Aws
S3DirectTarget & AddPartitionKeys(PartitionKeysT &&value)
S3DirectTarget & WithInputs(InputsT &&value)
const Aws::String & GetPath() const
S3DirectTarget & WithFormat(TargetFormat value)
void SetCompression(CompressionT &&value)
const Aws::Vector< GlueSchema > & GetOutputSchemas() const
S3DirectTarget & AddOutputSchemas(OutputSchemasT &&value)
void SetFormat(TargetFormat value)
void SetInputs(InputsT &&value)
const Aws::String & GetName() const
AWS_GLUE_API S3DirectTarget()=default
S3DirectTarget & WithCompression(CompressionT &&value)
void SetAutoDataQuality(AutoDataQualityT &&value)
void SetOutputSchemas(OutputSchemasT &&value)
AWS_GLUE_API S3DirectTarget & operator=(Aws::Utils::Json::JsonView jsonValue)
S3DirectTarget & WithNumberTargetPartitions(NumberTargetPartitionsT &&value)
S3DirectTarget & WithPath(PathT &&value)
S3DirectTarget & WithSchemaChangePolicy(SchemaChangePolicyT &&value)
S3DirectTarget & WithPartitionKeys(PartitionKeysT &&value)
S3DirectTarget & WithOutputSchemas(OutputSchemasT &&value)
void SetSchemaChangePolicy(SchemaChangePolicyT &&value)
const Aws::String & GetCompression() const
void SetPartitionKeys(PartitionKeysT &&value)
void SetNumberTargetPartitions(NumberTargetPartitionsT &&value)
S3DirectTarget & AddInputs(InputsT &&value)
AWS_GLUE_API S3DirectTarget(Aws::Utils::Json::JsonView jsonValue)
S3DirectTarget & WithName(NameT &&value)
const Aws::String & GetNumberTargetPartitions() const
const DirectSchemaChangePolicy & GetSchemaChangePolicy() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::Vector< Aws::String > > & GetPartitionKeys() const
S3DirectTarget & WithAutoDataQuality(AutoDataQualityT &&value)
const Aws::Vector< Aws::String > & GetInputs() const
const AutoDataQuality & GetAutoDataQuality() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue