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/ec2/EC2_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Xml 17 { 18 class XmlNode; 19 } // namespace Xml 20 } // namespace Utils 21 namespace EC2 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Describes a CIDR block for an address pool.</p><p><h3>See Also:</h3> <a 28 * href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PoolCidrBlock">AWS 29 * API Reference</a></p> 30 */ 31 class AWS_EC2_API PoolCidrBlock 32 { 33 public: 34 PoolCidrBlock(); 35 PoolCidrBlock(const Aws::Utils::Xml::XmlNode& xmlNode); 36 PoolCidrBlock& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 37 38 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 39 void OutputToStream(Aws::OStream& oStream, const char* location) const; 40 41 42 /** 43 * <p>The CIDR block.</p> 44 */ GetCidr()45 inline const Aws::String& GetCidr() const{ return m_cidr; } 46 47 /** 48 * <p>The CIDR block.</p> 49 */ CidrHasBeenSet()50 inline bool CidrHasBeenSet() const { return m_cidrHasBeenSet; } 51 52 /** 53 * <p>The CIDR block.</p> 54 */ SetCidr(const Aws::String & value)55 inline void SetCidr(const Aws::String& value) { m_cidrHasBeenSet = true; m_cidr = value; } 56 57 /** 58 * <p>The CIDR block.</p> 59 */ SetCidr(Aws::String && value)60 inline void SetCidr(Aws::String&& value) { m_cidrHasBeenSet = true; m_cidr = std::move(value); } 61 62 /** 63 * <p>The CIDR block.</p> 64 */ SetCidr(const char * value)65 inline void SetCidr(const char* value) { m_cidrHasBeenSet = true; m_cidr.assign(value); } 66 67 /** 68 * <p>The CIDR block.</p> 69 */ WithCidr(const Aws::String & value)70 inline PoolCidrBlock& WithCidr(const Aws::String& value) { SetCidr(value); return *this;} 71 72 /** 73 * <p>The CIDR block.</p> 74 */ WithCidr(Aws::String && value)75 inline PoolCidrBlock& WithCidr(Aws::String&& value) { SetCidr(std::move(value)); return *this;} 76 77 /** 78 * <p>The CIDR block.</p> 79 */ WithCidr(const char * value)80 inline PoolCidrBlock& WithCidr(const char* value) { SetCidr(value); return *this;} 81 82 private: 83 84 Aws::String m_cidr; 85 bool m_cidrHasBeenSet; 86 }; 87 88 } // namespace Model 89 } // namespace EC2 90 } // namespace Aws 91