AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
IoTJobExponentialRolloutRate.h
1
6#pragma once
7#include <aws/greengrassv2/GreengrassV2_EXPORTS.h>
8#include <aws/greengrassv2/model/IoTJobRateIncreaseCriteria.h>
9#include <utility>
10
11namespace Aws
12{
13namespace Utils
14{
15namespace Json
16{
17 class JsonValue;
18 class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace GreengrassV2
22{
23namespace Model
24{
25
33 {
34 public:
35 AWS_GREENGRASSV2_API IoTJobExponentialRolloutRate() = default;
38 AWS_GREENGRASSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
47 inline int GetBaseRatePerMinute() const { return m_baseRatePerMinute; }
48 inline bool BaseRatePerMinuteHasBeenSet() const { return m_baseRatePerMinuteHasBeenSet; }
49 inline void SetBaseRatePerMinute(int value) { m_baseRatePerMinuteHasBeenSet = true; m_baseRatePerMinute = value; }
52
54
59 inline double GetIncrementFactor() const { return m_incrementFactor; }
60 inline bool IncrementFactorHasBeenSet() const { return m_incrementFactorHasBeenSet; }
61 inline void SetIncrementFactor(double value) { m_incrementFactorHasBeenSet = true; m_incrementFactor = value; }
62 inline IoTJobExponentialRolloutRate& WithIncrementFactor(double value) { SetIncrementFactor(value); return *this;}
64
66
69 inline const IoTJobRateIncreaseCriteria& GetRateIncreaseCriteria() const { return m_rateIncreaseCriteria; }
70 inline bool RateIncreaseCriteriaHasBeenSet() const { return m_rateIncreaseCriteriaHasBeenSet; }
71 template<typename RateIncreaseCriteriaT = IoTJobRateIncreaseCriteria>
72 void SetRateIncreaseCriteria(RateIncreaseCriteriaT&& value) { m_rateIncreaseCriteriaHasBeenSet = true; m_rateIncreaseCriteria = std::forward<RateIncreaseCriteriaT>(value); }
73 template<typename RateIncreaseCriteriaT = IoTJobRateIncreaseCriteria>
74 IoTJobExponentialRolloutRate& WithRateIncreaseCriteria(RateIncreaseCriteriaT&& value) { SetRateIncreaseCriteria(std::forward<RateIncreaseCriteriaT>(value)); return *this;}
76 private:
77
78 int m_baseRatePerMinute{0};
79 bool m_baseRatePerMinuteHasBeenSet = false;
80
81 double m_incrementFactor{0.0};
82 bool m_incrementFactorHasBeenSet = false;
83
84 IoTJobRateIncreaseCriteria m_rateIncreaseCriteria;
85 bool m_rateIncreaseCriteriaHasBeenSet = false;
86 };
87
88} // namespace Model
89} // namespace GreengrassV2
90} // namespace Aws
const IoTJobRateIncreaseCriteria & GetRateIncreaseCriteria() const
AWS_GREENGRASSV2_API Aws::Utils::Json::JsonValue Jsonize() const
IoTJobExponentialRolloutRate & WithBaseRatePerMinute(int value)
AWS_GREENGRASSV2_API IoTJobExponentialRolloutRate & operator=(Aws::Utils::Json::JsonView jsonValue)
IoTJobExponentialRolloutRate & WithIncrementFactor(double value)
AWS_GREENGRASSV2_API IoTJobExponentialRolloutRate()=default
AWS_GREENGRASSV2_API IoTJobExponentialRolloutRate(Aws::Utils::Json::JsonView jsonValue)
IoTJobExponentialRolloutRate & WithRateIncreaseCriteria(RateIncreaseCriteriaT &&value)
Aws::Utils::Json::JsonValue JsonValue