AWS SDK for C++

AWS SDK for C++ Version 1.11.758

Loading...
Searching...
No Matches
BackupPlan.h
1
6#pragma once
7#include <aws/backup/Backup_EXPORTS.h>
8#include <aws/backup/model/AdvancedBackupSetting.h>
9#include <aws/backup/model/BackupRule.h>
10#include <aws/backup/model/ScanSetting.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Backup {
24namespace Model {
25
35 public:
36 AWS_BACKUP_API BackupPlan() = default;
37 AWS_BACKUP_API BackupPlan(Aws::Utils::Json::JsonView jsonValue);
39 AWS_BACKUP_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
48 inline const Aws::String& GetBackupPlanName() const { return m_backupPlanName; }
49 inline bool BackupPlanNameHasBeenSet() const { return m_backupPlanNameHasBeenSet; }
50 template <typename BackupPlanNameT = Aws::String>
51 void SetBackupPlanName(BackupPlanNameT&& value) {
52 m_backupPlanNameHasBeenSet = true;
53 m_backupPlanName = std::forward<BackupPlanNameT>(value);
54 }
55 template <typename BackupPlanNameT = Aws::String>
56 BackupPlan& WithBackupPlanName(BackupPlanNameT&& value) {
57 SetBackupPlanName(std::forward<BackupPlanNameT>(value));
58 return *this;
59 }
61
63
67 inline const Aws::Vector<BackupRule>& GetRules() const { return m_rules; }
68 inline bool RulesHasBeenSet() const { return m_rulesHasBeenSet; }
69 template <typename RulesT = Aws::Vector<BackupRule>>
70 void SetRules(RulesT&& value) {
71 m_rulesHasBeenSet = true;
72 m_rules = std::forward<RulesT>(value);
73 }
74 template <typename RulesT = Aws::Vector<BackupRule>>
75 BackupPlan& WithRules(RulesT&& value) {
76 SetRules(std::forward<RulesT>(value));
77 return *this;
78 }
79 template <typename RulesT = BackupRule>
80 BackupPlan& AddRules(RulesT&& value) {
81 m_rulesHasBeenSet = true;
82 m_rules.emplace_back(std::forward<RulesT>(value));
83 return *this;
84 }
86
88
91 inline const Aws::Vector<AdvancedBackupSetting>& GetAdvancedBackupSettings() const { return m_advancedBackupSettings; }
92 inline bool AdvancedBackupSettingsHasBeenSet() const { return m_advancedBackupSettingsHasBeenSet; }
93 template <typename AdvancedBackupSettingsT = Aws::Vector<AdvancedBackupSetting>>
94 void SetAdvancedBackupSettings(AdvancedBackupSettingsT&& value) {
95 m_advancedBackupSettingsHasBeenSet = true;
96 m_advancedBackupSettings = std::forward<AdvancedBackupSettingsT>(value);
97 }
98 template <typename AdvancedBackupSettingsT = Aws::Vector<AdvancedBackupSetting>>
99 BackupPlan& WithAdvancedBackupSettings(AdvancedBackupSettingsT&& value) {
100 SetAdvancedBackupSettings(std::forward<AdvancedBackupSettingsT>(value));
101 return *this;
102 }
103 template <typename AdvancedBackupSettingsT = AdvancedBackupSetting>
104 BackupPlan& AddAdvancedBackupSettings(AdvancedBackupSettingsT&& value) {
105 m_advancedBackupSettingsHasBeenSet = true;
106 m_advancedBackupSettings.emplace_back(std::forward<AdvancedBackupSettingsT>(value));
107 return *this;
108 }
110
112
116 inline const Aws::Vector<ScanSetting>& GetScanSettings() const { return m_scanSettings; }
117 inline bool ScanSettingsHasBeenSet() const { return m_scanSettingsHasBeenSet; }
118 template <typename ScanSettingsT = Aws::Vector<ScanSetting>>
119 void SetScanSettings(ScanSettingsT&& value) {
120 m_scanSettingsHasBeenSet = true;
121 m_scanSettings = std::forward<ScanSettingsT>(value);
122 }
123 template <typename ScanSettingsT = Aws::Vector<ScanSetting>>
124 BackupPlan& WithScanSettings(ScanSettingsT&& value) {
125 SetScanSettings(std::forward<ScanSettingsT>(value));
126 return *this;
127 }
128 template <typename ScanSettingsT = ScanSetting>
129 BackupPlan& AddScanSettings(ScanSettingsT&& value) {
130 m_scanSettingsHasBeenSet = true;
131 m_scanSettings.emplace_back(std::forward<ScanSettingsT>(value));
132 return *this;
133 }
135 private:
136 Aws::String m_backupPlanName;
137
139
140 Aws::Vector<AdvancedBackupSetting> m_advancedBackupSettings;
141
142 Aws::Vector<ScanSetting> m_scanSettings;
143 bool m_backupPlanNameHasBeenSet = false;
144 bool m_rulesHasBeenSet = false;
145 bool m_advancedBackupSettingsHasBeenSet = false;
146 bool m_scanSettingsHasBeenSet = false;
147};
148
149} // namespace Model
150} // namespace Backup
151} // namespace Aws
BackupPlan & WithAdvancedBackupSettings(AdvancedBackupSettingsT &&value)
Definition BackupPlan.h:99
BackupPlan & WithRules(RulesT &&value)
Definition BackupPlan.h:75
BackupPlan & AddAdvancedBackupSettings(AdvancedBackupSettingsT &&value)
Definition BackupPlan.h:104
AWS_BACKUP_API BackupPlan()=default
bool AdvancedBackupSettingsHasBeenSet() const
Definition BackupPlan.h:92
void SetScanSettings(ScanSettingsT &&value)
Definition BackupPlan.h:119
AWS_BACKUP_API BackupPlan(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetBackupPlanName() const
Definition BackupPlan.h:48
const Aws::Vector< AdvancedBackupSetting > & GetAdvancedBackupSettings() const
Definition BackupPlan.h:91
BackupPlan & WithScanSettings(ScanSettingsT &&value)
Definition BackupPlan.h:124
AWS_BACKUP_API BackupPlan & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetRules(RulesT &&value)
Definition BackupPlan.h:70
void SetAdvancedBackupSettings(AdvancedBackupSettingsT &&value)
Definition BackupPlan.h:94
BackupPlan & WithBackupPlanName(BackupPlanNameT &&value)
Definition BackupPlan.h:56
AWS_BACKUP_API Aws::Utils::Json::JsonValue Jsonize() const
BackupPlan & AddRules(RulesT &&value)
Definition BackupPlan.h:80
bool BackupPlanNameHasBeenSet() const
Definition BackupPlan.h:49
const Aws::Vector< BackupRule > & GetRules() const
Definition BackupPlan.h:67
void SetBackupPlanName(BackupPlanNameT &&value)
Definition BackupPlan.h:51
const Aws::Vector< ScanSetting > & GetScanSettings() const
Definition BackupPlan.h:116
BackupPlan & AddScanSettings(ScanSettingsT &&value)
Definition BackupPlan.h:129
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue