AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
NodeAggregator.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/ssm/SSM_EXPORTS.h>
9#include <aws/ssm/model/NodeAggregatorType.h>
10#include <aws/ssm/model/NodeAttributeName.h>
11#include <aws/ssm/model/NodeTypeName.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace SSM {
23namespace Model {
24
32 public:
33 AWS_SSM_API NodeAggregator() = default;
37
39
43 inline NodeAggregatorType GetAggregatorType() const { return m_aggregatorType; }
44 inline bool AggregatorTypeHasBeenSet() const { return m_aggregatorTypeHasBeenSet; }
46 m_aggregatorTypeHasBeenSet = true;
47 m_aggregatorType = value;
48 }
50 SetAggregatorType(value);
51 return *this;
52 }
54
56
60 inline NodeTypeName GetTypeName() const { return m_typeName; }
61 inline bool TypeNameHasBeenSet() const { return m_typeNameHasBeenSet; }
62 inline void SetTypeName(NodeTypeName value) {
63 m_typeNameHasBeenSet = true;
64 m_typeName = value;
65 }
67 SetTypeName(value);
68 return *this;
69 }
71
73
76 inline NodeAttributeName GetAttributeName() const { return m_attributeName; }
77 inline bool AttributeNameHasBeenSet() const { return m_attributeNameHasBeenSet; }
79 m_attributeNameHasBeenSet = true;
80 m_attributeName = value;
81 }
83 SetAttributeName(value);
84 return *this;
85 }
87
89
92 inline const Aws::Vector<NodeAggregator>& GetAggregators() const { return m_aggregators; }
93 inline bool AggregatorsHasBeenSet() const { return m_aggregatorsHasBeenSet; }
94 template <typename AggregatorsT = Aws::Vector<NodeAggregator>>
95 void SetAggregators(AggregatorsT&& value) {
96 m_aggregatorsHasBeenSet = true;
97 m_aggregators = std::forward<AggregatorsT>(value);
98 }
99 template <typename AggregatorsT = Aws::Vector<NodeAggregator>>
100 NodeAggregator& WithAggregators(AggregatorsT&& value) {
101 SetAggregators(std::forward<AggregatorsT>(value));
102 return *this;
103 }
104 template <typename AggregatorsT = NodeAggregator>
105 NodeAggregator& AddAggregators(AggregatorsT&& value) {
106 m_aggregatorsHasBeenSet = true;
107 m_aggregators.emplace_back(std::forward<AggregatorsT>(value));
108 return *this;
109 }
111 private:
113
115
117
118 Aws::Vector<NodeAggregator> m_aggregators;
119 bool m_aggregatorTypeHasBeenSet = false;
120 bool m_typeNameHasBeenSet = false;
121 bool m_attributeNameHasBeenSet = false;
122 bool m_aggregatorsHasBeenSet = false;
123};
124
125} // namespace Model
126} // namespace SSM
127} // namespace Aws
NodeAggregator & WithTypeName(NodeTypeName value)
const Aws::Vector< NodeAggregator > & GetAggregators() const
NodeAggregator & WithAggregatorType(NodeAggregatorType value)
NodeAggregator & WithAggregators(AggregatorsT &&value)
void SetAggregators(AggregatorsT &&value)
void SetAttributeName(NodeAttributeName value)
NodeAttributeName GetAttributeName() const
NodeAggregatorType GetAggregatorType() const
NodeAggregator & WithAttributeName(NodeAttributeName value)
AWS_SSM_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_SSM_API NodeAggregator & operator=(Aws::Utils::Json::JsonView jsonValue)
NodeAggregator & AddAggregators(AggregatorsT &&value)
NodeTypeName GetTypeName() const
void SetTypeName(NodeTypeName value)
void SetAggregatorType(NodeAggregatorType value)
AWS_SSM_API NodeAggregator(Aws::Utils::Json::JsonView jsonValue)
AWS_SSM_API NodeAggregator()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue