AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
AutoScalingGroupProvider.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ecs/model/ManagedScaling.h>
10#include <aws/ecs/model/ManagedTerminationProtection.h>
11#include <aws/ecs/model/ManagedDraining.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace ECS
25{
26namespace Model
27{
28
36 {
37 public:
42
43
45
49 inline const Aws::String& GetAutoScalingGroupArn() const{ return m_autoScalingGroupArn; }
50 inline bool AutoScalingGroupArnHasBeenSet() const { return m_autoScalingGroupArnHasBeenSet; }
51 inline void SetAutoScalingGroupArn(const Aws::String& value) { m_autoScalingGroupArnHasBeenSet = true; m_autoScalingGroupArn = value; }
52 inline void SetAutoScalingGroupArn(Aws::String&& value) { m_autoScalingGroupArnHasBeenSet = true; m_autoScalingGroupArn = std::move(value); }
53 inline void SetAutoScalingGroupArn(const char* value) { m_autoScalingGroupArnHasBeenSet = true; m_autoScalingGroupArn.assign(value); }
55 inline AutoScalingGroupProvider& WithAutoScalingGroupArn(Aws::String&& value) { SetAutoScalingGroupArn(std::move(value)); return *this;}
56 inline AutoScalingGroupProvider& WithAutoScalingGroupArn(const char* value) { SetAutoScalingGroupArn(value); return *this;}
58
60
64 inline const ManagedScaling& GetManagedScaling() const{ return m_managedScaling; }
65 inline bool ManagedScalingHasBeenSet() const { return m_managedScalingHasBeenSet; }
66 inline void SetManagedScaling(const ManagedScaling& value) { m_managedScalingHasBeenSet = true; m_managedScaling = value; }
67 inline void SetManagedScaling(ManagedScaling&& value) { m_managedScalingHasBeenSet = true; m_managedScaling = std::move(value); }
68 inline AutoScalingGroupProvider& WithManagedScaling(const ManagedScaling& value) { SetManagedScaling(value); return *this;}
69 inline AutoScalingGroupProvider& WithManagedScaling(ManagedScaling&& value) { SetManagedScaling(std::move(value)); return *this;}
71
73
89 inline const ManagedTerminationProtection& GetManagedTerminationProtection() const{ return m_managedTerminationProtection; }
90 inline bool ManagedTerminationProtectionHasBeenSet() const { return m_managedTerminationProtectionHasBeenSet; }
91 inline void SetManagedTerminationProtection(const ManagedTerminationProtection& value) { m_managedTerminationProtectionHasBeenSet = true; m_managedTerminationProtection = value; }
92 inline void SetManagedTerminationProtection(ManagedTerminationProtection&& value) { m_managedTerminationProtectionHasBeenSet = true; m_managedTerminationProtection = std::move(value); }
96
98
103 inline const ManagedDraining& GetManagedDraining() const{ return m_managedDraining; }
104 inline bool ManagedDrainingHasBeenSet() const { return m_managedDrainingHasBeenSet; }
105 inline void SetManagedDraining(const ManagedDraining& value) { m_managedDrainingHasBeenSet = true; m_managedDraining = value; }
106 inline void SetManagedDraining(ManagedDraining&& value) { m_managedDrainingHasBeenSet = true; m_managedDraining = std::move(value); }
108 inline AutoScalingGroupProvider& WithManagedDraining(ManagedDraining&& value) { SetManagedDraining(std::move(value)); return *this;}
110 private:
111
112 Aws::String m_autoScalingGroupArn;
113 bool m_autoScalingGroupArnHasBeenSet = false;
114
115 ManagedScaling m_managedScaling;
116 bool m_managedScalingHasBeenSet = false;
117
118 ManagedTerminationProtection m_managedTerminationProtection;
119 bool m_managedTerminationProtectionHasBeenSet = false;
120
121 ManagedDraining m_managedDraining;
122 bool m_managedDrainingHasBeenSet = false;
123 };
124
125} // namespace Model
126} // namespace ECS
127} // namespace Aws
AutoScalingGroupProvider & WithManagedScaling(ManagedScaling &&value)
void SetManagedDraining(const ManagedDraining &value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
AutoScalingGroupProvider & WithAutoScalingGroupArn(const Aws::String &value)
void SetAutoScalingGroupArn(const Aws::String &value)
AutoScalingGroupProvider & WithAutoScalingGroupArn(Aws::String &&value)
AutoScalingGroupProvider & WithManagedDraining(ManagedDraining &&value)
void SetManagedTerminationProtection(ManagedTerminationProtection &&value)
AutoScalingGroupProvider & WithManagedScaling(const ManagedScaling &value)
void SetManagedScaling(const ManagedScaling &value)
AWS_ECS_API AutoScalingGroupProvider(Aws::Utils::Json::JsonView jsonValue)
AutoScalingGroupProvider & WithManagedDraining(const ManagedDraining &value)
AWS_ECS_API AutoScalingGroupProvider & operator=(Aws::Utils::Json::JsonView jsonValue)
AutoScalingGroupProvider & WithManagedTerminationProtection(const ManagedTerminationProtection &value)
const ManagedTerminationProtection & GetManagedTerminationProtection() const
AutoScalingGroupProvider & WithAutoScalingGroupArn(const char *value)
AutoScalingGroupProvider & WithManagedTerminationProtection(ManagedTerminationProtection &&value)
const ManagedDraining & GetManagedDraining() const
void SetManagedTerminationProtection(const ManagedTerminationProtection &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue