AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
S3JsonSource.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/CompressionType.h>
11#include <aws/glue/model/S3DirectSourceAdditionalOptions.h>
12#include <aws/glue/model/GlueSchema.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Glue
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_GLUE_API S3JsonSource() = default;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 S3JsonSource& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
61 inline const Aws::Vector<Aws::String>& GetPaths() const { return m_paths; }
62 inline bool PathsHasBeenSet() const { return m_pathsHasBeenSet; }
63 template<typename PathsT = Aws::Vector<Aws::String>>
64 void SetPaths(PathsT&& value) { m_pathsHasBeenSet = true; m_paths = std::forward<PathsT>(value); }
65 template<typename PathsT = Aws::Vector<Aws::String>>
66 S3JsonSource& WithPaths(PathsT&& value) { SetPaths(std::forward<PathsT>(value)); return *this;}
67 template<typename PathsT = Aws::String>
68 S3JsonSource& AddPaths(PathsT&& value) { m_pathsHasBeenSet = true; m_paths.emplace_back(std::forward<PathsT>(value)); return *this; }
70
72
77 inline CompressionType GetCompressionType() const { return m_compressionType; }
78 inline bool CompressionTypeHasBeenSet() const { return m_compressionTypeHasBeenSet; }
79 inline void SetCompressionType(CompressionType value) { m_compressionTypeHasBeenSet = true; m_compressionType = value; }
82
84
88 inline const Aws::Vector<Aws::String>& GetExclusions() const { return m_exclusions; }
89 inline bool ExclusionsHasBeenSet() const { return m_exclusionsHasBeenSet; }
90 template<typename ExclusionsT = Aws::Vector<Aws::String>>
91 void SetExclusions(ExclusionsT&& value) { m_exclusionsHasBeenSet = true; m_exclusions = std::forward<ExclusionsT>(value); }
92 template<typename ExclusionsT = Aws::Vector<Aws::String>>
93 S3JsonSource& WithExclusions(ExclusionsT&& value) { SetExclusions(std::forward<ExclusionsT>(value)); return *this;}
94 template<typename ExclusionsT = Aws::String>
95 S3JsonSource& AddExclusions(ExclusionsT&& value) { m_exclusionsHasBeenSet = true; m_exclusions.emplace_back(std::forward<ExclusionsT>(value)); return *this; }
97
99
105 inline const Aws::String& GetGroupSize() const { return m_groupSize; }
106 inline bool GroupSizeHasBeenSet() const { return m_groupSizeHasBeenSet; }
107 template<typename GroupSizeT = Aws::String>
108 void SetGroupSize(GroupSizeT&& value) { m_groupSizeHasBeenSet = true; m_groupSize = std::forward<GroupSizeT>(value); }
109 template<typename GroupSizeT = Aws::String>
110 S3JsonSource& WithGroupSize(GroupSizeT&& value) { SetGroupSize(std::forward<GroupSizeT>(value)); return *this;}
112
114
120 inline const Aws::String& GetGroupFiles() const { return m_groupFiles; }
121 inline bool GroupFilesHasBeenSet() const { return m_groupFilesHasBeenSet; }
122 template<typename GroupFilesT = Aws::String>
123 void SetGroupFiles(GroupFilesT&& value) { m_groupFilesHasBeenSet = true; m_groupFiles = std::forward<GroupFilesT>(value); }
124 template<typename GroupFilesT = Aws::String>
125 S3JsonSource& WithGroupFiles(GroupFilesT&& value) { SetGroupFiles(std::forward<GroupFilesT>(value)); return *this;}
127
129
133 inline bool GetRecurse() const { return m_recurse; }
134 inline bool RecurseHasBeenSet() const { return m_recurseHasBeenSet; }
135 inline void SetRecurse(bool value) { m_recurseHasBeenSet = true; m_recurse = value; }
136 inline S3JsonSource& WithRecurse(bool value) { SetRecurse(value); return *this;}
138
140
147 inline int GetMaxBand() const { return m_maxBand; }
148 inline bool MaxBandHasBeenSet() const { return m_maxBandHasBeenSet; }
149 inline void SetMaxBand(int value) { m_maxBandHasBeenSet = true; m_maxBand = value; }
150 inline S3JsonSource& WithMaxBand(int value) { SetMaxBand(value); return *this;}
152
154
159 inline int GetMaxFilesInBand() const { return m_maxFilesInBand; }
160 inline bool MaxFilesInBandHasBeenSet() const { return m_maxFilesInBandHasBeenSet; }
161 inline void SetMaxFilesInBand(int value) { m_maxFilesInBandHasBeenSet = true; m_maxFilesInBand = value; }
162 inline S3JsonSource& WithMaxFilesInBand(int value) { SetMaxFilesInBand(value); return *this;}
164
166
169 inline const S3DirectSourceAdditionalOptions& GetAdditionalOptions() const { return m_additionalOptions; }
170 inline bool AdditionalOptionsHasBeenSet() const { return m_additionalOptionsHasBeenSet; }
171 template<typename AdditionalOptionsT = S3DirectSourceAdditionalOptions>
172 void SetAdditionalOptions(AdditionalOptionsT&& value) { m_additionalOptionsHasBeenSet = true; m_additionalOptions = std::forward<AdditionalOptionsT>(value); }
173 template<typename AdditionalOptionsT = S3DirectSourceAdditionalOptions>
174 S3JsonSource& WithAdditionalOptions(AdditionalOptionsT&& value) { SetAdditionalOptions(std::forward<AdditionalOptionsT>(value)); return *this;}
176
178
181 inline const Aws::String& GetJsonPath() const { return m_jsonPath; }
182 inline bool JsonPathHasBeenSet() const { return m_jsonPathHasBeenSet; }
183 template<typename JsonPathT = Aws::String>
184 void SetJsonPath(JsonPathT&& value) { m_jsonPathHasBeenSet = true; m_jsonPath = std::forward<JsonPathT>(value); }
185 template<typename JsonPathT = Aws::String>
186 S3JsonSource& WithJsonPath(JsonPathT&& value) { SetJsonPath(std::forward<JsonPathT>(value)); return *this;}
188
190
197 inline bool GetMultiline() const { return m_multiline; }
198 inline bool MultilineHasBeenSet() const { return m_multilineHasBeenSet; }
199 inline void SetMultiline(bool value) { m_multilineHasBeenSet = true; m_multiline = value; }
200 inline S3JsonSource& WithMultiline(bool value) { SetMultiline(value); return *this;}
202
204
207 inline const Aws::Vector<GlueSchema>& GetOutputSchemas() const { return m_outputSchemas; }
208 inline bool OutputSchemasHasBeenSet() const { return m_outputSchemasHasBeenSet; }
209 template<typename OutputSchemasT = Aws::Vector<GlueSchema>>
210 void SetOutputSchemas(OutputSchemasT&& value) { m_outputSchemasHasBeenSet = true; m_outputSchemas = std::forward<OutputSchemasT>(value); }
211 template<typename OutputSchemasT = Aws::Vector<GlueSchema>>
212 S3JsonSource& WithOutputSchemas(OutputSchemasT&& value) { SetOutputSchemas(std::forward<OutputSchemasT>(value)); return *this;}
213 template<typename OutputSchemasT = GlueSchema>
214 S3JsonSource& AddOutputSchemas(OutputSchemasT&& value) { m_outputSchemasHasBeenSet = true; m_outputSchemas.emplace_back(std::forward<OutputSchemasT>(value)); return *this; }
216 private:
217
218 Aws::String m_name;
219 bool m_nameHasBeenSet = false;
220
222 bool m_pathsHasBeenSet = false;
223
224 CompressionType m_compressionType{CompressionType::NOT_SET};
225 bool m_compressionTypeHasBeenSet = false;
226
227 Aws::Vector<Aws::String> m_exclusions;
228 bool m_exclusionsHasBeenSet = false;
229
230 Aws::String m_groupSize;
231 bool m_groupSizeHasBeenSet = false;
232
233 Aws::String m_groupFiles;
234 bool m_groupFilesHasBeenSet = false;
235
236 bool m_recurse{false};
237 bool m_recurseHasBeenSet = false;
238
239 int m_maxBand{0};
240 bool m_maxBandHasBeenSet = false;
241
242 int m_maxFilesInBand{0};
243 bool m_maxFilesInBandHasBeenSet = false;
244
245 S3DirectSourceAdditionalOptions m_additionalOptions;
246 bool m_additionalOptionsHasBeenSet = false;
247
248 Aws::String m_jsonPath;
249 bool m_jsonPathHasBeenSet = false;
250
251 bool m_multiline{false};
252 bool m_multilineHasBeenSet = false;
253
254 Aws::Vector<GlueSchema> m_outputSchemas;
255 bool m_outputSchemasHasBeenSet = false;
256 };
257
258} // namespace Model
259} // namespace Glue
260} // namespace Aws
const S3DirectSourceAdditionalOptions & GetAdditionalOptions() const
void SetGroupSize(GroupSizeT &&value)
S3JsonSource & WithGroupFiles(GroupFilesT &&value)
const Aws::String & GetGroupSize() const
S3JsonSource & WithMaxFilesInBand(int value)
S3JsonSource & WithGroupSize(GroupSizeT &&value)
void SetGroupFiles(GroupFilesT &&value)
S3JsonSource & WithMultiline(bool value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetName() const
void SetAdditionalOptions(AdditionalOptionsT &&value)
const Aws::Vector< GlueSchema > & GetOutputSchemas() const
const Aws::Vector< Aws::String > & GetPaths() const
void SetJsonPath(JsonPathT &&value)
AWS_GLUE_API S3JsonSource(Aws::Utils::Json::JsonView jsonValue)
void SetOutputSchemas(OutputSchemasT &&value)
S3JsonSource & WithOutputSchemas(OutputSchemasT &&value)
AWS_GLUE_API S3JsonSource & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetPaths(PathsT &&value)
AWS_GLUE_API S3JsonSource()=default
S3JsonSource & AddOutputSchemas(OutputSchemasT &&value)
S3JsonSource & AddPaths(PathsT &&value)
void SetName(NameT &&value)
const Aws::Vector< Aws::String > & GetExclusions() const
CompressionType GetCompressionType() const
S3JsonSource & WithJsonPath(JsonPathT &&value)
const Aws::String & GetJsonPath() const
S3JsonSource & WithExclusions(ExclusionsT &&value)
S3JsonSource & WithPaths(PathsT &&value)
S3JsonSource & WithAdditionalOptions(AdditionalOptionsT &&value)
S3JsonSource & AddExclusions(ExclusionsT &&value)
void SetCompressionType(CompressionType value)
void SetExclusions(ExclusionsT &&value)
S3JsonSource & WithCompressionType(CompressionType value)
S3JsonSource & WithRecurse(bool value)
const Aws::String & GetGroupFiles() const
S3JsonSource & WithName(NameT &&value)
S3JsonSource & WithMaxBand(int 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