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/cloudformation/CloudFormation_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <aws/cloudformation/model/ResourceStatus.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace Utils
17 {
18 namespace Xml
19 {
20   class XmlNode;
21 } // namespace Xml
22 } // namespace Utils
23 namespace CloudFormation
24 {
25 namespace Model
26 {
27 
28   /**
29    * <p>The StackEvent data type.</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/StackEvent">AWS
31    * API Reference</a></p>
32    */
33   class AWS_CLOUDFORMATION_API StackEvent
34   {
35   public:
36     StackEvent();
37     StackEvent(const Aws::Utils::Xml::XmlNode& xmlNode);
38     StackEvent& 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 unique ID name of the instance of the stack.</p>
46      */
GetStackId()47     inline const Aws::String& GetStackId() const{ return m_stackId; }
48 
49     /**
50      * <p>The unique ID name of the instance of the stack.</p>
51      */
StackIdHasBeenSet()52     inline bool StackIdHasBeenSet() const { return m_stackIdHasBeenSet; }
53 
54     /**
55      * <p>The unique ID name of the instance of the stack.</p>
56      */
SetStackId(const Aws::String & value)57     inline void SetStackId(const Aws::String& value) { m_stackIdHasBeenSet = true; m_stackId = value; }
58 
59     /**
60      * <p>The unique ID name of the instance of the stack.</p>
61      */
SetStackId(Aws::String && value)62     inline void SetStackId(Aws::String&& value) { m_stackIdHasBeenSet = true; m_stackId = std::move(value); }
63 
64     /**
65      * <p>The unique ID name of the instance of the stack.</p>
66      */
SetStackId(const char * value)67     inline void SetStackId(const char* value) { m_stackIdHasBeenSet = true; m_stackId.assign(value); }
68 
69     /**
70      * <p>The unique ID name of the instance of the stack.</p>
71      */
WithStackId(const Aws::String & value)72     inline StackEvent& WithStackId(const Aws::String& value) { SetStackId(value); return *this;}
73 
74     /**
75      * <p>The unique ID name of the instance of the stack.</p>
76      */
WithStackId(Aws::String && value)77     inline StackEvent& WithStackId(Aws::String&& value) { SetStackId(std::move(value)); return *this;}
78 
79     /**
80      * <p>The unique ID name of the instance of the stack.</p>
81      */
WithStackId(const char * value)82     inline StackEvent& WithStackId(const char* value) { SetStackId(value); return *this;}
83 
84 
85     /**
86      * <p>The unique ID of this event.</p>
87      */
GetEventId()88     inline const Aws::String& GetEventId() const{ return m_eventId; }
89 
90     /**
91      * <p>The unique ID of this event.</p>
92      */
EventIdHasBeenSet()93     inline bool EventIdHasBeenSet() const { return m_eventIdHasBeenSet; }
94 
95     /**
96      * <p>The unique ID of this event.</p>
97      */
SetEventId(const Aws::String & value)98     inline void SetEventId(const Aws::String& value) { m_eventIdHasBeenSet = true; m_eventId = value; }
99 
100     /**
101      * <p>The unique ID of this event.</p>
102      */
SetEventId(Aws::String && value)103     inline void SetEventId(Aws::String&& value) { m_eventIdHasBeenSet = true; m_eventId = std::move(value); }
104 
105     /**
106      * <p>The unique ID of this event.</p>
107      */
SetEventId(const char * value)108     inline void SetEventId(const char* value) { m_eventIdHasBeenSet = true; m_eventId.assign(value); }
109 
110     /**
111      * <p>The unique ID of this event.</p>
112      */
WithEventId(const Aws::String & value)113     inline StackEvent& WithEventId(const Aws::String& value) { SetEventId(value); return *this;}
114 
115     /**
116      * <p>The unique ID of this event.</p>
117      */
WithEventId(Aws::String && value)118     inline StackEvent& WithEventId(Aws::String&& value) { SetEventId(std::move(value)); return *this;}
119 
120     /**
121      * <p>The unique ID of this event.</p>
122      */
WithEventId(const char * value)123     inline StackEvent& WithEventId(const char* value) { SetEventId(value); return *this;}
124 
125 
126     /**
127      * <p>The name associated with a stack.</p>
128      */
GetStackName()129     inline const Aws::String& GetStackName() const{ return m_stackName; }
130 
131     /**
132      * <p>The name associated with a stack.</p>
133      */
StackNameHasBeenSet()134     inline bool StackNameHasBeenSet() const { return m_stackNameHasBeenSet; }
135 
136     /**
137      * <p>The name associated with a stack.</p>
138      */
SetStackName(const Aws::String & value)139     inline void SetStackName(const Aws::String& value) { m_stackNameHasBeenSet = true; m_stackName = value; }
140 
141     /**
142      * <p>The name associated with a stack.</p>
143      */
SetStackName(Aws::String && value)144     inline void SetStackName(Aws::String&& value) { m_stackNameHasBeenSet = true; m_stackName = std::move(value); }
145 
146     /**
147      * <p>The name associated with a stack.</p>
148      */
SetStackName(const char * value)149     inline void SetStackName(const char* value) { m_stackNameHasBeenSet = true; m_stackName.assign(value); }
150 
151     /**
152      * <p>The name associated with a stack.</p>
153      */
WithStackName(const Aws::String & value)154     inline StackEvent& WithStackName(const Aws::String& value) { SetStackName(value); return *this;}
155 
156     /**
157      * <p>The name associated with a stack.</p>
158      */
WithStackName(Aws::String && value)159     inline StackEvent& WithStackName(Aws::String&& value) { SetStackName(std::move(value)); return *this;}
160 
161     /**
162      * <p>The name associated with a stack.</p>
163      */
WithStackName(const char * value)164     inline StackEvent& WithStackName(const char* value) { SetStackName(value); return *this;}
165 
166 
167     /**
168      * <p>The logical name of the resource specified in the template.</p>
169      */
GetLogicalResourceId()170     inline const Aws::String& GetLogicalResourceId() const{ return m_logicalResourceId; }
171 
172     /**
173      * <p>The logical name of the resource specified in the template.</p>
174      */
LogicalResourceIdHasBeenSet()175     inline bool LogicalResourceIdHasBeenSet() const { return m_logicalResourceIdHasBeenSet; }
176 
177     /**
178      * <p>The logical name of the resource specified in the template.</p>
179      */
SetLogicalResourceId(const Aws::String & value)180     inline void SetLogicalResourceId(const Aws::String& value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId = value; }
181 
182     /**
183      * <p>The logical name of the resource specified in the template.</p>
184      */
SetLogicalResourceId(Aws::String && value)185     inline void SetLogicalResourceId(Aws::String&& value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId = std::move(value); }
186 
187     /**
188      * <p>The logical name of the resource specified in the template.</p>
189      */
SetLogicalResourceId(const char * value)190     inline void SetLogicalResourceId(const char* value) { m_logicalResourceIdHasBeenSet = true; m_logicalResourceId.assign(value); }
191 
192     /**
193      * <p>The logical name of the resource specified in the template.</p>
194      */
WithLogicalResourceId(const Aws::String & value)195     inline StackEvent& WithLogicalResourceId(const Aws::String& value) { SetLogicalResourceId(value); return *this;}
196 
197     /**
198      * <p>The logical name of the resource specified in the template.</p>
199      */
WithLogicalResourceId(Aws::String && value)200     inline StackEvent& WithLogicalResourceId(Aws::String&& value) { SetLogicalResourceId(std::move(value)); return *this;}
201 
202     /**
203      * <p>The logical name of the resource specified in the template.</p>
204      */
WithLogicalResourceId(const char * value)205     inline StackEvent& WithLogicalResourceId(const char* value) { SetLogicalResourceId(value); return *this;}
206 
207 
208     /**
209      * <p>The name or unique identifier associated with the physical instance of the
210      * resource.</p>
211      */
GetPhysicalResourceId()212     inline const Aws::String& GetPhysicalResourceId() const{ return m_physicalResourceId; }
213 
214     /**
215      * <p>The name or unique identifier associated with the physical instance of the
216      * resource.</p>
217      */
PhysicalResourceIdHasBeenSet()218     inline bool PhysicalResourceIdHasBeenSet() const { return m_physicalResourceIdHasBeenSet; }
219 
220     /**
221      * <p>The name or unique identifier associated with the physical instance of the
222      * resource.</p>
223      */
SetPhysicalResourceId(const Aws::String & value)224     inline void SetPhysicalResourceId(const Aws::String& value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId = value; }
225 
226     /**
227      * <p>The name or unique identifier associated with the physical instance of the
228      * resource.</p>
229      */
SetPhysicalResourceId(Aws::String && value)230     inline void SetPhysicalResourceId(Aws::String&& value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId = std::move(value); }
231 
232     /**
233      * <p>The name or unique identifier associated with the physical instance of the
234      * resource.</p>
235      */
SetPhysicalResourceId(const char * value)236     inline void SetPhysicalResourceId(const char* value) { m_physicalResourceIdHasBeenSet = true; m_physicalResourceId.assign(value); }
237 
238     /**
239      * <p>The name or unique identifier associated with the physical instance of the
240      * resource.</p>
241      */
WithPhysicalResourceId(const Aws::String & value)242     inline StackEvent& WithPhysicalResourceId(const Aws::String& value) { SetPhysicalResourceId(value); return *this;}
243 
244     /**
245      * <p>The name or unique identifier associated with the physical instance of the
246      * resource.</p>
247      */
WithPhysicalResourceId(Aws::String && value)248     inline StackEvent& WithPhysicalResourceId(Aws::String&& value) { SetPhysicalResourceId(std::move(value)); return *this;}
249 
250     /**
251      * <p>The name or unique identifier associated with the physical instance of the
252      * resource.</p>
253      */
WithPhysicalResourceId(const char * value)254     inline StackEvent& WithPhysicalResourceId(const char* value) { SetPhysicalResourceId(value); return *this;}
255 
256 
257     /**
258      * <p>Type of resource. (For more information, go to <a
259      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
260      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
261      */
GetResourceType()262     inline const Aws::String& GetResourceType() const{ return m_resourceType; }
263 
264     /**
265      * <p>Type of resource. (For more information, go to <a
266      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
267      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
268      */
ResourceTypeHasBeenSet()269     inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; }
270 
271     /**
272      * <p>Type of resource. (For more information, go to <a
273      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
274      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
275      */
SetResourceType(const Aws::String & value)276     inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; }
277 
278     /**
279      * <p>Type of resource. (For more information, go to <a
280      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
281      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
282      */
SetResourceType(Aws::String && value)283     inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); }
284 
285     /**
286      * <p>Type of resource. (For more information, go to <a
287      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
288      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
289      */
SetResourceType(const char * value)290     inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); }
291 
292     /**
293      * <p>Type of resource. (For more information, go to <a
294      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
295      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
296      */
WithResourceType(const Aws::String & value)297     inline StackEvent& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;}
298 
299     /**
300      * <p>Type of resource. (For more information, go to <a
301      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
302      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
303      */
WithResourceType(Aws::String && value)304     inline StackEvent& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;}
305 
306     /**
307      * <p>Type of resource. (For more information, go to <a
308      * href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html">Amazon
309      * Web Services Resource Types Reference</a> in the CloudFormation User Guide.)</p>
310      */
WithResourceType(const char * value)311     inline StackEvent& WithResourceType(const char* value) { SetResourceType(value); return *this;}
312 
313 
314     /**
315      * <p>Time the status was updated.</p>
316      */
GetTimestamp()317     inline const Aws::Utils::DateTime& GetTimestamp() const{ return m_timestamp; }
318 
319     /**
320      * <p>Time the status was updated.</p>
321      */
TimestampHasBeenSet()322     inline bool TimestampHasBeenSet() const { return m_timestampHasBeenSet; }
323 
324     /**
325      * <p>Time the status was updated.</p>
326      */
SetTimestamp(const Aws::Utils::DateTime & value)327     inline void SetTimestamp(const Aws::Utils::DateTime& value) { m_timestampHasBeenSet = true; m_timestamp = value; }
328 
329     /**
330      * <p>Time the status was updated.</p>
331      */
SetTimestamp(Aws::Utils::DateTime && value)332     inline void SetTimestamp(Aws::Utils::DateTime&& value) { m_timestampHasBeenSet = true; m_timestamp = std::move(value); }
333 
334     /**
335      * <p>Time the status was updated.</p>
336      */
WithTimestamp(const Aws::Utils::DateTime & value)337     inline StackEvent& WithTimestamp(const Aws::Utils::DateTime& value) { SetTimestamp(value); return *this;}
338 
339     /**
340      * <p>Time the status was updated.</p>
341      */
WithTimestamp(Aws::Utils::DateTime && value)342     inline StackEvent& WithTimestamp(Aws::Utils::DateTime&& value) { SetTimestamp(std::move(value)); return *this;}
343 
344 
345     /**
346      * <p>Current status of the resource.</p>
347      */
GetResourceStatus()348     inline const ResourceStatus& GetResourceStatus() const{ return m_resourceStatus; }
349 
350     /**
351      * <p>Current status of the resource.</p>
352      */
ResourceStatusHasBeenSet()353     inline bool ResourceStatusHasBeenSet() const { return m_resourceStatusHasBeenSet; }
354 
355     /**
356      * <p>Current status of the resource.</p>
357      */
SetResourceStatus(const ResourceStatus & value)358     inline void SetResourceStatus(const ResourceStatus& value) { m_resourceStatusHasBeenSet = true; m_resourceStatus = value; }
359 
360     /**
361      * <p>Current status of the resource.</p>
362      */
SetResourceStatus(ResourceStatus && value)363     inline void SetResourceStatus(ResourceStatus&& value) { m_resourceStatusHasBeenSet = true; m_resourceStatus = std::move(value); }
364 
365     /**
366      * <p>Current status of the resource.</p>
367      */
WithResourceStatus(const ResourceStatus & value)368     inline StackEvent& WithResourceStatus(const ResourceStatus& value) { SetResourceStatus(value); return *this;}
369 
370     /**
371      * <p>Current status of the resource.</p>
372      */
WithResourceStatus(ResourceStatus && value)373     inline StackEvent& WithResourceStatus(ResourceStatus&& value) { SetResourceStatus(std::move(value)); return *this;}
374 
375 
376     /**
377      * <p>Success/failure message associated with the resource.</p>
378      */
GetResourceStatusReason()379     inline const Aws::String& GetResourceStatusReason() const{ return m_resourceStatusReason; }
380 
381     /**
382      * <p>Success/failure message associated with the resource.</p>
383      */
ResourceStatusReasonHasBeenSet()384     inline bool ResourceStatusReasonHasBeenSet() const { return m_resourceStatusReasonHasBeenSet; }
385 
386     /**
387      * <p>Success/failure message associated with the resource.</p>
388      */
SetResourceStatusReason(const Aws::String & value)389     inline void SetResourceStatusReason(const Aws::String& value) { m_resourceStatusReasonHasBeenSet = true; m_resourceStatusReason = value; }
390 
391     /**
392      * <p>Success/failure message associated with the resource.</p>
393      */
SetResourceStatusReason(Aws::String && value)394     inline void SetResourceStatusReason(Aws::String&& value) { m_resourceStatusReasonHasBeenSet = true; m_resourceStatusReason = std::move(value); }
395 
396     /**
397      * <p>Success/failure message associated with the resource.</p>
398      */
SetResourceStatusReason(const char * value)399     inline void SetResourceStatusReason(const char* value) { m_resourceStatusReasonHasBeenSet = true; m_resourceStatusReason.assign(value); }
400 
401     /**
402      * <p>Success/failure message associated with the resource.</p>
403      */
WithResourceStatusReason(const Aws::String & value)404     inline StackEvent& WithResourceStatusReason(const Aws::String& value) { SetResourceStatusReason(value); return *this;}
405 
406     /**
407      * <p>Success/failure message associated with the resource.</p>
408      */
WithResourceStatusReason(Aws::String && value)409     inline StackEvent& WithResourceStatusReason(Aws::String&& value) { SetResourceStatusReason(std::move(value)); return *this;}
410 
411     /**
412      * <p>Success/failure message associated with the resource.</p>
413      */
WithResourceStatusReason(const char * value)414     inline StackEvent& WithResourceStatusReason(const char* value) { SetResourceStatusReason(value); return *this;}
415 
416 
417     /**
418      * <p>BLOB of the properties used to create the resource.</p>
419      */
GetResourceProperties()420     inline const Aws::String& GetResourceProperties() const{ return m_resourceProperties; }
421 
422     /**
423      * <p>BLOB of the properties used to create the resource.</p>
424      */
ResourcePropertiesHasBeenSet()425     inline bool ResourcePropertiesHasBeenSet() const { return m_resourcePropertiesHasBeenSet; }
426 
427     /**
428      * <p>BLOB of the properties used to create the resource.</p>
429      */
SetResourceProperties(const Aws::String & value)430     inline void SetResourceProperties(const Aws::String& value) { m_resourcePropertiesHasBeenSet = true; m_resourceProperties = value; }
431 
432     /**
433      * <p>BLOB of the properties used to create the resource.</p>
434      */
SetResourceProperties(Aws::String && value)435     inline void SetResourceProperties(Aws::String&& value) { m_resourcePropertiesHasBeenSet = true; m_resourceProperties = std::move(value); }
436 
437     /**
438      * <p>BLOB of the properties used to create the resource.</p>
439      */
SetResourceProperties(const char * value)440     inline void SetResourceProperties(const char* value) { m_resourcePropertiesHasBeenSet = true; m_resourceProperties.assign(value); }
441 
442     /**
443      * <p>BLOB of the properties used to create the resource.</p>
444      */
WithResourceProperties(const Aws::String & value)445     inline StackEvent& WithResourceProperties(const Aws::String& value) { SetResourceProperties(value); return *this;}
446 
447     /**
448      * <p>BLOB of the properties used to create the resource.</p>
449      */
WithResourceProperties(Aws::String && value)450     inline StackEvent& WithResourceProperties(Aws::String&& value) { SetResourceProperties(std::move(value)); return *this;}
451 
452     /**
453      * <p>BLOB of the properties used to create the resource.</p>
454      */
WithResourceProperties(const char * value)455     inline StackEvent& WithResourceProperties(const char* value) { SetResourceProperties(value); return *this;}
456 
457 
458     /**
459      * <p>The token passed to the operation that generated this event.</p> <p>All
460      * events triggered by a given stack operation are assigned the same client request
461      * token, which you can use to track operations. For example, if you execute a
462      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
463      * the <code>StackEvents</code> generated by that operation will have
464      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
465      * console, stack operations display the client request token on the Events tab.
466      * Stack operations that are initiated from the console use the token format
467      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
468      * operation . For example, if you create a stack using the console, each stack
469      * event would be assigned the same token in the following format:
470      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
471      */
GetClientRequestToken()472     inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; }
473 
474     /**
475      * <p>The token passed to the operation that generated this event.</p> <p>All
476      * events triggered by a given stack operation are assigned the same client request
477      * token, which you can use to track operations. For example, if you execute a
478      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
479      * the <code>StackEvents</code> generated by that operation will have
480      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
481      * console, stack operations display the client request token on the Events tab.
482      * Stack operations that are initiated from the console use the token format
483      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
484      * operation . For example, if you create a stack using the console, each stack
485      * event would be assigned the same token in the following format:
486      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
487      */
ClientRequestTokenHasBeenSet()488     inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
489 
490     /**
491      * <p>The token passed to the operation that generated this event.</p> <p>All
492      * events triggered by a given stack operation are assigned the same client request
493      * token, which you can use to track operations. For example, if you execute a
494      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
495      * the <code>StackEvents</code> generated by that operation will have
496      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
497      * console, stack operations display the client request token on the Events tab.
498      * Stack operations that are initiated from the console use the token format
499      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
500      * operation . For example, if you create a stack using the console, each stack
501      * event would be assigned the same token in the following format:
502      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
503      */
SetClientRequestToken(const Aws::String & value)504     inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; }
505 
506     /**
507      * <p>The token passed to the operation that generated this event.</p> <p>All
508      * events triggered by a given stack operation are assigned the same client request
509      * token, which you can use to track operations. For example, if you execute a
510      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
511      * the <code>StackEvents</code> generated by that operation will have
512      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
513      * console, stack operations display the client request token on the Events tab.
514      * Stack operations that are initiated from the console use the token format
515      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
516      * operation . For example, if you create a stack using the console, each stack
517      * event would be assigned the same token in the following format:
518      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
519      */
SetClientRequestToken(Aws::String && value)520     inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); }
521 
522     /**
523      * <p>The token passed to the operation that generated this event.</p> <p>All
524      * events triggered by a given stack operation are assigned the same client request
525      * token, which you can use to track operations. For example, if you execute a
526      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
527      * the <code>StackEvents</code> generated by that operation will have
528      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
529      * console, stack operations display the client request token on the Events tab.
530      * Stack operations that are initiated from the console use the token format
531      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
532      * operation . For example, if you create a stack using the console, each stack
533      * event would be assigned the same token in the following format:
534      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
535      */
SetClientRequestToken(const char * value)536     inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); }
537 
538     /**
539      * <p>The token passed to the operation that generated this event.</p> <p>All
540      * events triggered by a given stack operation are assigned the same client request
541      * token, which you can use to track operations. For example, if you execute a
542      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
543      * the <code>StackEvents</code> generated by that operation will have
544      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
545      * console, stack operations display the client request token on the Events tab.
546      * Stack operations that are initiated from the console use the token format
547      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
548      * operation . For example, if you create a stack using the console, each stack
549      * event would be assigned the same token in the following format:
550      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
551      */
WithClientRequestToken(const Aws::String & value)552     inline StackEvent& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;}
553 
554     /**
555      * <p>The token passed to the operation that generated this event.</p> <p>All
556      * events triggered by a given stack operation are assigned the same client request
557      * token, which you can use to track operations. For example, if you execute a
558      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
559      * the <code>StackEvents</code> generated by that operation will have
560      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
561      * console, stack operations display the client request token on the Events tab.
562      * Stack operations that are initiated from the console use the token format
563      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
564      * operation . For example, if you create a stack using the console, each stack
565      * event would be assigned the same token in the following format:
566      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
567      */
WithClientRequestToken(Aws::String && value)568     inline StackEvent& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;}
569 
570     /**
571      * <p>The token passed to the operation that generated this event.</p> <p>All
572      * events triggered by a given stack operation are assigned the same client request
573      * token, which you can use to track operations. For example, if you execute a
574      * <code>CreateStack</code> operation with the token <code>token1</code>, then all
575      * the <code>StackEvents</code> generated by that operation will have
576      * <code>ClientRequestToken</code> set as <code>token1</code>.</p> <p>In the
577      * console, stack operations display the client request token on the Events tab.
578      * Stack operations that are initiated from the console use the token format
579      * <i>Console-StackOperation-ID</i>, which helps you easily identify the stack
580      * operation . For example, if you create a stack using the console, each stack
581      * event would be assigned the same token in the following format:
582      * <code>Console-CreateStack-7f59c3cf-00d2-40c7-b2ff-e75db0987002</code>. </p>
583      */
WithClientRequestToken(const char * value)584     inline StackEvent& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;}
585 
586   private:
587 
588     Aws::String m_stackId;
589     bool m_stackIdHasBeenSet;
590 
591     Aws::String m_eventId;
592     bool m_eventIdHasBeenSet;
593 
594     Aws::String m_stackName;
595     bool m_stackNameHasBeenSet;
596 
597     Aws::String m_logicalResourceId;
598     bool m_logicalResourceIdHasBeenSet;
599 
600     Aws::String m_physicalResourceId;
601     bool m_physicalResourceIdHasBeenSet;
602 
603     Aws::String m_resourceType;
604     bool m_resourceTypeHasBeenSet;
605 
606     Aws::Utils::DateTime m_timestamp;
607     bool m_timestampHasBeenSet;
608 
609     ResourceStatus m_resourceStatus;
610     bool m_resourceStatusHasBeenSet;
611 
612     Aws::String m_resourceStatusReason;
613     bool m_resourceStatusReasonHasBeenSet;
614 
615     Aws::String m_resourceProperties;
616     bool m_resourcePropertiesHasBeenSet;
617 
618     Aws::String m_clientRequestToken;
619     bool m_clientRequestTokenHasBeenSet;
620   };
621 
622 } // namespace Model
623 } // namespace CloudFormation
624 } // namespace Aws
625