AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
TableMaintenanceSettings.h
1
6#pragma once
7#include <aws/s3tables/S3Tables_EXPORTS.h>
8#include <aws/s3tables/model/IcebergCompactionSettings.h>
9#include <aws/s3tables/model/IcebergSnapshotManagementSettings.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace S3Tables {
21namespace Model {
22
30 public:
31 AWS_S3TABLES_API TableMaintenanceSettings() = default;
34 AWS_S3TABLES_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const IcebergCompactionSettings& GetIcebergCompaction() const { return m_icebergCompaction; }
41 inline bool IcebergCompactionHasBeenSet() const { return m_icebergCompactionHasBeenSet; }
42 template <typename IcebergCompactionT = IcebergCompactionSettings>
43 void SetIcebergCompaction(IcebergCompactionT&& value) {
44 m_icebergCompactionHasBeenSet = true;
45 m_icebergCompaction = std::forward<IcebergCompactionT>(value);
46 }
47 template <typename IcebergCompactionT = IcebergCompactionSettings>
48 TableMaintenanceSettings& WithIcebergCompaction(IcebergCompactionT&& value) {
49 SetIcebergCompaction(std::forward<IcebergCompactionT>(value));
50 return *this;
51 }
53
55
59 inline const IcebergSnapshotManagementSettings& GetIcebergSnapshotManagement() const { return m_icebergSnapshotManagement; }
60 inline bool IcebergSnapshotManagementHasBeenSet() const { return m_icebergSnapshotManagementHasBeenSet; }
61 template <typename IcebergSnapshotManagementT = IcebergSnapshotManagementSettings>
62 void SetIcebergSnapshotManagement(IcebergSnapshotManagementT&& value) {
63 m_icebergSnapshotManagementHasBeenSet = true;
64 m_icebergSnapshotManagement = std::forward<IcebergSnapshotManagementT>(value);
65 }
66 template <typename IcebergSnapshotManagementT = IcebergSnapshotManagementSettings>
67 TableMaintenanceSettings& WithIcebergSnapshotManagement(IcebergSnapshotManagementT&& value) {
68 SetIcebergSnapshotManagement(std::forward<IcebergSnapshotManagementT>(value));
69 return *this;
70 }
72 private:
73 IcebergCompactionSettings m_icebergCompaction;
74
75 IcebergSnapshotManagementSettings m_icebergSnapshotManagement;
76 bool m_icebergCompactionHasBeenSet = false;
77 bool m_icebergSnapshotManagementHasBeenSet = false;
78};
79
80} // namespace Model
81} // namespace S3Tables
82} // namespace Aws
AWS_S3TABLES_API TableMaintenanceSettings()=default
AWS_S3TABLES_API TableMaintenanceSettings(Aws::Utils::Json::JsonView jsonValue)
TableMaintenanceSettings & WithIcebergSnapshotManagement(IcebergSnapshotManagementT &&value)
AWS_S3TABLES_API Aws::Utils::Json::JsonValue Jsonize() const
void SetIcebergSnapshotManagement(IcebergSnapshotManagementT &&value)
const IcebergSnapshotManagementSettings & GetIcebergSnapshotManagement() const
AWS_S3TABLES_API TableMaintenanceSettings & operator=(Aws::Utils::Json::JsonView jsonValue)
TableMaintenanceSettings & WithIcebergCompaction(IcebergCompactionT &&value)
const IcebergCompactionSettings & GetIcebergCompaction() const
Aws::Utils::Json::JsonValue JsonValue