AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
S3HyperDirectTarget.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/HyperTargetCompressionType.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 S3HyperDirectTarget() = 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 S3HyperDirectTarget& 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 S3HyperDirectTarget& WithInputs(InputsT&& value) {
72 SetInputs(std::forward<InputsT>(value));
73 return *this;
74 }
75 template <typename InputsT = Aws::String>
76 S3HyperDirectTarget& AddInputs(InputsT&& value) {
77 m_inputsHasBeenSet = true;
78 m_inputs.emplace_back(std::forward<InputsT>(value));
79 return *this;
80 }
82
84
87 inline TargetFormat GetFormat() const { return m_format; }
88 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
89 inline void SetFormat(TargetFormat value) {
90 m_formatHasBeenSet = true;
91 m_format = value;
92 }
94 SetFormat(value);
95 return *this;
96 }
98
100
103 inline const Aws::Vector<Aws::Vector<Aws::String>>& GetPartitionKeys() const { return m_partitionKeys; }
104 inline bool PartitionKeysHasBeenSet() const { return m_partitionKeysHasBeenSet; }
105 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
106 void SetPartitionKeys(PartitionKeysT&& value) {
107 m_partitionKeysHasBeenSet = true;
108 m_partitionKeys = std::forward<PartitionKeysT>(value);
109 }
110 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
111 S3HyperDirectTarget& WithPartitionKeys(PartitionKeysT&& value) {
112 SetPartitionKeys(std::forward<PartitionKeysT>(value));
113 return *this;
114 }
115 template <typename PartitionKeysT = Aws::Vector<Aws::String>>
116 S3HyperDirectTarget& AddPartitionKeys(PartitionKeysT&& value) {
117 m_partitionKeysHasBeenSet = true;
118 m_partitionKeys.emplace_back(std::forward<PartitionKeysT>(value));
119 return *this;
120 }
122
124
127 inline const Aws::String& GetPath() const { return m_path; }
128 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
129 template <typename PathT = Aws::String>
130 void SetPath(PathT&& value) {
131 m_pathHasBeenSet = true;
132 m_path = std::forward<PathT>(value);
133 }
134 template <typename PathT = Aws::String>
136 SetPath(std::forward<PathT>(value));
137 return *this;
138 }
140
142
145 inline HyperTargetCompressionType GetCompression() const { return m_compression; }
146 inline bool CompressionHasBeenSet() const { return m_compressionHasBeenSet; }
148 m_compressionHasBeenSet = true;
149 m_compression = value;
150 }
152 SetCompression(value);
153 return *this;
154 }
156
158
161 inline const DirectSchemaChangePolicy& GetSchemaChangePolicy() const { return m_schemaChangePolicy; }
162 inline bool SchemaChangePolicyHasBeenSet() const { return m_schemaChangePolicyHasBeenSet; }
163 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
164 void SetSchemaChangePolicy(SchemaChangePolicyT&& value) {
165 m_schemaChangePolicyHasBeenSet = true;
166 m_schemaChangePolicy = std::forward<SchemaChangePolicyT>(value);
167 }
168 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
169 S3HyperDirectTarget& WithSchemaChangePolicy(SchemaChangePolicyT&& value) {
170 SetSchemaChangePolicy(std::forward<SchemaChangePolicyT>(value));
171 return *this;
172 }
174
176
181 inline const AutoDataQuality& GetAutoDataQuality() const { return m_autoDataQuality; }
182 inline bool AutoDataQualityHasBeenSet() const { return m_autoDataQualityHasBeenSet; }
183 template <typename AutoDataQualityT = AutoDataQuality>
184 void SetAutoDataQuality(AutoDataQualityT&& value) {
185 m_autoDataQualityHasBeenSet = true;
186 m_autoDataQuality = std::forward<AutoDataQualityT>(value);
187 }
188 template <typename AutoDataQualityT = AutoDataQuality>
189 S3HyperDirectTarget& WithAutoDataQuality(AutoDataQualityT&& value) {
190 SetAutoDataQuality(std::forward<AutoDataQualityT>(value));
191 return *this;
192 }
194
196
199 inline const Aws::Vector<GlueSchema>& GetOutputSchemas() const { return m_outputSchemas; }
200 inline bool OutputSchemasHasBeenSet() const { return m_outputSchemasHasBeenSet; }
201 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
202 void SetOutputSchemas(OutputSchemasT&& value) {
203 m_outputSchemasHasBeenSet = true;
204 m_outputSchemas = std::forward<OutputSchemasT>(value);
205 }
206 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
207 S3HyperDirectTarget& WithOutputSchemas(OutputSchemasT&& value) {
208 SetOutputSchemas(std::forward<OutputSchemasT>(value));
209 return *this;
210 }
211 template <typename OutputSchemasT = GlueSchema>
212 S3HyperDirectTarget& AddOutputSchemas(OutputSchemasT&& value) {
213 m_outputSchemasHasBeenSet = true;
214 m_outputSchemas.emplace_back(std::forward<OutputSchemasT>(value));
215 return *this;
216 }
218 private:
219 Aws::String m_name;
220
222
224
226
227 Aws::String m_path;
228
230
231 DirectSchemaChangePolicy m_schemaChangePolicy;
232
233 AutoDataQuality m_autoDataQuality;
234
235 Aws::Vector<GlueSchema> m_outputSchemas;
236 bool m_nameHasBeenSet = false;
237 bool m_inputsHasBeenSet = false;
238 bool m_formatHasBeenSet = false;
239 bool m_partitionKeysHasBeenSet = false;
240 bool m_pathHasBeenSet = false;
241 bool m_compressionHasBeenSet = false;
242 bool m_schemaChangePolicyHasBeenSet = false;
243 bool m_autoDataQualityHasBeenSet = false;
244 bool m_outputSchemasHasBeenSet = false;
245};
246
247} // namespace Model
248} // namespace Glue
249} // namespace Aws
const Aws::Vector< Aws::Vector< Aws::String > > & GetPartitionKeys() const
const Aws::Vector< GlueSchema > & GetOutputSchemas() const
HyperTargetCompressionType GetCompression() const
void SetPartitionKeys(PartitionKeysT &&value)
S3HyperDirectTarget & WithAutoDataQuality(AutoDataQualityT &&value)
S3HyperDirectTarget & AddInputs(InputsT &&value)
S3HyperDirectTarget & WithPath(PathT &&value)
S3HyperDirectTarget & WithPartitionKeys(PartitionKeysT &&value)
const DirectSchemaChangePolicy & GetSchemaChangePolicy() const
S3HyperDirectTarget & WithInputs(InputsT &&value)
AWS_GLUE_API S3HyperDirectTarget & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetInputs() const
AWS_GLUE_API S3HyperDirectTarget(Aws::Utils::Json::JsonView jsonValue)
S3HyperDirectTarget & AddPartitionKeys(PartitionKeysT &&value)
AWS_GLUE_API S3HyperDirectTarget()=default
void SetAutoDataQuality(AutoDataQualityT &&value)
S3HyperDirectTarget & WithName(NameT &&value)
void SetSchemaChangePolicy(SchemaChangePolicyT &&value)
S3HyperDirectTarget & WithSchemaChangePolicy(SchemaChangePolicyT &&value)
void SetOutputSchemas(OutputSchemasT &&value)
S3HyperDirectTarget & WithFormat(TargetFormat value)
void SetCompression(HyperTargetCompressionType value)
const AutoDataQuality & GetAutoDataQuality() const
S3HyperDirectTarget & WithCompression(HyperTargetCompressionType value)
S3HyperDirectTarget & WithOutputSchemas(OutputSchemasT &&value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
S3HyperDirectTarget & AddOutputSchemas(OutputSchemasT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue