AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
S3HudiSource.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/glue/Glue_EXPORTS.h>
11#include <aws/glue/model/GlueSchema.h>
12#include <aws/glue/model/S3DirectSourceAdditionalOptions.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 S3HudiSource() = 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 S3HudiSource& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
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) {
65 m_pathsHasBeenSet = true;
66 m_paths = std::forward<PathsT>(value);
67 }
68 template <typename PathsT = Aws::Vector<Aws::String>>
69 S3HudiSource& WithPaths(PathsT&& value) {
70 SetPaths(std::forward<PathsT>(value));
71 return *this;
72 }
73 template <typename PathsT = Aws::String>
74 S3HudiSource& AddPaths(PathsT&& value) {
75 m_pathsHasBeenSet = true;
76 m_paths.emplace_back(std::forward<PathsT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::Map<Aws::String, Aws::String>& GetAdditionalHudiOptions() const { return m_additionalHudiOptions; }
86 inline bool AdditionalHudiOptionsHasBeenSet() const { return m_additionalHudiOptionsHasBeenSet; }
87 template <typename AdditionalHudiOptionsT = Aws::Map<Aws::String, Aws::String>>
88 void SetAdditionalHudiOptions(AdditionalHudiOptionsT&& value) {
89 m_additionalHudiOptionsHasBeenSet = true;
90 m_additionalHudiOptions = std::forward<AdditionalHudiOptionsT>(value);
91 }
92 template <typename AdditionalHudiOptionsT = Aws::Map<Aws::String, Aws::String>>
93 S3HudiSource& WithAdditionalHudiOptions(AdditionalHudiOptionsT&& value) {
94 SetAdditionalHudiOptions(std::forward<AdditionalHudiOptionsT>(value));
95 return *this;
96 }
97 template <typename AdditionalHudiOptionsKeyT = Aws::String, typename AdditionalHudiOptionsValueT = Aws::String>
98 S3HudiSource& AddAdditionalHudiOptions(AdditionalHudiOptionsKeyT&& key, AdditionalHudiOptionsValueT&& value) {
99 m_additionalHudiOptionsHasBeenSet = true;
100 m_additionalHudiOptions.emplace(std::forward<AdditionalHudiOptionsKeyT>(key), std::forward<AdditionalHudiOptionsValueT>(value));
101 return *this;
102 }
104
106
109 inline const S3DirectSourceAdditionalOptions& GetAdditionalOptions() const { return m_additionalOptions; }
110 inline bool AdditionalOptionsHasBeenSet() const { return m_additionalOptionsHasBeenSet; }
111 template <typename AdditionalOptionsT = S3DirectSourceAdditionalOptions>
112 void SetAdditionalOptions(AdditionalOptionsT&& value) {
113 m_additionalOptionsHasBeenSet = true;
114 m_additionalOptions = std::forward<AdditionalOptionsT>(value);
115 }
116 template <typename AdditionalOptionsT = S3DirectSourceAdditionalOptions>
117 S3HudiSource& WithAdditionalOptions(AdditionalOptionsT&& value) {
118 SetAdditionalOptions(std::forward<AdditionalOptionsT>(value));
119 return *this;
120 }
122
124
127 inline const Aws::Vector<GlueSchema>& GetOutputSchemas() const { return m_outputSchemas; }
128 inline bool OutputSchemasHasBeenSet() const { return m_outputSchemasHasBeenSet; }
129 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
130 void SetOutputSchemas(OutputSchemasT&& value) {
131 m_outputSchemasHasBeenSet = true;
132 m_outputSchemas = std::forward<OutputSchemasT>(value);
133 }
134 template <typename OutputSchemasT = Aws::Vector<GlueSchema>>
135 S3HudiSource& WithOutputSchemas(OutputSchemasT&& value) {
136 SetOutputSchemas(std::forward<OutputSchemasT>(value));
137 return *this;
138 }
139 template <typename OutputSchemasT = GlueSchema>
140 S3HudiSource& AddOutputSchemas(OutputSchemasT&& value) {
141 m_outputSchemasHasBeenSet = true;
142 m_outputSchemas.emplace_back(std::forward<OutputSchemasT>(value));
143 return *this;
144 }
146 private:
147 Aws::String m_name;
148
150
151 Aws::Map<Aws::String, Aws::String> m_additionalHudiOptions;
152
153 S3DirectSourceAdditionalOptions m_additionalOptions;
154
155 Aws::Vector<GlueSchema> m_outputSchemas;
156 bool m_nameHasBeenSet = false;
157 bool m_pathsHasBeenSet = false;
158 bool m_additionalHudiOptionsHasBeenSet = false;
159 bool m_additionalOptionsHasBeenSet = false;
160 bool m_outputSchemasHasBeenSet = false;
161};
162
163} // namespace Model
164} // namespace Glue
165} // namespace Aws
const S3DirectSourceAdditionalOptions & GetAdditionalOptions() const
bool AdditionalHudiOptionsHasBeenSet() const
void SetAdditionalHudiOptions(AdditionalHudiOptionsT &&value)
S3HudiSource & WithName(NameT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAdditionalHudiOptions() const
S3HudiSource & AddOutputSchemas(OutputSchemasT &&value)
AWS_GLUE_API S3HudiSource(Aws::Utils::Json::JsonView jsonValue)
void SetPaths(PathsT &&value)
void SetOutputSchemas(OutputSchemasT &&value)
S3HudiSource & AddAdditionalHudiOptions(AdditionalHudiOptionsKeyT &&key, AdditionalHudiOptionsValueT &&value)
const Aws::Vector< Aws::String > & GetPaths() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GLUE_API S3HudiSource & operator=(Aws::Utils::Json::JsonView jsonValue)
S3HudiSource & AddPaths(PathsT &&value)
void SetName(NameT &&value)
void SetAdditionalOptions(AdditionalOptionsT &&value)
AWS_GLUE_API S3HudiSource()=default
S3HudiSource & WithAdditionalHudiOptions(AdditionalHudiOptionsT &&value)
S3HudiSource & WithPaths(PathsT &&value)
const Aws::String & GetName() const
S3HudiSource & WithAdditionalOptions(AdditionalOptionsT &&value)
S3HudiSource & WithOutputSchemas(OutputSchemasT &&value)
const Aws::Vector< GlueSchema > & GetOutputSchemas() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue