AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
TrafficRoutingConfig.h
1
6#pragma once
7#include <aws/sagemaker/SageMaker_EXPORTS.h>
8#include <aws/sagemaker/model/TrafficRoutingConfigType.h>
9#include <aws/sagemaker/model/CapacitySize.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace SageMaker
23{
24namespace Model
25{
26
34 {
35 public:
36 AWS_SAGEMAKER_API TrafficRoutingConfig() = default;
39 AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
52 inline TrafficRoutingConfigType GetType() const { return m_type; }
53 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
54 inline void SetType(TrafficRoutingConfigType value) { m_typeHasBeenSet = true; m_type = value; }
55 inline TrafficRoutingConfig& WithType(TrafficRoutingConfigType value) { SetType(value); return *this;}
57
59
63 inline int GetWaitIntervalInSeconds() const { return m_waitIntervalInSeconds; }
64 inline bool WaitIntervalInSecondsHasBeenSet() const { return m_waitIntervalInSecondsHasBeenSet; }
65 inline void SetWaitIntervalInSeconds(int value) { m_waitIntervalInSecondsHasBeenSet = true; m_waitIntervalInSeconds = value; }
68
70
75 inline const CapacitySize& GetCanarySize() const { return m_canarySize; }
76 inline bool CanarySizeHasBeenSet() const { return m_canarySizeHasBeenSet; }
77 template<typename CanarySizeT = CapacitySize>
78 void SetCanarySize(CanarySizeT&& value) { m_canarySizeHasBeenSet = true; m_canarySize = std::forward<CanarySizeT>(value); }
79 template<typename CanarySizeT = CapacitySize>
80 TrafficRoutingConfig& WithCanarySize(CanarySizeT&& value) { SetCanarySize(std::forward<CanarySizeT>(value)); return *this;}
82
84
88 inline const CapacitySize& GetLinearStepSize() const { return m_linearStepSize; }
89 inline bool LinearStepSizeHasBeenSet() const { return m_linearStepSizeHasBeenSet; }
90 template<typename LinearStepSizeT = CapacitySize>
91 void SetLinearStepSize(LinearStepSizeT&& value) { m_linearStepSizeHasBeenSet = true; m_linearStepSize = std::forward<LinearStepSizeT>(value); }
92 template<typename LinearStepSizeT = CapacitySize>
93 TrafficRoutingConfig& WithLinearStepSize(LinearStepSizeT&& value) { SetLinearStepSize(std::forward<LinearStepSizeT>(value)); return *this;}
95 private:
96
98 bool m_typeHasBeenSet = false;
99
100 int m_waitIntervalInSeconds{0};
101 bool m_waitIntervalInSecondsHasBeenSet = false;
102
103 CapacitySize m_canarySize;
104 bool m_canarySizeHasBeenSet = false;
105
106 CapacitySize m_linearStepSize;
107 bool m_linearStepSizeHasBeenSet = false;
108 };
109
110} // namespace Model
111} // namespace SageMaker
112} // namespace Aws
TrafficRoutingConfig & WithLinearStepSize(LinearStepSizeT &&value)
AWS_SAGEMAKER_API TrafficRoutingConfig(Aws::Utils::Json::JsonView jsonValue)
AWS_SAGEMAKER_API TrafficRoutingConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
TrafficRoutingConfig & WithCanarySize(CanarySizeT &&value)
void SetType(TrafficRoutingConfigType value)
void SetLinearStepSize(LinearStepSizeT &&value)
AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const
TrafficRoutingConfig & WithType(TrafficRoutingConfigType value)
TrafficRoutingConfig & WithWaitIntervalInSeconds(int value)
AWS_SAGEMAKER_API TrafficRoutingConfig()=default
Aws::Utils::Json::JsonValue JsonValue