AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
UpdateRuleRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/rbin/RecycleBinRequest.h>
10#include <aws/rbin/RecycleBin_EXPORTS.h>
11#include <aws/rbin/model/ResourceTag.h>
12#include <aws/rbin/model/ResourceType.h>
13#include <aws/rbin/model/RetentionPeriod.h>
14
15#include <utility>
16
17namespace Aws {
18namespace RecycleBin {
19namespace Model {
20
24 public:
25 AWS_RECYCLEBIN_API UpdateRuleRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "UpdateRule"; }
32
33 AWS_RECYCLEBIN_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetIdentifier() const { return m_identifier; }
40 inline bool IdentifierHasBeenSet() const { return m_identifierHasBeenSet; }
41 template <typename IdentifierT = Aws::String>
42 void SetIdentifier(IdentifierT&& value) {
43 m_identifierHasBeenSet = true;
44 m_identifier = std::forward<IdentifierT>(value);
45 }
46 template <typename IdentifierT = Aws::String>
47 UpdateRuleRequest& WithIdentifier(IdentifierT&& value) {
48 SetIdentifier(std::forward<IdentifierT>(value));
49 return *this;
50 }
52
54
58 inline const RetentionPeriod& GetRetentionPeriod() const { return m_retentionPeriod; }
59 inline bool RetentionPeriodHasBeenSet() const { return m_retentionPeriodHasBeenSet; }
60 template <typename RetentionPeriodT = RetentionPeriod>
61 void SetRetentionPeriod(RetentionPeriodT&& value) {
62 m_retentionPeriodHasBeenSet = true;
63 m_retentionPeriod = std::forward<RetentionPeriodT>(value);
64 }
65 template <typename RetentionPeriodT = RetentionPeriod>
66 UpdateRuleRequest& WithRetentionPeriod(RetentionPeriodT&& value) {
67 SetRetentionPeriod(std::forward<RetentionPeriodT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::String& GetDescription() const { return m_description; }
77 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
78 template <typename DescriptionT = Aws::String>
79 void SetDescription(DescriptionT&& value) {
80 m_descriptionHasBeenSet = true;
81 m_description = std::forward<DescriptionT>(value);
82 }
83 template <typename DescriptionT = Aws::String>
84 UpdateRuleRequest& WithDescription(DescriptionT&& value) {
85 SetDescription(std::forward<DescriptionT>(value));
86 return *this;
87 }
89
91
95 inline ResourceType GetResourceType() const { return m_resourceType; }
96 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
97 inline void SetResourceType(ResourceType value) {
98 m_resourceTypeHasBeenSet = true;
99 m_resourceType = value;
100 }
102 SetResourceType(value);
103 return *this;
104 }
106
108
122 inline const Aws::Vector<ResourceTag>& GetResourceTags() const { return m_resourceTags; }
123 inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; }
124 template <typename ResourceTagsT = Aws::Vector<ResourceTag>>
125 void SetResourceTags(ResourceTagsT&& value) {
126 m_resourceTagsHasBeenSet = true;
127 m_resourceTags = std::forward<ResourceTagsT>(value);
128 }
129 template <typename ResourceTagsT = Aws::Vector<ResourceTag>>
130 UpdateRuleRequest& WithResourceTags(ResourceTagsT&& value) {
131 SetResourceTags(std::forward<ResourceTagsT>(value));
132 return *this;
133 }
134 template <typename ResourceTagsT = ResourceTag>
135 UpdateRuleRequest& AddResourceTags(ResourceTagsT&& value) {
136 m_resourceTagsHasBeenSet = true;
137 m_resourceTags.emplace_back(std::forward<ResourceTagsT>(value));
138 return *this;
139 }
141
143
150 inline const Aws::Vector<ResourceTag>& GetExcludeResourceTags() const { return m_excludeResourceTags; }
151 inline bool ExcludeResourceTagsHasBeenSet() const { return m_excludeResourceTagsHasBeenSet; }
152 template <typename ExcludeResourceTagsT = Aws::Vector<ResourceTag>>
153 void SetExcludeResourceTags(ExcludeResourceTagsT&& value) {
154 m_excludeResourceTagsHasBeenSet = true;
155 m_excludeResourceTags = std::forward<ExcludeResourceTagsT>(value);
156 }
157 template <typename ExcludeResourceTagsT = Aws::Vector<ResourceTag>>
158 UpdateRuleRequest& WithExcludeResourceTags(ExcludeResourceTagsT&& value) {
159 SetExcludeResourceTags(std::forward<ExcludeResourceTagsT>(value));
160 return *this;
161 }
162 template <typename ExcludeResourceTagsT = ResourceTag>
163 UpdateRuleRequest& AddExcludeResourceTags(ExcludeResourceTagsT&& value) {
164 m_excludeResourceTagsHasBeenSet = true;
165 m_excludeResourceTags.emplace_back(std::forward<ExcludeResourceTagsT>(value));
166 return *this;
167 }
169 private:
170 Aws::String m_identifier;
171
172 RetentionPeriod m_retentionPeriod;
173
174 Aws::String m_description;
175
176 ResourceType m_resourceType{ResourceType::NOT_SET};
177
178 Aws::Vector<ResourceTag> m_resourceTags;
179
180 Aws::Vector<ResourceTag> m_excludeResourceTags;
181 bool m_identifierHasBeenSet = false;
182 bool m_retentionPeriodHasBeenSet = false;
183 bool m_descriptionHasBeenSet = false;
184 bool m_resourceTypeHasBeenSet = false;
185 bool m_resourceTagsHasBeenSet = false;
186 bool m_excludeResourceTagsHasBeenSet = false;
187};
188
189} // namespace Model
190} // namespace RecycleBin
191} // namespace Aws
UpdateRuleRequest & WithRetentionPeriod(RetentionPeriodT &&value)
AWS_RECYCLEBIN_API UpdateRuleRequest()=default
const Aws::Vector< ResourceTag > & GetExcludeResourceTags() const
UpdateRuleRequest & WithResourceType(ResourceType value)
const RetentionPeriod & GetRetentionPeriod() const
void SetRetentionPeriod(RetentionPeriodT &&value)
const Aws::String & GetIdentifier() const
UpdateRuleRequest & WithExcludeResourceTags(ExcludeResourceTagsT &&value)
UpdateRuleRequest & WithIdentifier(IdentifierT &&value)
AWS_RECYCLEBIN_API Aws::String SerializePayload() const override
UpdateRuleRequest & WithDescription(DescriptionT &&value)
const Aws::String & GetDescription() const
virtual const char * GetServiceRequestName() const override
void SetExcludeResourceTags(ExcludeResourceTagsT &&value)
UpdateRuleRequest & AddExcludeResourceTags(ExcludeResourceTagsT &&value)
void SetResourceTags(ResourceTagsT &&value)
UpdateRuleRequest & AddResourceTags(ResourceTagsT &&value)
const Aws::Vector< ResourceTag > & GetResourceTags() const
UpdateRuleRequest & WithResourceTags(ResourceTagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector