AWS SDK for C++  0.14.3
AWS SDK for C++
EC2InstanceLimit.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 GameLift
29 {
30 namespace Model
31 {
32 
39  {
40  public:
43  EC2InstanceLimit& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
44  Aws::Utils::Json::JsonValue Jsonize() const;
45 
54  inline const EC2InstanceType& GetEC2InstanceType() const{ return m_eC2InstanceType; }
55 
64  inline void SetEC2InstanceType(const EC2InstanceType& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = value; }
65 
74  inline void SetEC2InstanceType(EC2InstanceType&& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = value; }
75 
84  inline EC2InstanceLimit& WithEC2InstanceType(const EC2InstanceType& value) { SetEC2InstanceType(value); return *this;}
85 
94  inline EC2InstanceLimit& WithEC2InstanceType(EC2InstanceType&& value) { SetEC2InstanceType(value); return *this;}
95 
100  inline int GetCurrentInstances() const{ return m_currentInstances; }
101 
106  inline void SetCurrentInstances(int value) { m_currentInstancesHasBeenSet = true; m_currentInstances = value; }
107 
112  inline EC2InstanceLimit& WithCurrentInstances(int value) { SetCurrentInstances(value); return *this;}
113 
117  inline int GetInstanceLimit() const{ return m_instanceLimit; }
118 
122  inline void SetInstanceLimit(int value) { m_instanceLimitHasBeenSet = true; m_instanceLimit = value; }
123 
127  inline EC2InstanceLimit& WithInstanceLimit(int value) { SetInstanceLimit(value); return *this;}
128 
129  private:
130  EC2InstanceType m_eC2InstanceType;
131  bool m_eC2InstanceTypeHasBeenSet;
132  int m_currentInstances;
133  bool m_currentInstancesHasBeenSet;
134  int m_instanceLimit;
135  bool m_instanceLimitHasBeenSet;
136  };
137 
138 } // namespace Model
139 } // namespace GameLift
140 } // namespace Aws
const EC2InstanceType & GetEC2InstanceType() const
#define AWS_GAMELIFT_API
void SetEC2InstanceType(const EC2InstanceType &value)
EC2InstanceLimit & WithInstanceLimit(int value)
EC2InstanceLimit & WithCurrentInstances(int value)
EC2InstanceLimit & WithEC2InstanceType(const EC2InstanceType &value)
EC2InstanceLimit & WithEC2InstanceType(EC2InstanceType &&value)
void SetEC2InstanceType(EC2InstanceType &&value)
JSON (JavaScript Object Notation).