AWS SDK for C++

AWS SDK for C++ Version 1.11.607

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#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Xml
17{
18 class XmlNode;
19} // namespace Xml
20} // namespace Utils
21namespace AutoScaling
22{
23namespace Model
24{
25
36 {
37 public:
38 AWS_AUTOSCALING_API LifecycleHookSpecification() = default;
39 AWS_AUTOSCALING_API LifecycleHookSpecification(const Aws::Utils::Xml::XmlNode& xmlNode);
41
42 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
43 AWS_AUTOSCALING_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
44
45
47
50 inline const Aws::String& GetLifecycleHookName() const { return m_lifecycleHookName; }
51 inline bool LifecycleHookNameHasBeenSet() const { return m_lifecycleHookNameHasBeenSet; }
52 template<typename LifecycleHookNameT = Aws::String>
53 void SetLifecycleHookName(LifecycleHookNameT&& value) { m_lifecycleHookNameHasBeenSet = true; m_lifecycleHookName = std::forward<LifecycleHookNameT>(value); }
54 template<typename LifecycleHookNameT = Aws::String>
55 LifecycleHookSpecification& WithLifecycleHookName(LifecycleHookNameT&& value) { SetLifecycleHookName(std::forward<LifecycleHookNameT>(value)); return *this;}
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) { m_lifecycleTransitionHasBeenSet = true; m_lifecycleTransition = std::forward<LifecycleTransitionT>(value); }
70 template<typename LifecycleTransitionT = Aws::String>
71 LifecycleHookSpecification& WithLifecycleTransition(LifecycleTransitionT&& value) { SetLifecycleTransition(std::forward<LifecycleTransitionT>(value)); return *this;}
73
75
79 inline const Aws::String& GetNotificationMetadata() const { return m_notificationMetadata; }
80 inline bool NotificationMetadataHasBeenSet() const { return m_notificationMetadataHasBeenSet; }
81 template<typename NotificationMetadataT = Aws::String>
82 void SetNotificationMetadata(NotificationMetadataT&& value) { m_notificationMetadataHasBeenSet = true; m_notificationMetadata = std::forward<NotificationMetadataT>(value); }
83 template<typename NotificationMetadataT = Aws::String>
84 LifecycleHookSpecification& WithNotificationMetadata(NotificationMetadataT&& value) { SetNotificationMetadata(std::forward<NotificationMetadataT>(value)); return *this;}
86
88
93 inline int GetHeartbeatTimeout() const { return m_heartbeatTimeout; }
94 inline bool HeartbeatTimeoutHasBeenSet() const { return m_heartbeatTimeoutHasBeenSet; }
95 inline void SetHeartbeatTimeout(int value) { m_heartbeatTimeoutHasBeenSet = true; m_heartbeatTimeout = value; }
96 inline LifecycleHookSpecification& WithHeartbeatTimeout(int value) { SetHeartbeatTimeout(value); return *this;}
98
100
106 inline const Aws::String& GetDefaultResult() const { return m_defaultResult; }
107 inline bool DefaultResultHasBeenSet() const { return m_defaultResultHasBeenSet; }
108 template<typename DefaultResultT = Aws::String>
109 void SetDefaultResult(DefaultResultT&& value) { m_defaultResultHasBeenSet = true; m_defaultResult = std::forward<DefaultResultT>(value); }
110 template<typename DefaultResultT = Aws::String>
111 LifecycleHookSpecification& WithDefaultResult(DefaultResultT&& value) { SetDefaultResult(std::forward<DefaultResultT>(value)); return *this;}
113
115
120 inline const Aws::String& GetNotificationTargetARN() const { return m_notificationTargetARN; }
121 inline bool NotificationTargetARNHasBeenSet() const { return m_notificationTargetARNHasBeenSet; }
122 template<typename NotificationTargetARNT = Aws::String>
123 void SetNotificationTargetARN(NotificationTargetARNT&& value) { m_notificationTargetARNHasBeenSet = true; m_notificationTargetARN = std::forward<NotificationTargetARNT>(value); }
124 template<typename NotificationTargetARNT = Aws::String>
125 LifecycleHookSpecification& WithNotificationTargetARN(NotificationTargetARNT&& value) { SetNotificationTargetARN(std::forward<NotificationTargetARNT>(value)); return *this;}
127
129
137 inline const Aws::String& GetRoleARN() const { return m_roleARN; }
138 inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; }
139 template<typename RoleARNT = Aws::String>
140 void SetRoleARN(RoleARNT&& value) { m_roleARNHasBeenSet = true; m_roleARN = std::forward<RoleARNT>(value); }
141 template<typename RoleARNT = Aws::String>
142 LifecycleHookSpecification& WithRoleARN(RoleARNT&& value) { SetRoleARN(std::forward<RoleARNT>(value)); return *this;}
144 private:
145
146 Aws::String m_lifecycleHookName;
147 bool m_lifecycleHookNameHasBeenSet = false;
148
149 Aws::String m_lifecycleTransition;
150 bool m_lifecycleTransitionHasBeenSet = false;
151
152 Aws::String m_notificationMetadata;
153 bool m_notificationMetadataHasBeenSet = false;
154
155 int m_heartbeatTimeout{0};
156 bool m_heartbeatTimeoutHasBeenSet = false;
157
158 Aws::String m_defaultResult;
159 bool m_defaultResultHasBeenSet = false;
160
161 Aws::String m_notificationTargetARN;
162 bool m_notificationTargetARNHasBeenSet = false;
163
164 Aws::String m_roleARN;
165 bool m_roleARNHasBeenSet = false;
166 };
167
168} // namespace Model
169} // namespace AutoScaling
170} // 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