AWS SDK for C++

AWS SDK for C++ Version 1.11.762

Loading...
Searching...
No Matches
AwsJobExponentialRolloutRate.h
1
6#pragma once
7#include <aws/iot/IoT_EXPORTS.h>
8#include <aws/iot/model/AwsJobRateIncreaseCriteria.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace IoT {
20namespace Model {
21
29 public:
30 AWS_IOT_API AwsJobExponentialRolloutRate() = default;
34
36
41 inline int GetBaseRatePerMinute() const { return m_baseRatePerMinute; }
42 inline bool BaseRatePerMinuteHasBeenSet() const { return m_baseRatePerMinuteHasBeenSet; }
43 inline void SetBaseRatePerMinute(int value) {
44 m_baseRatePerMinuteHasBeenSet = true;
45 m_baseRatePerMinute = value;
46 }
49 return *this;
50 }
52
54
58 inline double GetIncrementFactor() const { return m_incrementFactor; }
59 inline bool IncrementFactorHasBeenSet() const { return m_incrementFactorHasBeenSet; }
60 inline void SetIncrementFactor(double value) {
61 m_incrementFactorHasBeenSet = true;
62 m_incrementFactor = value;
63 }
65 SetIncrementFactor(value);
66 return *this;
67 }
69
71
76 inline const AwsJobRateIncreaseCriteria& GetRateIncreaseCriteria() const { return m_rateIncreaseCriteria; }
77 inline bool RateIncreaseCriteriaHasBeenSet() const { return m_rateIncreaseCriteriaHasBeenSet; }
78 template <typename RateIncreaseCriteriaT = AwsJobRateIncreaseCriteria>
79 void SetRateIncreaseCriteria(RateIncreaseCriteriaT&& value) {
80 m_rateIncreaseCriteriaHasBeenSet = true;
81 m_rateIncreaseCriteria = std::forward<RateIncreaseCriteriaT>(value);
82 }
83 template <typename RateIncreaseCriteriaT = AwsJobRateIncreaseCriteria>
85 SetRateIncreaseCriteria(std::forward<RateIncreaseCriteriaT>(value));
86 return *this;
87 }
89 private:
90 int m_baseRatePerMinute{0};
91
92 double m_incrementFactor{0.0};
93
94 AwsJobRateIncreaseCriteria m_rateIncreaseCriteria;
95 bool m_baseRatePerMinuteHasBeenSet = false;
96 bool m_incrementFactorHasBeenSet = false;
97 bool m_rateIncreaseCriteriaHasBeenSet = false;
98};
99
100} // namespace Model
101} // namespace IoT
102} // namespace Aws
AwsJobExponentialRolloutRate & WithRateIncreaseCriteria(RateIncreaseCriteriaT &&value)
AWS_IOT_API AwsJobExponentialRolloutRate()=default
AwsJobExponentialRolloutRate & WithBaseRatePerMinute(int value)
AwsJobExponentialRolloutRate & WithIncrementFactor(double value)
AWS_IOT_API AwsJobExponentialRolloutRate(Aws::Utils::Json::JsonView jsonValue)
void SetRateIncreaseCriteria(RateIncreaseCriteriaT &&value)
const AwsJobRateIncreaseCriteria & GetRateIncreaseCriteria() const
AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_IOT_API AwsJobExponentialRolloutRate & operator=(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue