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 <aws/ec2/model/ResponseError.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Xml
18 {
19   class XmlNode;
20 } // namespace Xml
21 } // namespace Utils
22 namespace EC2
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Describes a launch template version that could not be deleted.</p><p><h3>See
29    * Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateVersionsResponseErrorItem">AWS
31    * API Reference</a></p>
32    */
33   class AWS_EC2_API DeleteLaunchTemplateVersionsResponseErrorItem
34   {
35   public:
36     DeleteLaunchTemplateVersionsResponseErrorItem();
37     DeleteLaunchTemplateVersionsResponseErrorItem(const Aws::Utils::Xml::XmlNode& xmlNode);
38     DeleteLaunchTemplateVersionsResponseErrorItem& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
39 
40     void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
41     void OutputToStream(Aws::OStream& oStream, const char* location) const;
42 
43 
44     /**
45      * <p>The ID of the launch template.</p>
46      */
GetLaunchTemplateId()47     inline const Aws::String& GetLaunchTemplateId() const{ return m_launchTemplateId; }
48 
49     /**
50      * <p>The ID of the launch template.</p>
51      */
LaunchTemplateIdHasBeenSet()52     inline bool LaunchTemplateIdHasBeenSet() const { return m_launchTemplateIdHasBeenSet; }
53 
54     /**
55      * <p>The ID of the launch template.</p>
56      */
SetLaunchTemplateId(const Aws::String & value)57     inline void SetLaunchTemplateId(const Aws::String& value) { m_launchTemplateIdHasBeenSet = true; m_launchTemplateId = value; }
58 
59     /**
60      * <p>The ID of the launch template.</p>
61      */
SetLaunchTemplateId(Aws::String && value)62     inline void SetLaunchTemplateId(Aws::String&& value) { m_launchTemplateIdHasBeenSet = true; m_launchTemplateId = std::move(value); }
63 
64     /**
65      * <p>The ID of the launch template.</p>
66      */
SetLaunchTemplateId(const char * value)67     inline void SetLaunchTemplateId(const char* value) { m_launchTemplateIdHasBeenSet = true; m_launchTemplateId.assign(value); }
68 
69     /**
70      * <p>The ID of the launch template.</p>
71      */
WithLaunchTemplateId(const Aws::String & value)72     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateId(const Aws::String& value) { SetLaunchTemplateId(value); return *this;}
73 
74     /**
75      * <p>The ID of the launch template.</p>
76      */
WithLaunchTemplateId(Aws::String && value)77     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateId(Aws::String&& value) { SetLaunchTemplateId(std::move(value)); return *this;}
78 
79     /**
80      * <p>The ID of the launch template.</p>
81      */
WithLaunchTemplateId(const char * value)82     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateId(const char* value) { SetLaunchTemplateId(value); return *this;}
83 
84 
85     /**
86      * <p>The name of the launch template.</p>
87      */
GetLaunchTemplateName()88     inline const Aws::String& GetLaunchTemplateName() const{ return m_launchTemplateName; }
89 
90     /**
91      * <p>The name of the launch template.</p>
92      */
LaunchTemplateNameHasBeenSet()93     inline bool LaunchTemplateNameHasBeenSet() const { return m_launchTemplateNameHasBeenSet; }
94 
95     /**
96      * <p>The name of the launch template.</p>
97      */
SetLaunchTemplateName(const Aws::String & value)98     inline void SetLaunchTemplateName(const Aws::String& value) { m_launchTemplateNameHasBeenSet = true; m_launchTemplateName = value; }
99 
100     /**
101      * <p>The name of the launch template.</p>
102      */
SetLaunchTemplateName(Aws::String && value)103     inline void SetLaunchTemplateName(Aws::String&& value) { m_launchTemplateNameHasBeenSet = true; m_launchTemplateName = std::move(value); }
104 
105     /**
106      * <p>The name of the launch template.</p>
107      */
SetLaunchTemplateName(const char * value)108     inline void SetLaunchTemplateName(const char* value) { m_launchTemplateNameHasBeenSet = true; m_launchTemplateName.assign(value); }
109 
110     /**
111      * <p>The name of the launch template.</p>
112      */
WithLaunchTemplateName(const Aws::String & value)113     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateName(const Aws::String& value) { SetLaunchTemplateName(value); return *this;}
114 
115     /**
116      * <p>The name of the launch template.</p>
117      */
WithLaunchTemplateName(Aws::String && value)118     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateName(Aws::String&& value) { SetLaunchTemplateName(std::move(value)); return *this;}
119 
120     /**
121      * <p>The name of the launch template.</p>
122      */
WithLaunchTemplateName(const char * value)123     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithLaunchTemplateName(const char* value) { SetLaunchTemplateName(value); return *this;}
124 
125 
126     /**
127      * <p>The version number of the launch template.</p>
128      */
GetVersionNumber()129     inline long long GetVersionNumber() const{ return m_versionNumber; }
130 
131     /**
132      * <p>The version number of the launch template.</p>
133      */
VersionNumberHasBeenSet()134     inline bool VersionNumberHasBeenSet() const { return m_versionNumberHasBeenSet; }
135 
136     /**
137      * <p>The version number of the launch template.</p>
138      */
SetVersionNumber(long long value)139     inline void SetVersionNumber(long long value) { m_versionNumberHasBeenSet = true; m_versionNumber = value; }
140 
141     /**
142      * <p>The version number of the launch template.</p>
143      */
WithVersionNumber(long long value)144     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithVersionNumber(long long value) { SetVersionNumber(value); return *this;}
145 
146 
147     /**
148      * <p>Information about the error.</p>
149      */
GetResponseError()150     inline const ResponseError& GetResponseError() const{ return m_responseError; }
151 
152     /**
153      * <p>Information about the error.</p>
154      */
ResponseErrorHasBeenSet()155     inline bool ResponseErrorHasBeenSet() const { return m_responseErrorHasBeenSet; }
156 
157     /**
158      * <p>Information about the error.</p>
159      */
SetResponseError(const ResponseError & value)160     inline void SetResponseError(const ResponseError& value) { m_responseErrorHasBeenSet = true; m_responseError = value; }
161 
162     /**
163      * <p>Information about the error.</p>
164      */
SetResponseError(ResponseError && value)165     inline void SetResponseError(ResponseError&& value) { m_responseErrorHasBeenSet = true; m_responseError = std::move(value); }
166 
167     /**
168      * <p>Information about the error.</p>
169      */
WithResponseError(const ResponseError & value)170     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithResponseError(const ResponseError& value) { SetResponseError(value); return *this;}
171 
172     /**
173      * <p>Information about the error.</p>
174      */
WithResponseError(ResponseError && value)175     inline DeleteLaunchTemplateVersionsResponseErrorItem& WithResponseError(ResponseError&& value) { SetResponseError(std::move(value)); return *this;}
176 
177   private:
178 
179     Aws::String m_launchTemplateId;
180     bool m_launchTemplateIdHasBeenSet;
181 
182     Aws::String m_launchTemplateName;
183     bool m_launchTemplateNameHasBeenSet;
184 
185     long long m_versionNumber;
186     bool m_versionNumberHasBeenSet;
187 
188     ResponseError m_responseError;
189     bool m_responseErrorHasBeenSet;
190   };
191 
192 } // namespace Model
193 } // namespace EC2
194 } // namespace Aws
195