7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/rbin/RecycleBin_EXPORTS.h>
11#include <aws/rbin/model/LockConfiguration.h>
12#include <aws/rbin/model/LockState.h>
13#include <aws/rbin/model/ResourceTag.h>
14#include <aws/rbin/model/ResourceType.h>
15#include <aws/rbin/model/RetentionPeriod.h>
16#include <aws/rbin/model/RuleStatus.h>
21template <
typename RESULT_TYPE>
22class AmazonWebServiceResult;
42 template <
typename IdentifierT = Aws::String>
44 m_identifierHasBeenSet =
true;
45 m_identifier = std::forward<IdentifierT>(value);
47 template <
typename IdentifierT = Aws::String>
59 template <
typename DescriptionT = Aws::String>
61 m_descriptionHasBeenSet =
true;
62 m_description = std::forward<DescriptionT>(value);
64 template <
typename DescriptionT = Aws::String>
77 m_resourceTypeHasBeenSet =
true;
78 m_resourceType = value;
92 template <
typename RetentionPeriodT = RetentionPeriod>
94 m_retentionPeriodHasBeenSet =
true;
95 m_retentionPeriod = std::forward<RetentionPeriodT>(value);
97 template <
typename RetentionPeriodT = RetentionPeriod>
110 template <
typename ResourceTagsT = Aws::Vector<ResourceTag>>
112 m_resourceTagsHasBeenSet =
true;
113 m_resourceTags = std::forward<ResourceTagsT>(value);
115 template <
typename ResourceTagsT = Aws::Vector<ResourceTag>>
120 template <
typename ResourceTagsT = ResourceTag>
122 m_resourceTagsHasBeenSet =
true;
123 m_resourceTags.emplace_back(std::forward<ResourceTagsT>(value));
135 m_statusHasBeenSet =
true;
149 template <
typename LockConfigurationT = LockConfiguration>
151 m_lockConfigurationHasBeenSet =
true;
152 m_lockConfiguration = std::forward<LockConfigurationT>(value);
154 template <
typename LockConfigurationT = LockConfiguration>
177 m_lockStateHasBeenSet =
true;
193 template <
typename LockEndTimeT = Aws::Utils::DateTime>
195 m_lockEndTimeHasBeenSet =
true;
196 m_lockEndTime = std::forward<LockEndTimeT>(value);
198 template <
typename LockEndTimeT = Aws::Utils::DateTime>
210 template <
typename RuleArnT = Aws::String>
212 m_ruleArnHasBeenSet =
true;
213 m_ruleArn = std::forward<RuleArnT>(value);
215 template <
typename RuleArnT = Aws::String>
229 template <
typename ExcludeResourceTagsT = Aws::Vector<ResourceTag>>
231 m_excludeResourceTagsHasBeenSet =
true;
232 m_excludeResourceTags = std::forward<ExcludeResourceTagsT>(value);
234 template <
typename ExcludeResourceTagsT = Aws::Vector<ResourceTag>>
239 template <
typename ExcludeResourceTagsT = ResourceTag>
241 m_excludeResourceTagsHasBeenSet =
true;
242 m_excludeResourceTags.emplace_back(std::forward<ExcludeResourceTagsT>(value));
250 template <
typename RequestIdT = Aws::String>
252 m_requestIdHasBeenSet =
true;
253 m_requestId = std::forward<RequestIdT>(value);
255 template <
typename RequestIdT = Aws::String>
268 RetentionPeriod m_retentionPeriod;
274 LockConfiguration m_lockConfiguration;
285 bool m_identifierHasBeenSet =
false;
286 bool m_descriptionHasBeenSet =
false;
287 bool m_resourceTypeHasBeenSet =
false;
288 bool m_retentionPeriodHasBeenSet =
false;
289 bool m_resourceTagsHasBeenSet =
false;
290 bool m_statusHasBeenSet =
false;
291 bool m_lockConfigurationHasBeenSet =
false;
292 bool m_lockStateHasBeenSet =
false;
293 bool m_lockEndTimeHasBeenSet =
false;
294 bool m_ruleArnHasBeenSet =
false;
295 bool m_excludeResourceTagsHasBeenSet =
false;
296 bool m_requestIdHasBeenSet =
false;
RuleStatus GetStatus() const
GetRuleResult & WithStatus(RuleStatus value)
const Aws::String & GetRequestId() const
void SetLockState(LockState value)
GetRuleResult & WithRetentionPeriod(RetentionPeriodT &&value)
LockState GetLockState() const
GetRuleResult & WithIdentifier(IdentifierT &&value)
GetRuleResult & WithResourceType(ResourceType value)
const Aws::String & GetDescription() const
GetRuleResult & WithResourceTags(ResourceTagsT &&value)
AWS_RECYCLEBIN_API GetRuleResult(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
void SetResourceType(ResourceType value)
GetRuleResult & WithLockEndTime(LockEndTimeT &&value)
const Aws::String & GetRuleArn() const
const Aws::Vector< ResourceTag > & GetExcludeResourceTags() const
AWS_RECYCLEBIN_API GetRuleResult()=default
GetRuleResult & WithLockConfiguration(LockConfigurationT &&value)
void SetLockEndTime(LockEndTimeT &&value)
void SetResourceTags(ResourceTagsT &&value)
GetRuleResult & WithRuleArn(RuleArnT &&value)
void SetLockConfiguration(LockConfigurationT &&value)
AWS_RECYCLEBIN_API GetRuleResult & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Json::JsonValue > &result)
const Aws::String & GetIdentifier() const
GetRuleResult & AddResourceTags(ResourceTagsT &&value)
GetRuleResult & AddExcludeResourceTags(ExcludeResourceTagsT &&value)
void SetDescription(DescriptionT &&value)
const LockConfiguration & GetLockConfiguration() const
const Aws::Utils::DateTime & GetLockEndTime() const
ResourceType GetResourceType() const
GetRuleResult & WithRequestId(RequestIdT &&value)
void SetIdentifier(IdentifierT &&value)
GetRuleResult & WithDescription(DescriptionT &&value)
void SetExcludeResourceTags(ExcludeResourceTagsT &&value)
const Aws::Vector< ResourceTag > & GetResourceTags() const
GetRuleResult & WithExcludeResourceTags(ExcludeResourceTagsT &&value)
void SetRequestId(RequestIdT &&value)
const RetentionPeriod & GetRetentionPeriod() const
void SetRuleArn(RuleArnT &&value)
void SetStatus(RuleStatus value)
void SetRetentionPeriod(RetentionPeriodT &&value)
GetRuleResult & WithLockState(LockState value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue