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/dataexchange/DataExchange_EXPORTS.h>
8 #include <aws/dataexchange/model/Action.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <aws/dataexchange/model/Event.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 template<typename RESULT_TYPE>
17 class AmazonWebServiceResult;
18 
19 namespace Utils
20 {
21 namespace Json
22 {
23   class JsonValue;
24 } // namespace Json
25 } // namespace Utils
26 namespace DataExchange
27 {
28 namespace Model
29 {
30   class AWS_DATAEXCHANGE_API UpdateEventActionResult
31   {
32   public:
33     UpdateEventActionResult();
34     UpdateEventActionResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
35     UpdateEventActionResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
36 
37 
38     /**
39      * <p>What occurs after a certain event.</p>
40      */
GetAction()41     inline const Action& GetAction() const{ return m_action; }
42 
43     /**
44      * <p>What occurs after a certain event.</p>
45      */
SetAction(const Action & value)46     inline void SetAction(const Action& value) { m_action = value; }
47 
48     /**
49      * <p>What occurs after a certain event.</p>
50      */
SetAction(Action && value)51     inline void SetAction(Action&& value) { m_action = std::move(value); }
52 
53     /**
54      * <p>What occurs after a certain event.</p>
55      */
WithAction(const Action & value)56     inline UpdateEventActionResult& WithAction(const Action& value) { SetAction(value); return *this;}
57 
58     /**
59      * <p>What occurs after a certain event.</p>
60      */
WithAction(Action && value)61     inline UpdateEventActionResult& WithAction(Action&& value) { SetAction(std::move(value)); return *this;}
62 
63 
64     /**
65      * <p>The ARN for the event action.</p>
66      */
GetArn()67     inline const Aws::String& GetArn() const{ return m_arn; }
68 
69     /**
70      * <p>The ARN for the event action.</p>
71      */
SetArn(const Aws::String & value)72     inline void SetArn(const Aws::String& value) { m_arn = value; }
73 
74     /**
75      * <p>The ARN for the event action.</p>
76      */
SetArn(Aws::String && value)77     inline void SetArn(Aws::String&& value) { m_arn = std::move(value); }
78 
79     /**
80      * <p>The ARN for the event action.</p>
81      */
SetArn(const char * value)82     inline void SetArn(const char* value) { m_arn.assign(value); }
83 
84     /**
85      * <p>The ARN for the event action.</p>
86      */
WithArn(const Aws::String & value)87     inline UpdateEventActionResult& WithArn(const Aws::String& value) { SetArn(value); return *this;}
88 
89     /**
90      * <p>The ARN for the event action.</p>
91      */
WithArn(Aws::String && value)92     inline UpdateEventActionResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
93 
94     /**
95      * <p>The ARN for the event action.</p>
96      */
WithArn(const char * value)97     inline UpdateEventActionResult& WithArn(const char* value) { SetArn(value); return *this;}
98 
99 
100     /**
101      * <p>The date and time that the event action was created, in ISO 8601 format.</p>
102      */
GetCreatedAt()103     inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; }
104 
105     /**
106      * <p>The date and time that the event action was created, in ISO 8601 format.</p>
107      */
SetCreatedAt(const Aws::Utils::DateTime & value)108     inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; }
109 
110     /**
111      * <p>The date and time that the event action was created, in ISO 8601 format.</p>
112      */
SetCreatedAt(Aws::Utils::DateTime && value)113     inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); }
114 
115     /**
116      * <p>The date and time that the event action was created, in ISO 8601 format.</p>
117      */
WithCreatedAt(const Aws::Utils::DateTime & value)118     inline UpdateEventActionResult& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;}
119 
120     /**
121      * <p>The date and time that the event action was created, in ISO 8601 format.</p>
122      */
WithCreatedAt(Aws::Utils::DateTime && value)123     inline UpdateEventActionResult& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;}
124 
125 
126     /**
127      * <p>What occurs to start an action.</p>
128      */
GetEvent()129     inline const Event& GetEvent() const{ return m_event; }
130 
131     /**
132      * <p>What occurs to start an action.</p>
133      */
SetEvent(const Event & value)134     inline void SetEvent(const Event& value) { m_event = value; }
135 
136     /**
137      * <p>What occurs to start an action.</p>
138      */
SetEvent(Event && value)139     inline void SetEvent(Event&& value) { m_event = std::move(value); }
140 
141     /**
142      * <p>What occurs to start an action.</p>
143      */
WithEvent(const Event & value)144     inline UpdateEventActionResult& WithEvent(const Event& value) { SetEvent(value); return *this;}
145 
146     /**
147      * <p>What occurs to start an action.</p>
148      */
WithEvent(Event && value)149     inline UpdateEventActionResult& WithEvent(Event&& value) { SetEvent(std::move(value)); return *this;}
150 
151 
152     /**
153      * <p>The unique identifier for the event action.</p>
154      */
GetId()155     inline const Aws::String& GetId() const{ return m_id; }
156 
157     /**
158      * <p>The unique identifier for the event action.</p>
159      */
SetId(const Aws::String & value)160     inline void SetId(const Aws::String& value) { m_id = value; }
161 
162     /**
163      * <p>The unique identifier for the event action.</p>
164      */
SetId(Aws::String && value)165     inline void SetId(Aws::String&& value) { m_id = std::move(value); }
166 
167     /**
168      * <p>The unique identifier for the event action.</p>
169      */
SetId(const char * value)170     inline void SetId(const char* value) { m_id.assign(value); }
171 
172     /**
173      * <p>The unique identifier for the event action.</p>
174      */
WithId(const Aws::String & value)175     inline UpdateEventActionResult& WithId(const Aws::String& value) { SetId(value); return *this;}
176 
177     /**
178      * <p>The unique identifier for the event action.</p>
179      */
WithId(Aws::String && value)180     inline UpdateEventActionResult& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
181 
182     /**
183      * <p>The unique identifier for the event action.</p>
184      */
WithId(const char * value)185     inline UpdateEventActionResult& WithId(const char* value) { SetId(value); return *this;}
186 
187 
188     /**
189      * <p>The date and time that the event action was last updated, in ISO 8601
190      * format.</p>
191      */
GetUpdatedAt()192     inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; }
193 
194     /**
195      * <p>The date and time that the event action was last updated, in ISO 8601
196      * format.</p>
197      */
SetUpdatedAt(const Aws::Utils::DateTime & value)198     inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAt = value; }
199 
200     /**
201      * <p>The date and time that the event action was last updated, in ISO 8601
202      * format.</p>
203      */
SetUpdatedAt(Aws::Utils::DateTime && value)204     inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAt = std::move(value); }
205 
206     /**
207      * <p>The date and time that the event action was last updated, in ISO 8601
208      * format.</p>
209      */
WithUpdatedAt(const Aws::Utils::DateTime & value)210     inline UpdateEventActionResult& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;}
211 
212     /**
213      * <p>The date and time that the event action was last updated, in ISO 8601
214      * format.</p>
215      */
WithUpdatedAt(Aws::Utils::DateTime && value)216     inline UpdateEventActionResult& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;}
217 
218   private:
219 
220     Action m_action;
221 
222     Aws::String m_arn;
223 
224     Aws::Utils::DateTime m_createdAt;
225 
226     Event m_event;
227 
228     Aws::String m_id;
229 
230     Aws::Utils::DateTime m_updatedAt;
231   };
232 
233 } // namespace Model
234 } // namespace DataExchange
235 } // namespace Aws
236