AWS SDK for C++

AWS SDK for C++ Version 1.11.635

Loading...
Searching...
No Matches
S3DirectTarget.h
1
6#pragma once
7#include <aws/glue/Glue_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/glue/model/TargetFormat.h>
11#include <aws/glue/model/DirectSchemaChangePolicy.h>
12#include <aws/glue/model/AutoDataQuality.h>
13#include <aws/glue/model/GlueSchema.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Glue
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_GLUE_API S3DirectTarget() = default;
44
45
47
50 inline const Aws::String& GetName() const { return m_name; }
51 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
52 template<typename NameT = Aws::String>
53 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
54 template<typename NameT = Aws::String>
55 S3DirectTarget& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
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) { m_inputsHasBeenSet = true; m_inputs = std::forward<InputsT>(value); }
66 template<typename InputsT = Aws::Vector<Aws::String>>
67 S3DirectTarget& WithInputs(InputsT&& value) { SetInputs(std::forward<InputsT>(value)); return *this;}
68 template<typename InputsT = Aws::String>
69 S3DirectTarget& AddInputs(InputsT&& value) { m_inputsHasBeenSet = true; m_inputs.emplace_back(std::forward<InputsT>(value)); return *this; }
71
73
76 inline const Aws::Vector<Aws::Vector<Aws::String>>& GetPartitionKeys() const { return m_partitionKeys; }
77 inline bool PartitionKeysHasBeenSet() const { return m_partitionKeysHasBeenSet; }
78 template<typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
79 void SetPartitionKeys(PartitionKeysT&& value) { m_partitionKeysHasBeenSet = true; m_partitionKeys = std::forward<PartitionKeysT>(value); }
80 template<typename PartitionKeysT = Aws::Vector<Aws::Vector<Aws::String>>>
81 S3DirectTarget& WithPartitionKeys(PartitionKeysT&& value) { SetPartitionKeys(std::forward<PartitionKeysT>(value)); return *this;}
82 template<typename PartitionKeysT = Aws::Vector<Aws::String>>
83 S3DirectTarget& AddPartitionKeys(PartitionKeysT&& value) { m_partitionKeysHasBeenSet = true; m_partitionKeys.emplace_back(std::forward<PartitionKeysT>(value)); return *this; }
85
87
90 inline const Aws::String& GetPath() const { return m_path; }
91 inline bool PathHasBeenSet() const { return m_pathHasBeenSet; }
92 template<typename PathT = Aws::String>
93 void SetPath(PathT&& value) { m_pathHasBeenSet = true; m_path = std::forward<PathT>(value); }
94 template<typename PathT = Aws::String>
95 S3DirectTarget& WithPath(PathT&& value) { SetPath(std::forward<PathT>(value)); return *this;}
97
99
104 inline const Aws::String& GetCompression() const { return m_compression; }
105 inline bool CompressionHasBeenSet() const { return m_compressionHasBeenSet; }
106 template<typename CompressionT = Aws::String>
107 void SetCompression(CompressionT&& value) { m_compressionHasBeenSet = true; m_compression = std::forward<CompressionT>(value); }
108 template<typename CompressionT = Aws::String>
109 S3DirectTarget& WithCompression(CompressionT&& value) { SetCompression(std::forward<CompressionT>(value)); return *this;}
111
113
117 inline const Aws::String& GetNumberTargetPartitions() const { return m_numberTargetPartitions; }
118 inline bool NumberTargetPartitionsHasBeenSet() const { return m_numberTargetPartitionsHasBeenSet; }
119 template<typename NumberTargetPartitionsT = Aws::String>
120 void SetNumberTargetPartitions(NumberTargetPartitionsT&& value) { m_numberTargetPartitionsHasBeenSet = true; m_numberTargetPartitions = std::forward<NumberTargetPartitionsT>(value); }
121 template<typename NumberTargetPartitionsT = Aws::String>
122 S3DirectTarget& WithNumberTargetPartitions(NumberTargetPartitionsT&& value) { SetNumberTargetPartitions(std::forward<NumberTargetPartitionsT>(value)); return *this;}
124
126
129 inline TargetFormat GetFormat() const { return m_format; }
130 inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
131 inline void SetFormat(TargetFormat value) { m_formatHasBeenSet = true; m_format = value; }
132 inline S3DirectTarget& WithFormat(TargetFormat value) { SetFormat(value); return *this;}
134
136
139 inline const DirectSchemaChangePolicy& GetSchemaChangePolicy() const { return m_schemaChangePolicy; }
140 inline bool SchemaChangePolicyHasBeenSet() const { return m_schemaChangePolicyHasBeenSet; }
141 template<typename SchemaChangePolicyT = DirectSchemaChangePolicy>
142 void SetSchemaChangePolicy(SchemaChangePolicyT&& value) { m_schemaChangePolicyHasBeenSet = true; m_schemaChangePolicy = std::forward<SchemaChangePolicyT>(value); }
143 template<typename SchemaChangePolicyT = DirectSchemaChangePolicy>
144 S3DirectTarget& WithSchemaChangePolicy(SchemaChangePolicyT&& value) { SetSchemaChangePolicy(std::forward<SchemaChangePolicyT>(value)); return *this;}
146
148
153 inline const AutoDataQuality& GetAutoDataQuality() const { return m_autoDataQuality; }
154 inline bool AutoDataQualityHasBeenSet() const { return m_autoDataQualityHasBeenSet; }
155 template<typename AutoDataQualityT = AutoDataQuality>
156 void SetAutoDataQuality(AutoDataQualityT&& value) { m_autoDataQualityHasBeenSet = true; m_autoDataQuality = std::forward<AutoDataQualityT>(value); }
157 template<typename AutoDataQualityT = AutoDataQuality>
158 S3DirectTarget& WithAutoDataQuality(AutoDataQualityT&& value) { SetAutoDataQuality(std::forward<AutoDataQualityT>(value)); return *this;}
160
162
165 inline const Aws::Vector<GlueSchema>& GetOutputSchemas() const { return m_outputSchemas; }
166 inline bool OutputSchemasHasBeenSet() const { return m_outputSchemasHasBeenSet; }
167 template<typename OutputSchemasT = Aws::Vector<GlueSchema>>
168 void SetOutputSchemas(OutputSchemasT&& value) { m_outputSchemasHasBeenSet = true; m_outputSchemas = std::forward<OutputSchemasT>(value); }
169 template<typename OutputSchemasT = Aws::Vector<GlueSchema>>
170 S3DirectTarget& WithOutputSchemas(OutputSchemasT&& value) { SetOutputSchemas(std::forward<OutputSchemasT>(value)); return *this;}
171 template<typename OutputSchemasT = GlueSchema>
172 S3DirectTarget& AddOutputSchemas(OutputSchemasT&& value) { m_outputSchemasHasBeenSet = true; m_outputSchemas.emplace_back(std::forward<OutputSchemasT>(value)); return *this; }
174 private:
175
176 Aws::String m_name;
177 bool m_nameHasBeenSet = false;
178
180 bool m_inputsHasBeenSet = false;
181
183 bool m_partitionKeysHasBeenSet = false;
184
185 Aws::String m_path;
186 bool m_pathHasBeenSet = false;
187
188 Aws::String m_compression;
189 bool m_compressionHasBeenSet = false;
190
191 Aws::String m_numberTargetPartitions;
192 bool m_numberTargetPartitionsHasBeenSet = false;
193
195 bool m_formatHasBeenSet = false;
196
197 DirectSchemaChangePolicy m_schemaChangePolicy;
198 bool m_schemaChangePolicyHasBeenSet = false;
199
200 AutoDataQuality m_autoDataQuality;
201 bool m_autoDataQualityHasBeenSet = false;
202
203 Aws::Vector<GlueSchema> m_outputSchemas;
204 bool m_outputSchemasHasBeenSet = false;
205 };
206
207} // namespace Model
208} // namespace Glue
209} // 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