AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateIcebergTableInput.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/glue/Glue_EXPORTS.h>
10#include <aws/glue/model/IcebergPartitionSpec.h>
11#include <aws/glue/model/IcebergSchema.h>
12#include <aws/glue/model/IcebergSortOrder.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
34 public:
35 AWS_GLUE_API CreateIcebergTableInput() = default;
39
41
44 inline const Aws::String& GetLocation() const { return m_location; }
45 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
46 template <typename LocationT = Aws::String>
47 void SetLocation(LocationT&& value) {
48 m_locationHasBeenSet = true;
49 m_location = std::forward<LocationT>(value);
50 }
51 template <typename LocationT = Aws::String>
53 SetLocation(std::forward<LocationT>(value));
54 return *this;
55 }
57
59
63 inline const IcebergSchema& GetSchema() const { return m_schema; }
64 inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; }
65 template <typename SchemaT = IcebergSchema>
66 void SetSchema(SchemaT&& value) {
67 m_schemaHasBeenSet = true;
68 m_schema = std::forward<SchemaT>(value);
69 }
70 template <typename SchemaT = IcebergSchema>
72 SetSchema(std::forward<SchemaT>(value));
73 return *this;
74 }
76
78
82 inline const IcebergPartitionSpec& GetPartitionSpec() const { return m_partitionSpec; }
83 inline bool PartitionSpecHasBeenSet() const { return m_partitionSpecHasBeenSet; }
84 template <typename PartitionSpecT = IcebergPartitionSpec>
85 void SetPartitionSpec(PartitionSpecT&& value) {
86 m_partitionSpecHasBeenSet = true;
87 m_partitionSpec = std::forward<PartitionSpecT>(value);
88 }
89 template <typename PartitionSpecT = IcebergPartitionSpec>
90 CreateIcebergTableInput& WithPartitionSpec(PartitionSpecT&& value) {
91 SetPartitionSpec(std::forward<PartitionSpecT>(value));
92 return *this;
93 }
95
97
101 inline const IcebergSortOrder& GetWriteOrder() const { return m_writeOrder; }
102 inline bool WriteOrderHasBeenSet() const { return m_writeOrderHasBeenSet; }
103 template <typename WriteOrderT = IcebergSortOrder>
104 void SetWriteOrder(WriteOrderT&& value) {
105 m_writeOrderHasBeenSet = true;
106 m_writeOrder = std::forward<WriteOrderT>(value);
107 }
108 template <typename WriteOrderT = IcebergSortOrder>
110 SetWriteOrder(std::forward<WriteOrderT>(value));
111 return *this;
112 }
114
116
120 inline const Aws::Map<Aws::String, Aws::String>& GetProperties() const { return m_properties; }
121 inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; }
122 template <typename PropertiesT = Aws::Map<Aws::String, Aws::String>>
123 void SetProperties(PropertiesT&& value) {
124 m_propertiesHasBeenSet = true;
125 m_properties = std::forward<PropertiesT>(value);
126 }
127 template <typename PropertiesT = Aws::Map<Aws::String, Aws::String>>
129 SetProperties(std::forward<PropertiesT>(value));
130 return *this;
131 }
132 template <typename PropertiesKeyT = Aws::String, typename PropertiesValueT = Aws::String>
133 CreateIcebergTableInput& AddProperties(PropertiesKeyT&& key, PropertiesValueT&& value) {
134 m_propertiesHasBeenSet = true;
135 m_properties.emplace(std::forward<PropertiesKeyT>(key), std::forward<PropertiesValueT>(value));
136 return *this;
137 }
139 private:
140 Aws::String m_location;
141
142 IcebergSchema m_schema;
143
144 IcebergPartitionSpec m_partitionSpec;
145
146 IcebergSortOrder m_writeOrder;
147
149 bool m_locationHasBeenSet = false;
150 bool m_schemaHasBeenSet = false;
151 bool m_partitionSpecHasBeenSet = false;
152 bool m_writeOrderHasBeenSet = false;
153 bool m_propertiesHasBeenSet = false;
154};
155
156} // namespace Model
157} // namespace Glue
158} // namespace Aws
AWS_GLUE_API CreateIcebergTableInput & operator=(Aws::Utils::Json::JsonView jsonValue)
CreateIcebergTableInput & WithLocation(LocationT &&value)
CreateIcebergTableInput & AddProperties(PropertiesKeyT &&key, PropertiesValueT &&value)
AWS_GLUE_API CreateIcebergTableInput()=default
CreateIcebergTableInput & WithSchema(SchemaT &&value)
const Aws::Map< Aws::String, Aws::String > & GetProperties() const
AWS_GLUE_API CreateIcebergTableInput(Aws::Utils::Json::JsonView jsonValue)
CreateIcebergTableInput & WithWriteOrder(WriteOrderT &&value)
const IcebergPartitionSpec & GetPartitionSpec() const
CreateIcebergTableInput & WithPartitionSpec(PartitionSpecT &&value)
const IcebergSortOrder & GetWriteOrder() const
CreateIcebergTableInput & WithProperties(PropertiesT &&value)
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() 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
Aws::Utils::Json::JsonValue JsonValue