1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/kinesisanalyticsv2/KinesisAnalyticsV2_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSVector.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace KinesisAnalyticsV2 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Describes the parameters of a VPC used by the application.</p><p><h3>See 29 * Also:</h3> <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/kinesisanalyticsv2-2018-05-23/VpcConfiguration">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_KINESISANALYTICSV2_API VpcConfiguration 34 { 35 public: 36 VpcConfiguration(); 37 VpcConfiguration(Aws::Utils::Json::JsonView jsonValue); 38 VpcConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The array of <a 44 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 45 * IDs used by the VPC configuration.</p> 46 */ GetSubnetIds()47 inline const Aws::Vector<Aws::String>& GetSubnetIds() const{ return m_subnetIds; } 48 49 /** 50 * <p>The array of <a 51 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 52 * IDs used by the VPC configuration.</p> 53 */ SubnetIdsHasBeenSet()54 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; } 55 56 /** 57 * <p>The array of <a 58 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 59 * IDs used by the VPC configuration.</p> 60 */ SetSubnetIds(const Aws::Vector<Aws::String> & value)61 inline void SetSubnetIds(const Aws::Vector<Aws::String>& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; } 62 63 /** 64 * <p>The array of <a 65 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 66 * IDs used by the VPC configuration.</p> 67 */ SetSubnetIds(Aws::Vector<Aws::String> && value)68 inline void SetSubnetIds(Aws::Vector<Aws::String>&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); } 69 70 /** 71 * <p>The array of <a 72 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 73 * IDs used by the VPC configuration.</p> 74 */ WithSubnetIds(const Aws::Vector<Aws::String> & value)75 inline VpcConfiguration& WithSubnetIds(const Aws::Vector<Aws::String>& value) { SetSubnetIds(value); return *this;} 76 77 /** 78 * <p>The array of <a 79 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 80 * IDs used by the VPC configuration.</p> 81 */ WithSubnetIds(Aws::Vector<Aws::String> && value)82 inline VpcConfiguration& WithSubnetIds(Aws::Vector<Aws::String>&& value) { SetSubnetIds(std::move(value)); return *this;} 83 84 /** 85 * <p>The array of <a 86 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 87 * IDs used by the VPC configuration.</p> 88 */ AddSubnetIds(const Aws::String & value)89 inline VpcConfiguration& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } 90 91 /** 92 * <p>The array of <a 93 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 94 * IDs used by the VPC configuration.</p> 95 */ AddSubnetIds(Aws::String && value)96 inline VpcConfiguration& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; } 97 98 /** 99 * <p>The array of <a 100 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Subnet.html">Subnet</a> 101 * IDs used by the VPC configuration.</p> 102 */ AddSubnetIds(const char * value)103 inline VpcConfiguration& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } 104 105 106 /** 107 * <p>The array of <a 108 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 109 * IDs used by the VPC configuration.</p> 110 */ GetSecurityGroupIds()111 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; } 112 113 /** 114 * <p>The array of <a 115 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 116 * IDs used by the VPC configuration.</p> 117 */ SecurityGroupIdsHasBeenSet()118 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; } 119 120 /** 121 * <p>The array of <a 122 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 123 * IDs used by the VPC configuration.</p> 124 */ SetSecurityGroupIds(const Aws::Vector<Aws::String> & value)125 inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; } 126 127 /** 128 * <p>The array of <a 129 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 130 * IDs used by the VPC configuration.</p> 131 */ SetSecurityGroupIds(Aws::Vector<Aws::String> && value)132 inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); } 133 134 /** 135 * <p>The array of <a 136 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 137 * IDs used by the VPC configuration.</p> 138 */ WithSecurityGroupIds(const Aws::Vector<Aws::String> & value)139 inline VpcConfiguration& WithSecurityGroupIds(const Aws::Vector<Aws::String>& value) { SetSecurityGroupIds(value); return *this;} 140 141 /** 142 * <p>The array of <a 143 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 144 * IDs used by the VPC configuration.</p> 145 */ WithSecurityGroupIds(Aws::Vector<Aws::String> && value)146 inline VpcConfiguration& WithSecurityGroupIds(Aws::Vector<Aws::String>&& value) { SetSecurityGroupIds(std::move(value)); return *this;} 147 148 /** 149 * <p>The array of <a 150 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 151 * IDs used by the VPC configuration.</p> 152 */ AddSecurityGroupIds(const Aws::String & value)153 inline VpcConfiguration& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } 154 155 /** 156 * <p>The array of <a 157 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 158 * IDs used by the VPC configuration.</p> 159 */ AddSecurityGroupIds(Aws::String && value)160 inline VpcConfiguration& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; } 161 162 /** 163 * <p>The array of <a 164 * href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SecurityGroup.html">SecurityGroup</a> 165 * IDs used by the VPC configuration.</p> 166 */ AddSecurityGroupIds(const char * value)167 inline VpcConfiguration& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } 168 169 private: 170 171 Aws::Vector<Aws::String> m_subnetIds; 172 bool m_subnetIdsHasBeenSet; 173 174 Aws::Vector<Aws::String> m_securityGroupIds; 175 bool m_securityGroupIdsHasBeenSet; 176 }; 177 178 } // namespace Model 179 } // namespace KinesisAnalyticsV2 180 } // namespace Aws 181