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/AWSVector.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/ec2/model/ResponseMetadata.h> 11 #include <aws/ec2/model/NetworkInterface.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 template<typename RESULT_TYPE> 17 class AmazonWebServiceResult; 18 19 namespace Utils 20 { 21 namespace Xml 22 { 23 class XmlDocument; 24 } // namespace Xml 25 } // namespace Utils 26 namespace EC2 27 { 28 namespace Model 29 { 30 /** 31 * <p>Contains the output of DescribeNetworkInterfaces.</p><p><h3>See Also:</h3> 32 * <a 33 * href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacesResult">AWS 34 * API Reference</a></p> 35 */ 36 class AWS_EC2_API DescribeNetworkInterfacesResponse 37 { 38 public: 39 DescribeNetworkInterfacesResponse(); 40 DescribeNetworkInterfacesResponse(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result); 41 DescribeNetworkInterfacesResponse& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result); 42 43 44 /** 45 * <p>Information about one or more network interfaces.</p> 46 */ GetNetworkInterfaces()47 inline const Aws::Vector<NetworkInterface>& GetNetworkInterfaces() const{ return m_networkInterfaces; } 48 49 /** 50 * <p>Information about one or more network interfaces.</p> 51 */ SetNetworkInterfaces(const Aws::Vector<NetworkInterface> & value)52 inline void SetNetworkInterfaces(const Aws::Vector<NetworkInterface>& value) { m_networkInterfaces = value; } 53 54 /** 55 * <p>Information about one or more network interfaces.</p> 56 */ SetNetworkInterfaces(Aws::Vector<NetworkInterface> && value)57 inline void SetNetworkInterfaces(Aws::Vector<NetworkInterface>&& value) { m_networkInterfaces = std::move(value); } 58 59 /** 60 * <p>Information about one or more network interfaces.</p> 61 */ WithNetworkInterfaces(const Aws::Vector<NetworkInterface> & value)62 inline DescribeNetworkInterfacesResponse& WithNetworkInterfaces(const Aws::Vector<NetworkInterface>& value) { SetNetworkInterfaces(value); return *this;} 63 64 /** 65 * <p>Information about one or more network interfaces.</p> 66 */ WithNetworkInterfaces(Aws::Vector<NetworkInterface> && value)67 inline DescribeNetworkInterfacesResponse& WithNetworkInterfaces(Aws::Vector<NetworkInterface>&& value) { SetNetworkInterfaces(std::move(value)); return *this;} 68 69 /** 70 * <p>Information about one or more network interfaces.</p> 71 */ AddNetworkInterfaces(const NetworkInterface & value)72 inline DescribeNetworkInterfacesResponse& AddNetworkInterfaces(const NetworkInterface& value) { m_networkInterfaces.push_back(value); return *this; } 73 74 /** 75 * <p>Information about one or more network interfaces.</p> 76 */ AddNetworkInterfaces(NetworkInterface && value)77 inline DescribeNetworkInterfacesResponse& AddNetworkInterfaces(NetworkInterface&& value) { m_networkInterfaces.push_back(std::move(value)); return *this; } 78 79 80 /** 81 * <p>The token to use to retrieve the next page of results. This value is 82 * <code>null</code> when there are no more results to return.</p> 83 */ GetNextToken()84 inline const Aws::String& GetNextToken() const{ return m_nextToken; } 85 86 /** 87 * <p>The token to use to retrieve the next page of results. This value is 88 * <code>null</code> when there are no more results to return.</p> 89 */ SetNextToken(const Aws::String & value)90 inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } 91 92 /** 93 * <p>The token to use to retrieve the next page of results. This value is 94 * <code>null</code> when there are no more results to return.</p> 95 */ SetNextToken(Aws::String && value)96 inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } 97 98 /** 99 * <p>The token to use to retrieve the next page of results. This value is 100 * <code>null</code> when there are no more results to return.</p> 101 */ SetNextToken(const char * value)102 inline void SetNextToken(const char* value) { m_nextToken.assign(value); } 103 104 /** 105 * <p>The token to use to retrieve the next page of results. This value is 106 * <code>null</code> when there are no more results to return.</p> 107 */ WithNextToken(const Aws::String & value)108 inline DescribeNetworkInterfacesResponse& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} 109 110 /** 111 * <p>The token to use to retrieve the next page of results. This value is 112 * <code>null</code> when there are no more results to return.</p> 113 */ WithNextToken(Aws::String && value)114 inline DescribeNetworkInterfacesResponse& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} 115 116 /** 117 * <p>The token to use to retrieve the next page of results. This value is 118 * <code>null</code> when there are no more results to return.</p> 119 */ WithNextToken(const char * value)120 inline DescribeNetworkInterfacesResponse& WithNextToken(const char* value) { SetNextToken(value); return *this;} 121 122 123 GetResponseMetadata()124 inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } 125 126 SetResponseMetadata(const ResponseMetadata & value)127 inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } 128 129 SetResponseMetadata(ResponseMetadata && value)130 inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } 131 132 WithResponseMetadata(const ResponseMetadata & value)133 inline DescribeNetworkInterfacesResponse& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} 134 135 WithResponseMetadata(ResponseMetadata && value)136 inline DescribeNetworkInterfacesResponse& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} 137 138 private: 139 140 Aws::Vector<NetworkInterface> m_networkInterfaces; 141 142 Aws::String m_nextToken; 143 144 ResponseMetadata m_responseMetadata; 145 }; 146 147 } // namespace Model 148 } // namespace EC2 149 } // namespace Aws 150