AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
ScalingRule.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/elasticmapreduce/model/ScalingAction.h>
10#include <aws/elasticmapreduce/model/ScalingTrigger.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace EMR
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_EMR_API ScalingRule() = default;
44
45
47
51 inline const Aws::String& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template<typename NameT = Aws::String>
54 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
55 template<typename NameT = Aws::String>
56 ScalingRule& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
58
60
63 inline const Aws::String& GetDescription() const { return m_description; }
64 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
65 template<typename DescriptionT = Aws::String>
66 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
67 template<typename DescriptionT = Aws::String>
68 ScalingRule& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
70
72
75 inline const ScalingAction& GetAction() const { return m_action; }
76 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; }
77 template<typename ActionT = ScalingAction>
78 void SetAction(ActionT&& value) { m_actionHasBeenSet = true; m_action = std::forward<ActionT>(value); }
79 template<typename ActionT = ScalingAction>
80 ScalingRule& WithAction(ActionT&& value) { SetAction(std::forward<ActionT>(value)); return *this;}
82
84
88 inline const ScalingTrigger& GetTrigger() const { return m_trigger; }
89 inline bool TriggerHasBeenSet() const { return m_triggerHasBeenSet; }
90 template<typename TriggerT = ScalingTrigger>
91 void SetTrigger(TriggerT&& value) { m_triggerHasBeenSet = true; m_trigger = std::forward<TriggerT>(value); }
92 template<typename TriggerT = ScalingTrigger>
93 ScalingRule& WithTrigger(TriggerT&& value) { SetTrigger(std::forward<TriggerT>(value)); return *this;}
95 private:
96
97 Aws::String m_name;
98 bool m_nameHasBeenSet = false;
99
100 Aws::String m_description;
101 bool m_descriptionHasBeenSet = false;
102
103 ScalingAction m_action;
104 bool m_actionHasBeenSet = false;
105
106 ScalingTrigger m_trigger;
107 bool m_triggerHasBeenSet = false;
108 };
109
110} // namespace Model
111} // namespace EMR
112} // namespace Aws
const ScalingTrigger & GetTrigger() const
Definition ScalingRule.h:88
AWS_EMR_API ScalingRule()=default
void SetName(NameT &&value)
Definition ScalingRule.h:54
AWS_EMR_API ScalingRule(Aws::Utils::Json::JsonView jsonValue)
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetName() const
Definition ScalingRule.h:51
AWS_EMR_API ScalingRule & operator=(Aws::Utils::Json::JsonView jsonValue)
ScalingRule & WithAction(ActionT &&value)
Definition ScalingRule.h:80
ScalingRule & WithTrigger(TriggerT &&value)
Definition ScalingRule.h:93
void SetTrigger(TriggerT &&value)
Definition ScalingRule.h:91
void SetDescription(DescriptionT &&value)
Definition ScalingRule.h:66
bool DescriptionHasBeenSet() const
Definition ScalingRule.h:64
void SetAction(ActionT &&value)
Definition ScalingRule.h:78
const Aws::String & GetDescription() const
Definition ScalingRule.h:63
ScalingRule & WithDescription(DescriptionT &&value)
Definition ScalingRule.h:68
ScalingRule & WithName(NameT &&value)
Definition ScalingRule.h:56
const ScalingAction & GetAction() const
Definition ScalingRule.h:75
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue