AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Limits.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/es/ElasticsearchService_EXPORTS.h>
9#include <aws/es/model/AdditionalLimit.h>
10#include <aws/es/model/InstanceLimits.h>
11#include <aws/es/model/StorageType.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ElasticsearchService {
23namespace Model {
24
33class Limits {
34 public:
35 AWS_ELASTICSEARCHSERVICE_API Limits() = default;
36 AWS_ELASTICSEARCHSERVICE_API Limits(Aws::Utils::Json::JsonView jsonValue);
37 AWS_ELASTICSEARCHSERVICE_API Limits& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_ELASTICSEARCHSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
45 inline const Aws::Vector<StorageType>& GetStorageTypes() const { return m_storageTypes; }
46 inline bool StorageTypesHasBeenSet() const { return m_storageTypesHasBeenSet; }
47 template <typename StorageTypesT = Aws::Vector<StorageType>>
48 void SetStorageTypes(StorageTypesT&& value) {
49 m_storageTypesHasBeenSet = true;
50 m_storageTypes = std::forward<StorageTypesT>(value);
51 }
52 template <typename StorageTypesT = Aws::Vector<StorageType>>
53 Limits& WithStorageTypes(StorageTypesT&& value) {
54 SetStorageTypes(std::forward<StorageTypesT>(value));
55 return *this;
56 }
57 template <typename StorageTypesT = StorageType>
58 Limits& AddStorageTypes(StorageTypesT&& value) {
59 m_storageTypesHasBeenSet = true;
60 m_storageTypes.emplace_back(std::forward<StorageTypesT>(value));
61 return *this;
62 }
64
66
67 inline const InstanceLimits& GetInstanceLimits() const { return m_instanceLimits; }
68 inline bool InstanceLimitsHasBeenSet() const { return m_instanceLimitsHasBeenSet; }
69 template <typename InstanceLimitsT = InstanceLimits>
70 void SetInstanceLimits(InstanceLimitsT&& value) {
71 m_instanceLimitsHasBeenSet = true;
72 m_instanceLimits = std::forward<InstanceLimitsT>(value);
73 }
74 template <typename InstanceLimitsT = InstanceLimits>
75 Limits& WithInstanceLimits(InstanceLimitsT&& value) {
76 SetInstanceLimits(std::forward<InstanceLimitsT>(value));
77 return *this;
78 }
80
82
86 inline const Aws::Vector<AdditionalLimit>& GetAdditionalLimits() const { return m_additionalLimits; }
87 inline bool AdditionalLimitsHasBeenSet() const { return m_additionalLimitsHasBeenSet; }
88 template <typename AdditionalLimitsT = Aws::Vector<AdditionalLimit>>
89 void SetAdditionalLimits(AdditionalLimitsT&& value) {
90 m_additionalLimitsHasBeenSet = true;
91 m_additionalLimits = std::forward<AdditionalLimitsT>(value);
92 }
93 template <typename AdditionalLimitsT = Aws::Vector<AdditionalLimit>>
94 Limits& WithAdditionalLimits(AdditionalLimitsT&& value) {
95 SetAdditionalLimits(std::forward<AdditionalLimitsT>(value));
96 return *this;
97 }
98 template <typename AdditionalLimitsT = AdditionalLimit>
99 Limits& AddAdditionalLimits(AdditionalLimitsT&& value) {
100 m_additionalLimitsHasBeenSet = true;
101 m_additionalLimits.emplace_back(std::forward<AdditionalLimitsT>(value));
102 return *this;
103 }
105 private:
106 Aws::Vector<StorageType> m_storageTypes;
107
108 InstanceLimits m_instanceLimits;
109
110 Aws::Vector<AdditionalLimit> m_additionalLimits;
111 bool m_storageTypesHasBeenSet = false;
112 bool m_instanceLimitsHasBeenSet = false;
113 bool m_additionalLimitsHasBeenSet = false;
114};
115
116} // namespace Model
117} // namespace ElasticsearchService
118} // namespace Aws
Limits & WithAdditionalLimits(AdditionalLimitsT &&value)
Definition Limits.h:94
void SetStorageTypes(StorageTypesT &&value)
Definition Limits.h:48
void SetInstanceLimits(InstanceLimitsT &&value)
Definition Limits.h:70
AWS_ELASTICSEARCHSERVICE_API Limits()=default
AWS_ELASTICSEARCHSERVICE_API Limits(Aws::Utils::Json::JsonView jsonValue)
void SetAdditionalLimits(AdditionalLimitsT &&value)
Definition Limits.h:89
Limits & AddAdditionalLimits(AdditionalLimitsT &&value)
Definition Limits.h:99
AWS_ELASTICSEARCHSERVICE_API Limits & operator=(Aws::Utils::Json::JsonView jsonValue)
Limits & AddStorageTypes(StorageTypesT &&value)
Definition Limits.h:58
AWS_ELASTICSEARCHSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
const InstanceLimits & GetInstanceLimits() const
Definition Limits.h:67
const Aws::Vector< StorageType > & GetStorageTypes() const
Definition Limits.h:45
const Aws::Vector< AdditionalLimit > & GetAdditionalLimits() const
Definition Limits.h:86
Limits & WithInstanceLimits(InstanceLimitsT &&value)
Definition Limits.h:75
Limits & WithStorageTypes(StorageTypesT &&value)
Definition Limits.h:53
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue