AWS SDK for C++  0.12.9
AWS SDK for C++
ElasticsearchClusterConfig.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
18 
19 namespace Aws
20 {
21 namespace Utils
22 {
23 namespace Json
24 {
25  class JsonValue;
26 } // namespace Json
27 } // namespace Utils
28 namespace ElasticsearchService
29 {
30 namespace Model
31 {
32 
38  {
39  public:
42  ElasticsearchClusterConfig& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
43  Aws::Utils::Json::JsonValue Jsonize() const;
44 
48  inline const ESPartitionInstanceType& GetInstanceType() const{ return m_instanceType; }
49 
53  inline void SetInstanceType(const ESPartitionInstanceType& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
54 
58  inline void SetInstanceType(ESPartitionInstanceType&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; }
59 
63  inline ElasticsearchClusterConfig& WithInstanceType(const ESPartitionInstanceType& value) { SetInstanceType(value); return *this;}
64 
68  inline ElasticsearchClusterConfig& WithInstanceType(ESPartitionInstanceType&& value) { SetInstanceType(value); return *this;}
69 
73  inline long GetInstanceCount() const{ return m_instanceCount; }
74 
78  inline void SetInstanceCount(long value) { m_instanceCountHasBeenSet = true; m_instanceCount = value; }
79 
83  inline ElasticsearchClusterConfig& WithInstanceCount(long value) { SetInstanceCount(value); return *this;}
84 
91  inline bool GetDedicatedMasterEnabled() const{ return m_dedicatedMasterEnabled; }
92 
99  inline void SetDedicatedMasterEnabled(bool value) { m_dedicatedMasterEnabledHasBeenSet = true; m_dedicatedMasterEnabled = value; }
100 
107  inline ElasticsearchClusterConfig& WithDedicatedMasterEnabled(bool value) { SetDedicatedMasterEnabled(value); return *this;}
108 
114  inline bool GetZoneAwarenessEnabled() const{ return m_zoneAwarenessEnabled; }
115 
121  inline void SetZoneAwarenessEnabled(bool value) { m_zoneAwarenessEnabledHasBeenSet = true; m_zoneAwarenessEnabled = value; }
122 
128  inline ElasticsearchClusterConfig& WithZoneAwarenessEnabled(bool value) { SetZoneAwarenessEnabled(value); return *this;}
129 
133  inline const ESPartitionInstanceType& GetDedicatedMasterType() const{ return m_dedicatedMasterType; }
134 
138  inline void SetDedicatedMasterType(const ESPartitionInstanceType& value) { m_dedicatedMasterTypeHasBeenSet = true; m_dedicatedMasterType = value; }
139 
143  inline void SetDedicatedMasterType(ESPartitionInstanceType&& value) { m_dedicatedMasterTypeHasBeenSet = true; m_dedicatedMasterType = value; }
144 
148  inline ElasticsearchClusterConfig& WithDedicatedMasterType(const ESPartitionInstanceType& value) { SetDedicatedMasterType(value); return *this;}
149 
153  inline ElasticsearchClusterConfig& WithDedicatedMasterType(ESPartitionInstanceType&& value) { SetDedicatedMasterType(value); return *this;}
154 
159  inline long GetDedicatedMasterCount() const{ return m_dedicatedMasterCount; }
160 
165  inline void SetDedicatedMasterCount(long value) { m_dedicatedMasterCountHasBeenSet = true; m_dedicatedMasterCount = value; }
166 
171  inline ElasticsearchClusterConfig& WithDedicatedMasterCount(long value) { SetDedicatedMasterCount(value); return *this;}
172 
173  private:
174  ESPartitionInstanceType m_instanceType;
175  bool m_instanceTypeHasBeenSet;
176  long m_instanceCount;
177  bool m_instanceCountHasBeenSet;
178  bool m_dedicatedMasterEnabled;
179  bool m_dedicatedMasterEnabledHasBeenSet;
180  bool m_zoneAwarenessEnabled;
181  bool m_zoneAwarenessEnabledHasBeenSet;
182  ESPartitionInstanceType m_dedicatedMasterType;
183  bool m_dedicatedMasterTypeHasBeenSet;
184  long m_dedicatedMasterCount;
185  bool m_dedicatedMasterCountHasBeenSet;
186  };
187 
188 } // namespace Model
189 } // namespace ElasticsearchService
190 } // namespace Aws
ElasticsearchClusterConfig & WithInstanceType(ESPartitionInstanceType &&value)
ElasticsearchClusterConfig & WithInstanceType(const ESPartitionInstanceType &value)
#define AWS_ELASTICSEARCHSERVICE_API
ElasticsearchClusterConfig & WithDedicatedMasterType(const ESPartitionInstanceType &value)
ElasticsearchClusterConfig & WithDedicatedMasterType(ESPartitionInstanceType &&value)
JSON (JavaScript Object Notation).