AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
StorageDescriptor.h
1
6#pragma once
7#include <aws/glue/Glue_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/glue/model/SerDeInfo.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/glue/model/SkewedInfo.h>
13#include <aws/glue/model/SchemaReference.h>
14#include <aws/glue/model/Column.h>
15#include <aws/glue/model/Order.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace Glue
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_GLUE_API StorageDescriptor() = default;
45
46
48
51 inline const Aws::Vector<Column>& GetColumns() const { return m_columns; }
52 inline bool ColumnsHasBeenSet() const { return m_columnsHasBeenSet; }
53 template<typename ColumnsT = Aws::Vector<Column>>
54 void SetColumns(ColumnsT&& value) { m_columnsHasBeenSet = true; m_columns = std::forward<ColumnsT>(value); }
55 template<typename ColumnsT = Aws::Vector<Column>>
56 StorageDescriptor& WithColumns(ColumnsT&& value) { SetColumns(std::forward<ColumnsT>(value)); return *this;}
57 template<typename ColumnsT = Column>
58 StorageDescriptor& AddColumns(ColumnsT&& value) { m_columnsHasBeenSet = true; m_columns.emplace_back(std::forward<ColumnsT>(value)); return *this; }
60
62
67 inline const Aws::String& GetLocation() const { return m_location; }
68 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
69 template<typename LocationT = Aws::String>
70 void SetLocation(LocationT&& value) { m_locationHasBeenSet = true; m_location = std::forward<LocationT>(value); }
71 template<typename LocationT = Aws::String>
72 StorageDescriptor& WithLocation(LocationT&& value) { SetLocation(std::forward<LocationT>(value)); return *this;}
74
76
80 inline const Aws::Vector<Aws::String>& GetAdditionalLocations() const { return m_additionalLocations; }
81 inline bool AdditionalLocationsHasBeenSet() const { return m_additionalLocationsHasBeenSet; }
82 template<typename AdditionalLocationsT = Aws::Vector<Aws::String>>
83 void SetAdditionalLocations(AdditionalLocationsT&& value) { m_additionalLocationsHasBeenSet = true; m_additionalLocations = std::forward<AdditionalLocationsT>(value); }
84 template<typename AdditionalLocationsT = Aws::Vector<Aws::String>>
85 StorageDescriptor& WithAdditionalLocations(AdditionalLocationsT&& value) { SetAdditionalLocations(std::forward<AdditionalLocationsT>(value)); return *this;}
86 template<typename AdditionalLocationsT = Aws::String>
87 StorageDescriptor& AddAdditionalLocations(AdditionalLocationsT&& value) { m_additionalLocationsHasBeenSet = true; m_additionalLocations.emplace_back(std::forward<AdditionalLocationsT>(value)); return *this; }
89
91
95 inline const Aws::String& GetInputFormat() const { return m_inputFormat; }
96 inline bool InputFormatHasBeenSet() const { return m_inputFormatHasBeenSet; }
97 template<typename InputFormatT = Aws::String>
98 void SetInputFormat(InputFormatT&& value) { m_inputFormatHasBeenSet = true; m_inputFormat = std::forward<InputFormatT>(value); }
99 template<typename InputFormatT = Aws::String>
100 StorageDescriptor& WithInputFormat(InputFormatT&& value) { SetInputFormat(std::forward<InputFormatT>(value)); return *this;}
102
104
108 inline const Aws::String& GetOutputFormat() const { return m_outputFormat; }
109 inline bool OutputFormatHasBeenSet() const { return m_outputFormatHasBeenSet; }
110 template<typename OutputFormatT = Aws::String>
111 void SetOutputFormat(OutputFormatT&& value) { m_outputFormatHasBeenSet = true; m_outputFormat = std::forward<OutputFormatT>(value); }
112 template<typename OutputFormatT = Aws::String>
113 StorageDescriptor& WithOutputFormat(OutputFormatT&& value) { SetOutputFormat(std::forward<OutputFormatT>(value)); return *this;}
115
117
121 inline bool GetCompressed() const { return m_compressed; }
122 inline bool CompressedHasBeenSet() const { return m_compressedHasBeenSet; }
123 inline void SetCompressed(bool value) { m_compressedHasBeenSet = true; m_compressed = value; }
124 inline StorageDescriptor& WithCompressed(bool value) { SetCompressed(value); return *this;}
126
128
131 inline int GetNumberOfBuckets() const { return m_numberOfBuckets; }
132 inline bool NumberOfBucketsHasBeenSet() const { return m_numberOfBucketsHasBeenSet; }
133 inline void SetNumberOfBuckets(int value) { m_numberOfBucketsHasBeenSet = true; m_numberOfBuckets = value; }
134 inline StorageDescriptor& WithNumberOfBuckets(int value) { SetNumberOfBuckets(value); return *this;}
136
138
141 inline const SerDeInfo& GetSerdeInfo() const { return m_serdeInfo; }
142 inline bool SerdeInfoHasBeenSet() const { return m_serdeInfoHasBeenSet; }
143 template<typename SerdeInfoT = SerDeInfo>
144 void SetSerdeInfo(SerdeInfoT&& value) { m_serdeInfoHasBeenSet = true; m_serdeInfo = std::forward<SerdeInfoT>(value); }
145 template<typename SerdeInfoT = SerDeInfo>
146 StorageDescriptor& WithSerdeInfo(SerdeInfoT&& value) { SetSerdeInfo(std::forward<SerdeInfoT>(value)); return *this;}
148
150
154 inline const Aws::Vector<Aws::String>& GetBucketColumns() const { return m_bucketColumns; }
155 inline bool BucketColumnsHasBeenSet() const { return m_bucketColumnsHasBeenSet; }
156 template<typename BucketColumnsT = Aws::Vector<Aws::String>>
157 void SetBucketColumns(BucketColumnsT&& value) { m_bucketColumnsHasBeenSet = true; m_bucketColumns = std::forward<BucketColumnsT>(value); }
158 template<typename BucketColumnsT = Aws::Vector<Aws::String>>
159 StorageDescriptor& WithBucketColumns(BucketColumnsT&& value) { SetBucketColumns(std::forward<BucketColumnsT>(value)); return *this;}
160 template<typename BucketColumnsT = Aws::String>
161 StorageDescriptor& AddBucketColumns(BucketColumnsT&& value) { m_bucketColumnsHasBeenSet = true; m_bucketColumns.emplace_back(std::forward<BucketColumnsT>(value)); return *this; }
163
165
168 inline const Aws::Vector<Order>& GetSortColumns() const { return m_sortColumns; }
169 inline bool SortColumnsHasBeenSet() const { return m_sortColumnsHasBeenSet; }
170 template<typename SortColumnsT = Aws::Vector<Order>>
171 void SetSortColumns(SortColumnsT&& value) { m_sortColumnsHasBeenSet = true; m_sortColumns = std::forward<SortColumnsT>(value); }
172 template<typename SortColumnsT = Aws::Vector<Order>>
173 StorageDescriptor& WithSortColumns(SortColumnsT&& value) { SetSortColumns(std::forward<SortColumnsT>(value)); return *this;}
174 template<typename SortColumnsT = Order>
175 StorageDescriptor& AddSortColumns(SortColumnsT&& value) { m_sortColumnsHasBeenSet = true; m_sortColumns.emplace_back(std::forward<SortColumnsT>(value)); return *this; }
177
179
182 inline const Aws::Map<Aws::String, Aws::String>& GetParameters() const { return m_parameters; }
183 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; }
184 template<typename ParametersT = Aws::Map<Aws::String, Aws::String>>
185 void SetParameters(ParametersT&& value) { m_parametersHasBeenSet = true; m_parameters = std::forward<ParametersT>(value); }
186 template<typename ParametersT = Aws::Map<Aws::String, Aws::String>>
187 StorageDescriptor& WithParameters(ParametersT&& value) { SetParameters(std::forward<ParametersT>(value)); return *this;}
188 template<typename ParametersKeyT = Aws::String, typename ParametersValueT = Aws::String>
189 StorageDescriptor& AddParameters(ParametersKeyT&& key, ParametersValueT&& value) {
190 m_parametersHasBeenSet = true; m_parameters.emplace(std::forward<ParametersKeyT>(key), std::forward<ParametersValueT>(value)); return *this;
191 }
193
195
199 inline const SkewedInfo& GetSkewedInfo() const { return m_skewedInfo; }
200 inline bool SkewedInfoHasBeenSet() const { return m_skewedInfoHasBeenSet; }
201 template<typename SkewedInfoT = SkewedInfo>
202 void SetSkewedInfo(SkewedInfoT&& value) { m_skewedInfoHasBeenSet = true; m_skewedInfo = std::forward<SkewedInfoT>(value); }
203 template<typename SkewedInfoT = SkewedInfo>
204 StorageDescriptor& WithSkewedInfo(SkewedInfoT&& value) { SetSkewedInfo(std::forward<SkewedInfoT>(value)); return *this;}
206
208
212 inline bool GetStoredAsSubDirectories() const { return m_storedAsSubDirectories; }
213 inline bool StoredAsSubDirectoriesHasBeenSet() const { return m_storedAsSubDirectoriesHasBeenSet; }
214 inline void SetStoredAsSubDirectories(bool value) { m_storedAsSubDirectoriesHasBeenSet = true; m_storedAsSubDirectories = value; }
215 inline StorageDescriptor& WithStoredAsSubDirectories(bool value) { SetStoredAsSubDirectories(value); return *this;}
217
219
224 inline const SchemaReference& GetSchemaReference() const { return m_schemaReference; }
225 inline bool SchemaReferenceHasBeenSet() const { return m_schemaReferenceHasBeenSet; }
226 template<typename SchemaReferenceT = SchemaReference>
227 void SetSchemaReference(SchemaReferenceT&& value) { m_schemaReferenceHasBeenSet = true; m_schemaReference = std::forward<SchemaReferenceT>(value); }
228 template<typename SchemaReferenceT = SchemaReference>
229 StorageDescriptor& WithSchemaReference(SchemaReferenceT&& value) { SetSchemaReference(std::forward<SchemaReferenceT>(value)); return *this;}
231 private:
232
233 Aws::Vector<Column> m_columns;
234 bool m_columnsHasBeenSet = false;
235
236 Aws::String m_location;
237 bool m_locationHasBeenSet = false;
238
239 Aws::Vector<Aws::String> m_additionalLocations;
240 bool m_additionalLocationsHasBeenSet = false;
241
242 Aws::String m_inputFormat;
243 bool m_inputFormatHasBeenSet = false;
244
245 Aws::String m_outputFormat;
246 bool m_outputFormatHasBeenSet = false;
247
248 bool m_compressed{false};
249 bool m_compressedHasBeenSet = false;
250
251 int m_numberOfBuckets{0};
252 bool m_numberOfBucketsHasBeenSet = false;
253
254 SerDeInfo m_serdeInfo;
255 bool m_serdeInfoHasBeenSet = false;
256
257 Aws::Vector<Aws::String> m_bucketColumns;
258 bool m_bucketColumnsHasBeenSet = false;
259
260 Aws::Vector<Order> m_sortColumns;
261 bool m_sortColumnsHasBeenSet = false;
262
264 bool m_parametersHasBeenSet = false;
265
266 SkewedInfo m_skewedInfo;
267 bool m_skewedInfoHasBeenSet = false;
268
269 bool m_storedAsSubDirectories{false};
270 bool m_storedAsSubDirectoriesHasBeenSet = false;
271
272 SchemaReference m_schemaReference;
273 bool m_schemaReferenceHasBeenSet = false;
274 };
275
276} // namespace Model
277} // namespace Glue
278} // namespace Aws
StorageDescriptor & WithSortColumns(SortColumnsT &&value)
const Aws::String & GetInputFormat() const
const Aws::Vector< Aws::String > & GetAdditionalLocations() const
StorageDescriptor & WithSchemaReference(SchemaReferenceT &&value)
void SetSerdeInfo(SerdeInfoT &&value)
AWS_GLUE_API StorageDescriptor(Aws::Utils::Json::JsonView jsonValue)
StorageDescriptor & AddParameters(ParametersKeyT &&key, ParametersValueT &&value)
const Aws::String & GetLocation() const
StorageDescriptor & WithNumberOfBuckets(int value)
StorageDescriptor & WithSkewedInfo(SkewedInfoT &&value)
void SetInputFormat(InputFormatT &&value)
void SetParameters(ParametersT &&value)
StorageDescriptor & WithInputFormat(InputFormatT &&value)
StorageDescriptor & WithStoredAsSubDirectories(bool value)
StorageDescriptor & WithBucketColumns(BucketColumnsT &&value)
const Aws::Vector< Order > & GetSortColumns() const
StorageDescriptor & WithLocation(LocationT &&value)
const Aws::Vector< Aws::String > & GetBucketColumns() const
StorageDescriptor & AddBucketColumns(BucketColumnsT &&value)
StorageDescriptor & AddAdditionalLocations(AdditionalLocationsT &&value)
AWS_GLUE_API StorageDescriptor & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Map< Aws::String, Aws::String > & GetParameters() const
StorageDescriptor & WithAdditionalLocations(AdditionalLocationsT &&value)
void SetSortColumns(SortColumnsT &&value)
void SetSchemaReference(SchemaReferenceT &&value)
const SkewedInfo & GetSkewedInfo() const
const SerDeInfo & GetSerdeInfo() const
StorageDescriptor & AddSortColumns(SortColumnsT &&value)
const SchemaReference & GetSchemaReference() const
StorageDescriptor & WithParameters(ParametersT &&value)
StorageDescriptor & WithColumns(ColumnsT &&value)
const Aws::Vector< Column > & GetColumns() const
void SetSkewedInfo(SkewedInfoT &&value)
AWS_GLUE_API StorageDescriptor()=default
void SetOutputFormat(OutputFormatT &&value)
const Aws::String & GetOutputFormat() const
StorageDescriptor & WithCompressed(bool value)
StorageDescriptor & WithOutputFormat(OutputFormatT &&value)
StorageDescriptor & WithSerdeInfo(SerdeInfoT &&value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
void SetBucketColumns(BucketColumnsT &&value)
void SetAdditionalLocations(AdditionalLocationsT &&value)
StorageDescriptor & AddColumns(ColumnsT &&value)
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