AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
LifecycleHookSpecification.h
1
6#pragma once
7#include <aws/autoscaling/AutoScaling_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Xml {
16class XmlNode;
17} // namespace Xml
18} // namespace Utils
19namespace AutoScaling {
20namespace Model {
21
32 public:
33 AWS_AUTOSCALING_API LifecycleHookSpecification() = default;
34 AWS_AUTOSCALING_API LifecycleHookSpecification(const Aws::Utils::Xml::XmlNode& xmlNode);
36
37 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
38 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
39
41
44 inline const Aws::String& GetLifecycleHookName() const { return m_lifecycleHookName; }
45 inline bool LifecycleHookNameHasBeenSet() const { return m_lifecycleHookNameHasBeenSet; }
46 template <typename LifecycleHookNameT = Aws::String>
47 void SetLifecycleHookName(LifecycleHookNameT&& value) {
48 m_lifecycleHookNameHasBeenSet = true;
49 m_lifecycleHookName = std::forward<LifecycleHookNameT>(value);
50 }
51 template <typename LifecycleHookNameT = Aws::String>
53 SetLifecycleHookName(std::forward<LifecycleHookNameT>(value));
54 return *this;
55 }
57
59
66 inline const Aws::String& GetLifecycleTransition() const { return m_lifecycleTransition; }
67 inline bool LifecycleTransitionHasBeenSet() const { return m_lifecycleTransitionHasBeenSet; }
68 template <typename LifecycleTransitionT = Aws::String>
69 void SetLifecycleTransition(LifecycleTransitionT&& value) {
70 m_lifecycleTransitionHasBeenSet = true;
71 m_lifecycleTransition = std::forward<LifecycleTransitionT>(value);
72 }
73 template <typename LifecycleTransitionT = Aws::String>
74 LifecycleHookSpecification& WithLifecycleTransition(LifecycleTransitionT&& value) {
75 SetLifecycleTransition(std::forward<LifecycleTransitionT>(value));
76 return *this;
77 }
79
81
85 inline const Aws::String& GetNotificationMetadata() const { return m_notificationMetadata; }
86 inline bool NotificationMetadataHasBeenSet() const { return m_notificationMetadataHasBeenSet; }
87 template <typename NotificationMetadataT = Aws::String>
88 void SetNotificationMetadata(NotificationMetadataT&& value) {
89 m_notificationMetadataHasBeenSet = true;
90 m_notificationMetadata = std::forward<NotificationMetadataT>(value);
91 }
92 template <typename NotificationMetadataT = Aws::String>
93 LifecycleHookSpecification& WithNotificationMetadata(NotificationMetadataT&& value) {
94 SetNotificationMetadata(std::forward<NotificationMetadataT>(value));
95 return *this;
96 }
98
100
105 inline int GetHeartbeatTimeout() const { return m_heartbeatTimeout; }
106 inline bool HeartbeatTimeoutHasBeenSet() const { return m_heartbeatTimeoutHasBeenSet; }
107 inline void SetHeartbeatTimeout(int value) {
108 m_heartbeatTimeoutHasBeenSet = true;
109 m_heartbeatTimeout = value;
110 }
112 SetHeartbeatTimeout(value);
113 return *this;
114 }
116
118
124 inline const Aws::String& GetDefaultResult() const { return m_defaultResult; }
125 inline bool DefaultResultHasBeenSet() const { return m_defaultResultHasBeenSet; }
126 template <typename DefaultResultT = Aws::String>
127 void SetDefaultResult(DefaultResultT&& value) {
128 m_defaultResultHasBeenSet = true;
129 m_defaultResult = std::forward<DefaultResultT>(value);
130 }
131 template <typename DefaultResultT = Aws::String>
133 SetDefaultResult(std::forward<DefaultResultT>(value));
134 return *this;
135 }
137
139
144 inline const Aws::String& GetNotificationTargetARN() const { return m_notificationTargetARN; }
145 inline bool NotificationTargetARNHasBeenSet() const { return m_notificationTargetARNHasBeenSet; }
146 template <typename NotificationTargetARNT = Aws::String>
147 void SetNotificationTargetARN(NotificationTargetARNT&& value) {
148 m_notificationTargetARNHasBeenSet = true;
149 m_notificationTargetARN = std::forward<NotificationTargetARNT>(value);
150 }
151 template <typename NotificationTargetARNT = Aws::String>
152 LifecycleHookSpecification& WithNotificationTargetARN(NotificationTargetARNT&& value) {
153 SetNotificationTargetARN(std::forward<NotificationTargetARNT>(value));
154 return *this;
155 }
157
159
167 inline const Aws::String& GetRoleARN() const { return m_roleARN; }
168 inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; }
169 template <typename RoleARNT = Aws::String>
170 void SetRoleARN(RoleARNT&& value) {
171 m_roleARNHasBeenSet = true;
172 m_roleARN = std::forward<RoleARNT>(value);
173 }
174 template <typename RoleARNT = Aws::String>
176 SetRoleARN(std::forward<RoleARNT>(value));
177 return *this;
178 }
180 private:
181 Aws::String m_lifecycleHookName;
182
183 Aws::String m_lifecycleTransition;
184
185 Aws::String m_notificationMetadata;
186
187 int m_heartbeatTimeout{0};
188
189 Aws::String m_defaultResult;
190
191 Aws::String m_notificationTargetARN;
192
193 Aws::String m_roleARN;
194 bool m_lifecycleHookNameHasBeenSet = false;
195 bool m_lifecycleTransitionHasBeenSet = false;
196 bool m_notificationMetadataHasBeenSet = false;
197 bool m_heartbeatTimeoutHasBeenSet = false;
198 bool m_defaultResultHasBeenSet = false;
199 bool m_notificationTargetARNHasBeenSet = false;
200 bool m_roleARNHasBeenSet = false;
201};
202
203} // namespace Model
204} // namespace AutoScaling
205} // namespace Aws
LifecycleHookSpecification & WithDefaultResult(DefaultResultT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
AWS_AUTOSCALING_API LifecycleHookSpecification(const Aws::Utils::Xml::XmlNode &xmlNode)
LifecycleHookSpecification & WithNotificationTargetARN(NotificationTargetARNT &&value)
LifecycleHookSpecification & WithHeartbeatTimeout(int value)
LifecycleHookSpecification & WithLifecycleTransition(LifecycleTransitionT &&value)
LifecycleHookSpecification & WithRoleARN(RoleARNT &&value)
AWS_AUTOSCALING_API LifecycleHookSpecification()=default
AWS_AUTOSCALING_API LifecycleHookSpecification & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
LifecycleHookSpecification & WithLifecycleHookName(LifecycleHookNameT &&value)
AWS_AUTOSCALING_API void OutputToStream(Aws::OStream &oStream, const char *location) const
LifecycleHookSpecification & WithNotificationMetadata(NotificationMetadataT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream