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/AWSVector.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/cloudformation/model/ResponseMetadata.h>
11 #include <aws/cloudformation/model/StackEvent.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 CloudFormation
27 {
28 namespace Model
29 {
30   /**
31    * <p>The output for a <a>DescribeStackEvents</a> action.</p><p><h3>See Also:</h3>
32    * <a
33    * href="http://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/DescribeStackEventsOutput">AWS
34    * API Reference</a></p>
35    */
36   class AWS_CLOUDFORMATION_API DescribeStackEventsResult
37   {
38   public:
39     DescribeStackEventsResult();
40     DescribeStackEventsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
41     DescribeStackEventsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
42 
43 
44     /**
45      * <p>A list of <code>StackEvents</code> structures.</p>
46      */
GetStackEvents()47     inline const Aws::Vector<StackEvent>& GetStackEvents() const{ return m_stackEvents; }
48 
49     /**
50      * <p>A list of <code>StackEvents</code> structures.</p>
51      */
SetStackEvents(const Aws::Vector<StackEvent> & value)52     inline void SetStackEvents(const Aws::Vector<StackEvent>& value) { m_stackEvents = value; }
53 
54     /**
55      * <p>A list of <code>StackEvents</code> structures.</p>
56      */
SetStackEvents(Aws::Vector<StackEvent> && value)57     inline void SetStackEvents(Aws::Vector<StackEvent>&& value) { m_stackEvents = std::move(value); }
58 
59     /**
60      * <p>A list of <code>StackEvents</code> structures.</p>
61      */
WithStackEvents(const Aws::Vector<StackEvent> & value)62     inline DescribeStackEventsResult& WithStackEvents(const Aws::Vector<StackEvent>& value) { SetStackEvents(value); return *this;}
63 
64     /**
65      * <p>A list of <code>StackEvents</code> structures.</p>
66      */
WithStackEvents(Aws::Vector<StackEvent> && value)67     inline DescribeStackEventsResult& WithStackEvents(Aws::Vector<StackEvent>&& value) { SetStackEvents(std::move(value)); return *this;}
68 
69     /**
70      * <p>A list of <code>StackEvents</code> structures.</p>
71      */
AddStackEvents(const StackEvent & value)72     inline DescribeStackEventsResult& AddStackEvents(const StackEvent& value) { m_stackEvents.push_back(value); return *this; }
73 
74     /**
75      * <p>A list of <code>StackEvents</code> structures.</p>
76      */
AddStackEvents(StackEvent && value)77     inline DescribeStackEventsResult& AddStackEvents(StackEvent&& value) { m_stackEvents.push_back(std::move(value)); return *this; }
78 
79 
80     /**
81      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
82      * events. If no additional page exists, this value is null.</p>
83      */
GetNextToken()84     inline const Aws::String& GetNextToken() const{ return m_nextToken; }
85 
86     /**
87      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
88      * events. If no additional page exists, this value is null.</p>
89      */
SetNextToken(const Aws::String & value)90     inline void SetNextToken(const Aws::String& value) { m_nextToken = value; }
91 
92     /**
93      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
94      * events. If no additional page exists, this value is null.</p>
95      */
SetNextToken(Aws::String && value)96     inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); }
97 
98     /**
99      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
100      * events. If no additional page exists, this value is null.</p>
101      */
SetNextToken(const char * value)102     inline void SetNextToken(const char* value) { m_nextToken.assign(value); }
103 
104     /**
105      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
106      * events. If no additional page exists, this value is null.</p>
107      */
WithNextToken(const Aws::String & value)108     inline DescribeStackEventsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;}
109 
110     /**
111      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
112      * events. If no additional page exists, this value is null.</p>
113      */
WithNextToken(Aws::String && value)114     inline DescribeStackEventsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;}
115 
116     /**
117      * <p>If the output exceeds 1 MB in size, a string that identifies the next page of
118      * events. If no additional page exists, this value is null.</p>
119      */
WithNextToken(const char * value)120     inline DescribeStackEventsResult& 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 DescribeStackEventsResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;}
134 
135 
WithResponseMetadata(ResponseMetadata && value)136     inline DescribeStackEventsResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;}
137 
138   private:
139 
140     Aws::Vector<StackEvent> m_stackEvents;
141 
142     Aws::String m_nextToken;
143 
144     ResponseMetadata m_responseMetadata;
145   };
146 
147 } // namespace Model
148 } // namespace CloudFormation
149 } // namespace Aws
150