AWS SDK for C++

AWS SDK for C++ Version 1.11.682

Loading...
Searching...
No Matches
S3GlueParquetTarget.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/ParquetCompressionType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Glue {
24namespace Model {
25
33 public:
34 AWS_GLUE_API S3GlueParquetTarget() = default;
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
51 S3GlueParquetTarget& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<Aws::String>& GetInputs() const { return m_inputs; }
62 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
63 template <typename InputsT = Aws::Vector<Aws::String>>
64 void SetInputs(InputsT&& value) {
65 m_inputsHasBeenSet = true;
66 m_inputs = std::forward<InputsT>(value);
67 }
68 template <typename InputsT = Aws::Vector<Aws::String>>
69 S3GlueParquetTarget& WithInputs(InputsT&& value) {
70 SetInputs(std::forward<InputsT>(value));
71 return *this;
72 }
73 template <typename InputsT = Aws::String>
74 S3GlueParquetTarget& AddInputs(InputsT&& value) {
75 m_inputsHasBeenSet = true;
76 m_inputs.emplace_back(std::forward<InputsT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::Vector<Aws::Vector<Aws::String>>& GetPartitionKeys() const { return m_partitionKeys; }
86 inline bool PartitionKeysHasBeenSet() const { return m_partitionKeysHasBeenSet; }
87 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
88 void SetPartitionKeys(PartitionKeysT&& value) {
89 m_partitionKeysHasBeenSet = true;
90 m_partitionKeys = std::forward<PartitionKeysT>(value);
91 }
92 template <typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
93 S3GlueParquetTarget& WithPartitionKeys(PartitionKeysT&& value) {
94 SetPartitionKeys(std::forward<PartitionKeysT>(value));
95 return *this;
96 }
97 template <typename PartitionKeysT = Aws::Vector<Aws::String>>
98 S3GlueParquetTarget& AddPartitionKeys(PartitionKeysT&& value) {
99 m_partitionKeysHasBeenSet = true;
100 m_partitionKeys.emplace_back(std::forward<PartitionKeysT>(value));
101 return *this;
102 }
104
106
109 inline const Aws::String& GetPath() const { return m_path; }
110 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
111 template <typename PathT = Aws::String>
112 void SetPath(PathT&& value) {
113 m_pathHasBeenSet = true;
114 m_path = std::forward<PathT>(value);
115 }
116 template <typename PathT = Aws::String>
118 SetPath(std::forward<PathT>(value));
119 return *this;
120 }
122
124
129 inline ParquetCompressionType GetCompression() const { return m_compression; }
130 inline bool CompressionHasBeenSet() const { return m_compressionHasBeenSet; }
132 m_compressionHasBeenSet = true;
133 m_compression = value;
134 }
136 SetCompression(value);
137 return *this;
138 }
140
142
146 inline const Aws::String& GetNumberTargetPartitions() const { return m_numberTargetPartitions; }
147 inline bool NumberTargetPartitionsHasBeenSet() const { return m_numberTargetPartitionsHasBeenSet; }
148 template <typename NumberTargetPartitionsT = Aws::String>
149 void SetNumberTargetPartitions(NumberTargetPartitionsT&& value) {
150 m_numberTargetPartitionsHasBeenSet = true;
151 m_numberTargetPartitions = std::forward<NumberTargetPartitionsT>(value);
152 }
153 template <typename NumberTargetPartitionsT = Aws::String>
154 S3GlueParquetTarget& WithNumberTargetPartitions(NumberTargetPartitionsT&& value) {
155 SetNumberTargetPartitions(std::forward<NumberTargetPartitionsT>(value));
156 return *this;
157 }
159
161
164 inline const DirectSchemaChangePolicy& GetSchemaChangePolicy() const { return m_schemaChangePolicy; }
165 inline bool SchemaChangePolicyHasBeenSet() const { return m_schemaChangePolicyHasBeenSet; }
166 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
167 void SetSchemaChangePolicy(SchemaChangePolicyT&& value) {
168 m_schemaChangePolicyHasBeenSet = true;
169 m_schemaChangePolicy = std::forward<SchemaChangePolicyT>(value);
170 }
171 template <typename SchemaChangePolicyT = DirectSchemaChangePolicy>
172 S3GlueParquetTarget& WithSchemaChangePolicy(SchemaChangePolicyT&& value) {
173 SetSchemaChangePolicy(std::forward<SchemaChangePolicyT>(value));
174 return *this;
175 }
177
179
184 inline const AutoDataQuality& GetAutoDataQuality() const { return m_autoDataQuality; }
185 inline bool AutoDataQualityHasBeenSet() const { return m_autoDataQualityHasBeenSet; }
186 template <typename AutoDataQualityT = AutoDataQuality>
187 void SetAutoDataQuality(AutoDataQualityT&& value) {
188 m_autoDataQualityHasBeenSet = true;
189 m_autoDataQuality = std::forward<AutoDataQualityT>(value);
190 }
191 template <typename AutoDataQualityT = AutoDataQuality>
192 S3GlueParquetTarget& WithAutoDataQuality(AutoDataQualityT&& value) {
193 SetAutoDataQuality(std::forward<AutoDataQualityT>(value));
194 return *this;
195 }
197 private:
198 Aws::String m_name;
199 bool m_nameHasBeenSet = false;
200
202 bool m_inputsHasBeenSet = false;
203
205 bool m_partitionKeysHasBeenSet = false;
206
207 Aws::String m_path;
208 bool m_pathHasBeenSet = false;
209
211 bool m_compressionHasBeenSet = false;
212
213 Aws::String m_numberTargetPartitions;
214 bool m_numberTargetPartitionsHasBeenSet = false;
215
216 DirectSchemaChangePolicy m_schemaChangePolicy;
217 bool m_schemaChangePolicyHasBeenSet = false;
218
219 AutoDataQuality m_autoDataQuality;
220 bool m_autoDataQualityHasBeenSet = false;
221};
222
223} // namespace Model
224} // namespace Glue
225} // namespace Aws
AWS_GLUE_API S3GlueParquetTarget(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetNumberTargetPartitions() const
void SetCompression(ParquetCompressionType value)
void SetPartitionKeys(PartitionKeysT &&value)
void SetAutoDataQuality(AutoDataQualityT &&value)
void SetNumberTargetPartitions(NumberTargetPartitionsT &&value)
AWS_GLUE_API S3GlueParquetTarget & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::Vector< Aws::String > > & GetPartitionKeys() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
S3GlueParquetTarget & WithName(NameT &&value)
S3GlueParquetTarget & WithPath(PathT &&value)
void SetSchemaChangePolicy(SchemaChangePolicyT &&value)
S3GlueParquetTarget & WithPartitionKeys(PartitionKeysT &&value)
const AutoDataQuality & GetAutoDataQuality() const
S3GlueParquetTarget & WithInputs(InputsT &&value)
S3GlueParquetTarget & AddInputs(InputsT &&value)
S3GlueParquetTarget & WithNumberTargetPartitions(NumberTargetPartitionsT &&value)
S3GlueParquetTarget & AddPartitionKeys(PartitionKeysT &&value)
S3GlueParquetTarget & WithSchemaChangePolicy(SchemaChangePolicyT &&value)
S3GlueParquetTarget & WithAutoDataQuality(AutoDataQualityT &&value)
const Aws::Vector< Aws::String > & GetInputs() const
ParquetCompressionType GetCompression() const
AWS_GLUE_API S3GlueParquetTarget()=default
const DirectSchemaChangePolicy & GetSchemaChangePolicy() const
S3GlueParquetTarget & WithCompression(ParquetCompressionType 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