AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ScalingConfigurationOutput.h
1
6#pragma once
7#include <aws/codebuild/CodeBuild_EXPORTS.h>
8#include <aws/codebuild/model/FleetScalingType.h>
9#include <aws/codebuild/model/TargetTrackingScalingConfiguration.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CodeBuild {
22namespace Model {
23
31 public:
32 AWS_CODEBUILD_API ScalingConfigurationOutput() = default;
35 AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline FleetScalingType GetScalingType() const { return m_scalingType; }
42 inline bool ScalingTypeHasBeenSet() const { return m_scalingTypeHasBeenSet; }
43 inline void SetScalingType(FleetScalingType value) {
44 m_scalingTypeHasBeenSet = true;
45 m_scalingType = value;
46 }
48 SetScalingType(value);
49 return *this;
50 }
52
54
58 return m_targetTrackingScalingConfigs;
59 }
60 inline bool TargetTrackingScalingConfigsHasBeenSet() const { return m_targetTrackingScalingConfigsHasBeenSet; }
61 template <typename TargetTrackingScalingConfigsT = Aws::Vector<TargetTrackingScalingConfiguration>>
62 void SetTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT&& value) {
63 m_targetTrackingScalingConfigsHasBeenSet = true;
64 m_targetTrackingScalingConfigs = std::forward<TargetTrackingScalingConfigsT>(value);
65 }
66 template <typename TargetTrackingScalingConfigsT = Aws::Vector<TargetTrackingScalingConfiguration>>
67 ScalingConfigurationOutput& WithTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT&& value) {
68 SetTargetTrackingScalingConfigs(std::forward<TargetTrackingScalingConfigsT>(value));
69 return *this;
70 }
71 template <typename TargetTrackingScalingConfigsT = TargetTrackingScalingConfiguration>
72 ScalingConfigurationOutput& AddTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT&& value) {
73 m_targetTrackingScalingConfigsHasBeenSet = true;
74 m_targetTrackingScalingConfigs.emplace_back(std::forward<TargetTrackingScalingConfigsT>(value));
75 return *this;
76 }
78
80
83 inline int GetMaxCapacity() const { return m_maxCapacity; }
84 inline bool MaxCapacityHasBeenSet() const { return m_maxCapacityHasBeenSet; }
85 inline void SetMaxCapacity(int value) {
86 m_maxCapacityHasBeenSet = true;
87 m_maxCapacity = value;
88 }
90 SetMaxCapacity(value);
91 return *this;
92 }
94
96
99 inline int GetDesiredCapacity() const { return m_desiredCapacity; }
100 inline bool DesiredCapacityHasBeenSet() const { return m_desiredCapacityHasBeenSet; }
101 inline void SetDesiredCapacity(int value) {
102 m_desiredCapacityHasBeenSet = true;
103 m_desiredCapacity = value;
104 }
106 SetDesiredCapacity(value);
107 return *this;
108 }
110 private:
112
113 Aws::Vector<TargetTrackingScalingConfiguration> m_targetTrackingScalingConfigs;
114
115 int m_maxCapacity{0};
116
117 int m_desiredCapacity{0};
118 bool m_scalingTypeHasBeenSet = false;
119 bool m_targetTrackingScalingConfigsHasBeenSet = false;
120 bool m_maxCapacityHasBeenSet = false;
121 bool m_desiredCapacityHasBeenSet = false;
122};
123
124} // namespace Model
125} // namespace CodeBuild
126} // namespace Aws
AWS_CODEBUILD_API ScalingConfigurationOutput(Aws::Utils::Json::JsonView jsonValue)
ScalingConfigurationOutput & WithMaxCapacity(int value)
ScalingConfigurationOutput & AddTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT &&value)
ScalingConfigurationOutput & WithScalingType(FleetScalingType value)
const Aws::Vector< TargetTrackingScalingConfiguration > & GetTargetTrackingScalingConfigs() const
AWS_CODEBUILD_API ScalingConfigurationOutput()=default
AWS_CODEBUILD_API Aws::Utils::Json::JsonValue Jsonize() const
ScalingConfigurationOutput & WithDesiredCapacity(int value)
ScalingConfigurationOutput & WithTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT &&value)
void SetTargetTrackingScalingConfigs(TargetTrackingScalingConfigsT &&value)
AWS_CODEBUILD_API ScalingConfigurationOutput & operator=(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue