AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
IcebergOptimizationProperties.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
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace Glue {
21namespace Model {
22
31 public:
32 AWS_GLUE_API IcebergOptimizationProperties() = default;
36
38
42 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
43 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
44 template <typename RoleArnT = Aws::String>
45 void SetRoleArn(RoleArnT&& value) {
46 m_roleArnHasBeenSet = true;
47 m_roleArn = std::forward<RoleArnT>(value);
48 }
49 template <typename RoleArnT = Aws::String>
51 SetRoleArn(std::forward<RoleArnT>(value));
52 return *this;
53 }
55
57
62 inline const Aws::Map<Aws::String, Aws::String>& GetCompaction() const { return m_compaction; }
63 inline bool CompactionHasBeenSet() const { return m_compactionHasBeenSet; }
64 template <typename CompactionT = Aws::Map<Aws::String, Aws::String>>
65 void SetCompaction(CompactionT&& value) {
66 m_compactionHasBeenSet = true;
67 m_compaction = std::forward<CompactionT>(value);
68 }
69 template <typename CompactionT = Aws::Map<Aws::String, Aws::String>>
71 SetCompaction(std::forward<CompactionT>(value));
72 return *this;
73 }
74 template <typename CompactionKeyT = Aws::String, typename CompactionValueT = Aws::String>
75 IcebergOptimizationProperties& AddCompaction(CompactionKeyT&& key, CompactionValueT&& value) {
76 m_compactionHasBeenSet = true;
77 m_compaction.emplace(std::forward<CompactionKeyT>(key), std::forward<CompactionValueT>(value));
78 return *this;
79 }
81
83
88 inline const Aws::Map<Aws::String, Aws::String>& GetRetention() const { return m_retention; }
89 inline bool RetentionHasBeenSet() const { return m_retentionHasBeenSet; }
90 template <typename RetentionT = Aws::Map<Aws::String, Aws::String>>
91 void SetRetention(RetentionT&& value) {
92 m_retentionHasBeenSet = true;
93 m_retention = std::forward<RetentionT>(value);
94 }
95 template <typename RetentionT = Aws::Map<Aws::String, Aws::String>>
97 SetRetention(std::forward<RetentionT>(value));
98 return *this;
99 }
100 template <typename RetentionKeyT = Aws::String, typename RetentionValueT = Aws::String>
101 IcebergOptimizationProperties& AddRetention(RetentionKeyT&& key, RetentionValueT&& value) {
102 m_retentionHasBeenSet = true;
103 m_retention.emplace(std::forward<RetentionKeyT>(key), std::forward<RetentionValueT>(value));
104 return *this;
105 }
107
109
114 inline const Aws::Map<Aws::String, Aws::String>& GetOrphanFileDeletion() const { return m_orphanFileDeletion; }
115 inline bool OrphanFileDeletionHasBeenSet() const { return m_orphanFileDeletionHasBeenSet; }
116 template <typename OrphanFileDeletionT = Aws::Map<Aws::String, Aws::String>>
117 void SetOrphanFileDeletion(OrphanFileDeletionT&& value) {
118 m_orphanFileDeletionHasBeenSet = true;
119 m_orphanFileDeletion = std::forward<OrphanFileDeletionT>(value);
120 }
121 template <typename OrphanFileDeletionT = Aws::Map<Aws::String, Aws::String>>
123 SetOrphanFileDeletion(std::forward<OrphanFileDeletionT>(value));
124 return *this;
125 }
126 template <typename OrphanFileDeletionKeyT = Aws::String, typename OrphanFileDeletionValueT = Aws::String>
127 IcebergOptimizationProperties& AddOrphanFileDeletion(OrphanFileDeletionKeyT&& key, OrphanFileDeletionValueT&& value) {
128 m_orphanFileDeletionHasBeenSet = true;
129 m_orphanFileDeletion.emplace(std::forward<OrphanFileDeletionKeyT>(key), std::forward<OrphanFileDeletionValueT>(value));
130 return *this;
131 }
133 private:
134 Aws::String m_roleArn;
135
137
139
140 Aws::Map<Aws::String, Aws::String> m_orphanFileDeletion;
141 bool m_roleArnHasBeenSet = false;
142 bool m_compactionHasBeenSet = false;
143 bool m_retentionHasBeenSet = false;
144 bool m_orphanFileDeletionHasBeenSet = false;
145};
146
147} // namespace Model
148} // namespace Glue
149} // namespace Aws
const Aws::Map< Aws::String, Aws::String > & GetOrphanFileDeletion() const
AWS_GLUE_API Aws::Utils::Json::JsonValue Jsonize() const
IcebergOptimizationProperties & AddRetention(RetentionKeyT &&key, RetentionValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetCompaction() const
IcebergOptimizationProperties & AddOrphanFileDeletion(OrphanFileDeletionKeyT &&key, OrphanFileDeletionValueT &&value)
IcebergOptimizationProperties & AddCompaction(CompactionKeyT &&key, CompactionValueT &&value)
AWS_GLUE_API IcebergOptimizationProperties(Aws::Utils::Json::JsonView jsonValue)
IcebergOptimizationProperties & WithRetention(RetentionT &&value)
IcebergOptimizationProperties & WithRoleArn(RoleArnT &&value)
IcebergOptimizationProperties & WithCompaction(CompactionT &&value)
IcebergOptimizationProperties & WithOrphanFileDeletion(OrphanFileDeletionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetRetention() const
AWS_GLUE_API IcebergOptimizationProperties()=default
AWS_GLUE_API IcebergOptimizationProperties & operator=(Aws::Utils::Json::JsonView jsonValue)
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