AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
InstanceGroupStatus.h
1
6#pragma once
7#include <aws/elasticmapreduce/EMR_EXPORTS.h>
8#include <aws/elasticmapreduce/model/InstanceGroupState.h>
9#include <aws/elasticmapreduce/model/InstanceGroupStateChangeReason.h>
10#include <aws/elasticmapreduce/model/InstanceGroupTimeline.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
34 {
35 public:
36 AWS_EMR_API InstanceGroupStatus() = default;
40
41
43
46 inline InstanceGroupState GetState() const { return m_state; }
47 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
48 inline void SetState(InstanceGroupState value) { m_stateHasBeenSet = true; m_state = value; }
49 inline InstanceGroupStatus& WithState(InstanceGroupState value) { SetState(value); return *this;}
51
53
56 inline const InstanceGroupStateChangeReason& GetStateChangeReason() const { return m_stateChangeReason; }
57 inline bool StateChangeReasonHasBeenSet() const { return m_stateChangeReasonHasBeenSet; }
58 template<typename StateChangeReasonT = InstanceGroupStateChangeReason>
59 void SetStateChangeReason(StateChangeReasonT&& value) { m_stateChangeReasonHasBeenSet = true; m_stateChangeReason = std::forward<StateChangeReasonT>(value); }
60 template<typename StateChangeReasonT = InstanceGroupStateChangeReason>
61 InstanceGroupStatus& WithStateChangeReason(StateChangeReasonT&& value) { SetStateChangeReason(std::forward<StateChangeReasonT>(value)); return *this;}
63
65
68 inline const InstanceGroupTimeline& GetTimeline() const { return m_timeline; }
69 inline bool TimelineHasBeenSet() const { return m_timelineHasBeenSet; }
70 template<typename TimelineT = InstanceGroupTimeline>
71 void SetTimeline(TimelineT&& value) { m_timelineHasBeenSet = true; m_timeline = std::forward<TimelineT>(value); }
72 template<typename TimelineT = InstanceGroupTimeline>
73 InstanceGroupStatus& WithTimeline(TimelineT&& value) { SetTimeline(std::forward<TimelineT>(value)); return *this;}
75 private:
76
78 bool m_stateHasBeenSet = false;
79
80 InstanceGroupStateChangeReason m_stateChangeReason;
81 bool m_stateChangeReasonHasBeenSet = false;
82
83 InstanceGroupTimeline m_timeline;
84 bool m_timelineHasBeenSet = false;
85 };
86
87} // namespace Model
88} // namespace EMR
89} // namespace Aws
const InstanceGroupTimeline & GetTimeline() const
AWS_EMR_API InstanceGroupStatus()=default
InstanceGroupStatus & WithTimeline(TimelineT &&value)
void SetState(InstanceGroupState value)
InstanceGroupStatus & WithState(InstanceGroupState value)
void SetStateChangeReason(StateChangeReasonT &&value)
AWS_EMR_API InstanceGroupStatus & operator=(Aws::Utils::Json::JsonView jsonValue)
InstanceGroupStatus & WithStateChangeReason(StateChangeReasonT &&value)
const InstanceGroupStateChangeReason & GetStateChangeReason() const
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_EMR_API InstanceGroupStatus(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue