AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
IcebergTableUpdate.h
1
6#pragma once
7#include <aws/glue/Glue_EXPORTS.h>
8#include <aws/glue/model/IcebergSchema.h>
9#include <aws/glue/model/IcebergPartitionSpec.h>
10#include <aws/glue/model/IcebergSortOrder.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSMap.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
38 {
39 public:
40 AWS_GLUE_API IcebergTableUpdate() = default;
44
45
47
51 inline const IcebergSchema& GetSchema() const { return m_schema; }
52 inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; }
53 template<typename SchemaT = IcebergSchema>
54 void SetSchema(SchemaT&& value) { m_schemaHasBeenSet = true; m_schema = std::forward<SchemaT>(value); }
55 template<typename SchemaT = IcebergSchema>
56 IcebergTableUpdate& WithSchema(SchemaT&& value) { SetSchema(std::forward<SchemaT>(value)); return *this;}
58
60
64 inline const IcebergPartitionSpec& GetPartitionSpec() const { return m_partitionSpec; }
65 inline bool PartitionSpecHasBeenSet() const { return m_partitionSpecHasBeenSet; }
66 template<typename PartitionSpecT = IcebergPartitionSpec>
67 void SetPartitionSpec(PartitionSpecT&& value) { m_partitionSpecHasBeenSet = true; m_partitionSpec = std::forward<PartitionSpecT>(value); }
68 template<typename PartitionSpecT = IcebergPartitionSpec>
69 IcebergTableUpdate& WithPartitionSpec(PartitionSpecT&& value) { SetPartitionSpec(std::forward<PartitionSpecT>(value)); return *this;}
71
73
77 inline const IcebergSortOrder& GetSortOrder() const { return m_sortOrder; }
78 inline bool SortOrderHasBeenSet() const { return m_sortOrderHasBeenSet; }
79 template<typename SortOrderT = IcebergSortOrder>
80 void SetSortOrder(SortOrderT&& value) { m_sortOrderHasBeenSet = true; m_sortOrder = std::forward<SortOrderT>(value); }
81 template<typename SortOrderT = IcebergSortOrder>
82 IcebergTableUpdate& WithSortOrder(SortOrderT&& value) { SetSortOrder(std::forward<SortOrderT>(value)); return *this;}
84
86
89 inline const Aws::String& GetLocation() const { return m_location; }
90 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; }
91 template<typename LocationT = Aws::String>
92 void SetLocation(LocationT&& value) { m_locationHasBeenSet = true; m_location = std::forward<LocationT>(value); }
93 template<typename LocationT = Aws::String>
94 IcebergTableUpdate& WithLocation(LocationT&& value) { SetLocation(std::forward<LocationT>(value)); return *this;}
96
98
102 inline const Aws::Map<Aws::String, Aws::String>& GetProperties() const { return m_properties; }
103 inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; }
104 template<typename PropertiesT = Aws::Map<Aws::String, Aws::String>>
105 void SetProperties(PropertiesT&& value) { m_propertiesHasBeenSet = true; m_properties = std::forward<PropertiesT>(value); }
106 template<typename PropertiesT = Aws::Map<Aws::String, Aws::String>>
107 IcebergTableUpdate& WithProperties(PropertiesT&& value) { SetProperties(std::forward<PropertiesT>(value)); return *this;}
108 template<typename PropertiesKeyT = Aws::String, typename PropertiesValueT = Aws::String>
109 IcebergTableUpdate& AddProperties(PropertiesKeyT&& key, PropertiesValueT&& value) {
110 m_propertiesHasBeenSet = true; m_properties.emplace(std::forward<PropertiesKeyT>(key), std::forward<PropertiesValueT>(value)); return *this;
111 }
113 private:
114
115 IcebergSchema m_schema;
116 bool m_schemaHasBeenSet = false;
117
118 IcebergPartitionSpec m_partitionSpec;
119 bool m_partitionSpecHasBeenSet = false;
120
121 IcebergSortOrder m_sortOrder;
122 bool m_sortOrderHasBeenSet = false;
123
124 Aws::String m_location;
125 bool m_locationHasBeenSet = false;
126
128 bool m_propertiesHasBeenSet = false;
129 };
130
131} // namespace Model
132} // namespace Glue
133} // namespace Aws
AWS_GLUE_API IcebergTableUpdate()=default
IcebergTableUpdate & WithProperties(PropertiesT &&value)
IcebergTableUpdate & WithSchema(SchemaT &&value)
const IcebergSortOrder & GetSortOrder() const
void SetPartitionSpec(PartitionSpecT &&value)
const Aws::String & GetLocation() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
IcebergTableUpdate & WithSortOrder(SortOrderT &&value)
AWS_GLUE_API IcebergTableUpdate(Aws::Utils::Json::JsonView jsonValue)
IcebergTableUpdate & WithPartitionSpec(PartitionSpecT &&value)
const IcebergSchema & GetSchema() const
const IcebergPartitionSpec & GetPartitionSpec() const
IcebergTableUpdate & WithLocation(LocationT &&value)
void SetProperties(PropertiesT &&value)
const Aws::Map< Aws::String, Aws::String > & GetProperties() const
AWS_GLUE_API IcebergTableUpdate & operator=(Aws::Utils::Json::JsonView jsonValue)
IcebergTableUpdate & AddProperties(PropertiesKeyT &&key, PropertiesValueT &&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
Aws::Utils::Json::JsonValue JsonValue