AWS SDK for C++  0.12.9
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 
53  inline const EC2InstanceType& GetEC2InstanceType() const{ return m_eC2InstanceType; }
54 
62  inline void SetEC2InstanceType(const EC2InstanceType& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = value; }
63 
71  inline void SetEC2InstanceType(EC2InstanceType&& value) { m_eC2InstanceTypeHasBeenSet = true; m_eC2InstanceType = value; }
72 
80  inline EC2InstanceLimit& WithEC2InstanceType(const EC2InstanceType& value) { SetEC2InstanceType(value); return *this;}
81 
89  inline EC2InstanceLimit& WithEC2InstanceType(EC2InstanceType&& value) { SetEC2InstanceType(value); return *this;}
90 
95  inline long GetCurrentInstances() const{ return m_currentInstances; }
96 
101  inline void SetCurrentInstances(long value) { m_currentInstancesHasBeenSet = true; m_currentInstances = value; }
102 
107  inline EC2InstanceLimit& WithCurrentInstances(long value) { SetCurrentInstances(value); return *this;}
108 
112  inline long GetInstanceLimit() const{ return m_instanceLimit; }
113 
117  inline void SetInstanceLimit(long value) { m_instanceLimitHasBeenSet = true; m_instanceLimit = value; }
118 
122  inline EC2InstanceLimit& WithInstanceLimit(long value) { SetInstanceLimit(value); return *this;}
123 
124  private:
125  EC2InstanceType m_eC2InstanceType;
126  bool m_eC2InstanceTypeHasBeenSet;
127  long m_currentInstances;
128  bool m_currentInstancesHasBeenSet;
129  long m_instanceLimit;
130  bool m_instanceLimitHasBeenSet;
131  };
132 
133 } // namespace Model
134 } // namespace GameLift
135 } // namespace Aws
const EC2InstanceType & GetEC2InstanceType() const
#define AWS_GAMELIFT_API
void SetEC2InstanceType(const EC2InstanceType &value)
EC2InstanceLimit & WithCurrentInstances(long value)
EC2InstanceLimit & WithInstanceLimit(long value)
EC2InstanceLimit & WithEC2InstanceType(const EC2InstanceType &value)
EC2InstanceLimit & WithEC2InstanceType(EC2InstanceType &&value)
void SetEC2InstanceType(EC2InstanceType &&value)
JSON (JavaScript Object Notation).