AWS SDK for C++  0.12.9
AWS SDK for C++
ModifyInstanceGroupsRequest.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
20 
21 namespace Aws
22 {
23 namespace EMR
24 {
25 namespace Model
26 {
27 
32  {
33  public:
35  Aws::String SerializePayload() const override;
36 
37  Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
38 
42  inline const Aws::Vector<InstanceGroupModifyConfig>& GetInstanceGroups() const{ return m_instanceGroups; }
43 
47  inline void SetInstanceGroups(const Aws::Vector<InstanceGroupModifyConfig>& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups = value; }
48 
52  inline void SetInstanceGroups(Aws::Vector<InstanceGroupModifyConfig>&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups = value; }
53 
57  inline ModifyInstanceGroupsRequest& WithInstanceGroups(const Aws::Vector<InstanceGroupModifyConfig>& value) { SetInstanceGroups(value); return *this;}
58 
62  inline ModifyInstanceGroupsRequest& WithInstanceGroups(Aws::Vector<InstanceGroupModifyConfig>&& value) { SetInstanceGroups(value); return *this;}
63 
67  inline ModifyInstanceGroupsRequest& AddInstanceGroups(const InstanceGroupModifyConfig& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups.push_back(value); return *this; }
68 
72  inline ModifyInstanceGroupsRequest& AddInstanceGroups(InstanceGroupModifyConfig&& value) { m_instanceGroupsHasBeenSet = true; m_instanceGroups.push_back(value); return *this; }
73 
74  private:
76  bool m_instanceGroupsHasBeenSet;
77  };
78 
79 } // namespace Model
80 } // namespace EMR
81 } // namespace Aws
void SetInstanceGroups(Aws::Vector< InstanceGroupModifyConfig > &&value)
ModifyInstanceGroupsRequest & WithInstanceGroups(Aws::Vector< InstanceGroupModifyConfig > &&value)
ModifyInstanceGroupsRequest & AddInstanceGroups(InstanceGroupModifyConfig &&value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
Definition: HttpTypes.h:63
ModifyInstanceGroupsRequest & AddInstanceGroups(const InstanceGroupModifyConfig &value)
ModifyInstanceGroupsRequest & WithInstanceGroups(const Aws::Vector< InstanceGroupModifyConfig > &value)
void SetInstanceGroups(const Aws::Vector< InstanceGroupModifyConfig > &value)
const Aws::Vector< InstanceGroupModifyConfig > & GetInstanceGroups() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_EMR_API
Definition: EMR_EXPORTS.h:34
JSON (JavaScript Object Notation).