AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
EffectiveLifecyclePolicyDetail.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/opensearchserverless/OpenSearchServerless_EXPORTS.h>
9#include <aws/opensearchserverless/model/LifecyclePolicyType.h>
10#include <aws/opensearchserverless/model/ResourceType.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace OpenSearchServerless {
22namespace Model {
23
31 public:
32 AWS_OPENSEARCHSERVERLESS_API EffectiveLifecyclePolicyDetail() = default;
33 AWS_OPENSEARCHSERVERLESS_API EffectiveLifecyclePolicyDetail(Aws::Utils::Json::JsonView jsonValue);
35 AWS_OPENSEARCHSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline LifecyclePolicyType GetType() const { return m_type; }
42 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
43 inline void SetType(LifecyclePolicyType value) {
44 m_typeHasBeenSet = true;
45 m_type = value;
46 }
48 SetType(value);
49 return *this;
50 }
52
54
57 inline const Aws::String& GetResource() const { return m_resource; }
58 inline bool ResourceHasBeenSet() const { return m_resourceHasBeenSet; }
59 template <typename ResourceT = Aws::String>
60 void SetResource(ResourceT&& value) {
61 m_resourceHasBeenSet = true;
62 m_resource = std::forward<ResourceT>(value);
63 }
64 template <typename ResourceT = Aws::String>
66 SetResource(std::forward<ResourceT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::String& GetPolicyName() const { return m_policyName; }
76 inline bool PolicyNameHasBeenSet() const { return m_policyNameHasBeenSet; }
77 template <typename PolicyNameT = Aws::String>
78 void SetPolicyName(PolicyNameT&& value) {
79 m_policyNameHasBeenSet = true;
80 m_policyName = std::forward<PolicyNameT>(value);
81 }
82 template <typename PolicyNameT = Aws::String>
84 SetPolicyName(std::forward<PolicyNameT>(value));
85 return *this;
86 }
88
90
94 inline ResourceType GetResourceType() const { return m_resourceType; }
95 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
96 inline void SetResourceType(ResourceType value) {
97 m_resourceTypeHasBeenSet = true;
98 m_resourceType = value;
99 }
101 SetResourceType(value);
102 return *this;
103 }
105
107
111 inline const Aws::String& GetRetentionPeriod() const { return m_retentionPeriod; }
112 inline bool RetentionPeriodHasBeenSet() const { return m_retentionPeriodHasBeenSet; }
113 template <typename RetentionPeriodT = Aws::String>
114 void SetRetentionPeriod(RetentionPeriodT&& value) {
115 m_retentionPeriodHasBeenSet = true;
116 m_retentionPeriod = std::forward<RetentionPeriodT>(value);
117 }
118 template <typename RetentionPeriodT = Aws::String>
120 SetRetentionPeriod(std::forward<RetentionPeriodT>(value));
121 return *this;
122 }
124
126
131 inline bool GetNoMinRetentionPeriod() const { return m_noMinRetentionPeriod; }
132 inline bool NoMinRetentionPeriodHasBeenSet() const { return m_noMinRetentionPeriodHasBeenSet; }
133 inline void SetNoMinRetentionPeriod(bool value) {
134 m_noMinRetentionPeriodHasBeenSet = true;
135 m_noMinRetentionPeriod = value;
136 }
139 return *this;
140 }
142 private:
144
145 Aws::String m_resource;
146
147 Aws::String m_policyName;
148
149 ResourceType m_resourceType{ResourceType::NOT_SET};
150
151 Aws::String m_retentionPeriod;
152
153 bool m_noMinRetentionPeriod{false};
154 bool m_typeHasBeenSet = false;
155 bool m_resourceHasBeenSet = false;
156 bool m_policyNameHasBeenSet = false;
157 bool m_resourceTypeHasBeenSet = false;
158 bool m_retentionPeriodHasBeenSet = false;
159 bool m_noMinRetentionPeriodHasBeenSet = false;
160};
161
162} // namespace Model
163} // namespace OpenSearchServerless
164} // namespace Aws
EffectiveLifecyclePolicyDetail & WithResourceType(ResourceType value)
EffectiveLifecyclePolicyDetail & WithRetentionPeriod(RetentionPeriodT &&value)
AWS_OPENSEARCHSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_OPENSEARCHSERVERLESS_API EffectiveLifecyclePolicyDetail()=default
AWS_OPENSEARCHSERVERLESS_API EffectiveLifecyclePolicyDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
EffectiveLifecyclePolicyDetail & WithPolicyName(PolicyNameT &&value)
AWS_OPENSEARCHSERVERLESS_API EffectiveLifecyclePolicyDetail(Aws::Utils::Json::JsonView jsonValue)
EffectiveLifecyclePolicyDetail & WithType(LifecyclePolicyType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue