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/ssm-contacts/SSMContacts_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/DateTime.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 template<typename RESULT_TYPE>
15 class AmazonWebServiceResult;
16 
17 namespace Utils
18 {
19 namespace Json
20 {
21   class JsonValue;
22 } // namespace Json
23 } // namespace Utils
24 namespace SSMContacts
25 {
26 namespace Model
27 {
28   class AWS_SSMCONTACTS_API DescribePageResult
29   {
30   public:
31     DescribePageResult();
32     DescribePageResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
33     DescribePageResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
34 
35 
36     /**
37      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
38      */
GetPageArn()39     inline const Aws::String& GetPageArn() const{ return m_pageArn; }
40 
41     /**
42      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
43      */
SetPageArn(const Aws::String & value)44     inline void SetPageArn(const Aws::String& value) { m_pageArn = value; }
45 
46     /**
47      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
48      */
SetPageArn(Aws::String && value)49     inline void SetPageArn(Aws::String&& value) { m_pageArn = std::move(value); }
50 
51     /**
52      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
53      */
SetPageArn(const char * value)54     inline void SetPageArn(const char* value) { m_pageArn.assign(value); }
55 
56     /**
57      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
58      */
WithPageArn(const Aws::String & value)59     inline DescribePageResult& WithPageArn(const Aws::String& value) { SetPageArn(value); return *this;}
60 
61     /**
62      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
63      */
WithPageArn(Aws::String && value)64     inline DescribePageResult& WithPageArn(Aws::String&& value) { SetPageArn(std::move(value)); return *this;}
65 
66     /**
67      * <p>The Amazon Resource Name (ARN) of the engagement to a contact channel.</p>
68      */
WithPageArn(const char * value)69     inline DescribePageResult& WithPageArn(const char* value) { SetPageArn(value); return *this;}
70 
71 
72     /**
73      * <p>The ARN of the engagement that engaged the contact channel.</p>
74      */
GetEngagementArn()75     inline const Aws::String& GetEngagementArn() const{ return m_engagementArn; }
76 
77     /**
78      * <p>The ARN of the engagement that engaged the contact channel.</p>
79      */
SetEngagementArn(const Aws::String & value)80     inline void SetEngagementArn(const Aws::String& value) { m_engagementArn = value; }
81 
82     /**
83      * <p>The ARN of the engagement that engaged the contact channel.</p>
84      */
SetEngagementArn(Aws::String && value)85     inline void SetEngagementArn(Aws::String&& value) { m_engagementArn = std::move(value); }
86 
87     /**
88      * <p>The ARN of the engagement that engaged the contact channel.</p>
89      */
SetEngagementArn(const char * value)90     inline void SetEngagementArn(const char* value) { m_engagementArn.assign(value); }
91 
92     /**
93      * <p>The ARN of the engagement that engaged the contact channel.</p>
94      */
WithEngagementArn(const Aws::String & value)95     inline DescribePageResult& WithEngagementArn(const Aws::String& value) { SetEngagementArn(value); return *this;}
96 
97     /**
98      * <p>The ARN of the engagement that engaged the contact channel.</p>
99      */
WithEngagementArn(Aws::String && value)100     inline DescribePageResult& WithEngagementArn(Aws::String&& value) { SetEngagementArn(std::move(value)); return *this;}
101 
102     /**
103      * <p>The ARN of the engagement that engaged the contact channel.</p>
104      */
WithEngagementArn(const char * value)105     inline DescribePageResult& WithEngagementArn(const char* value) { SetEngagementArn(value); return *this;}
106 
107 
108     /**
109      * <p>The ARN of the contact that was engaged.</p>
110      */
GetContactArn()111     inline const Aws::String& GetContactArn() const{ return m_contactArn; }
112 
113     /**
114      * <p>The ARN of the contact that was engaged.</p>
115      */
SetContactArn(const Aws::String & value)116     inline void SetContactArn(const Aws::String& value) { m_contactArn = value; }
117 
118     /**
119      * <p>The ARN of the contact that was engaged.</p>
120      */
SetContactArn(Aws::String && value)121     inline void SetContactArn(Aws::String&& value) { m_contactArn = std::move(value); }
122 
123     /**
124      * <p>The ARN of the contact that was engaged.</p>
125      */
SetContactArn(const char * value)126     inline void SetContactArn(const char* value) { m_contactArn.assign(value); }
127 
128     /**
129      * <p>The ARN of the contact that was engaged.</p>
130      */
WithContactArn(const Aws::String & value)131     inline DescribePageResult& WithContactArn(const Aws::String& value) { SetContactArn(value); return *this;}
132 
133     /**
134      * <p>The ARN of the contact that was engaged.</p>
135      */
WithContactArn(Aws::String && value)136     inline DescribePageResult& WithContactArn(Aws::String&& value) { SetContactArn(std::move(value)); return *this;}
137 
138     /**
139      * <p>The ARN of the contact that was engaged.</p>
140      */
WithContactArn(const char * value)141     inline DescribePageResult& WithContactArn(const char* value) { SetContactArn(value); return *this;}
142 
143 
144     /**
145      * <p>The user that started the engagement.</p>
146      */
GetSender()147     inline const Aws::String& GetSender() const{ return m_sender; }
148 
149     /**
150      * <p>The user that started the engagement.</p>
151      */
SetSender(const Aws::String & value)152     inline void SetSender(const Aws::String& value) { m_sender = value; }
153 
154     /**
155      * <p>The user that started the engagement.</p>
156      */
SetSender(Aws::String && value)157     inline void SetSender(Aws::String&& value) { m_sender = std::move(value); }
158 
159     /**
160      * <p>The user that started the engagement.</p>
161      */
SetSender(const char * value)162     inline void SetSender(const char* value) { m_sender.assign(value); }
163 
164     /**
165      * <p>The user that started the engagement.</p>
166      */
WithSender(const Aws::String & value)167     inline DescribePageResult& WithSender(const Aws::String& value) { SetSender(value); return *this;}
168 
169     /**
170      * <p>The user that started the engagement.</p>
171      */
WithSender(Aws::String && value)172     inline DescribePageResult& WithSender(Aws::String&& value) { SetSender(std::move(value)); return *this;}
173 
174     /**
175      * <p>The user that started the engagement.</p>
176      */
WithSender(const char * value)177     inline DescribePageResult& WithSender(const char* value) { SetSender(value); return *this;}
178 
179 
180     /**
181      * <p>The secure subject of the message that was sent to the contact. Use this
182      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
183      */
GetSubject()184     inline const Aws::String& GetSubject() const{ return m_subject; }
185 
186     /**
187      * <p>The secure subject of the message that was sent to the contact. Use this
188      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
189      */
SetSubject(const Aws::String & value)190     inline void SetSubject(const Aws::String& value) { m_subject = value; }
191 
192     /**
193      * <p>The secure subject of the message that was sent to the contact. Use this
194      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
195      */
SetSubject(Aws::String && value)196     inline void SetSubject(Aws::String&& value) { m_subject = std::move(value); }
197 
198     /**
199      * <p>The secure subject of the message that was sent to the contact. Use this
200      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
201      */
SetSubject(const char * value)202     inline void SetSubject(const char* value) { m_subject.assign(value); }
203 
204     /**
205      * <p>The secure subject of the message that was sent to the contact. Use this
206      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
207      */
WithSubject(const Aws::String & value)208     inline DescribePageResult& WithSubject(const Aws::String& value) { SetSubject(value); return *this;}
209 
210     /**
211      * <p>The secure subject of the message that was sent to the contact. Use this
212      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
213      */
WithSubject(Aws::String && value)214     inline DescribePageResult& WithSubject(Aws::String&& value) { SetSubject(std::move(value)); return *this;}
215 
216     /**
217      * <p>The secure subject of the message that was sent to the contact. Use this
218      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
219      */
WithSubject(const char * value)220     inline DescribePageResult& WithSubject(const char* value) { SetSubject(value); return *this;}
221 
222 
223     /**
224      * <p>The secure content of the message that was sent to the contact. Use this
225      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
226      */
GetContent()227     inline const Aws::String& GetContent() const{ return m_content; }
228 
229     /**
230      * <p>The secure content of the message that was sent to the contact. Use this
231      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
232      */
SetContent(const Aws::String & value)233     inline void SetContent(const Aws::String& value) { m_content = value; }
234 
235     /**
236      * <p>The secure content of the message that was sent to the contact. Use this
237      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
238      */
SetContent(Aws::String && value)239     inline void SetContent(Aws::String&& value) { m_content = std::move(value); }
240 
241     /**
242      * <p>The secure content of the message that was sent to the contact. Use this
243      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
244      */
SetContent(const char * value)245     inline void SetContent(const char* value) { m_content.assign(value); }
246 
247     /**
248      * <p>The secure content of the message that was sent to the contact. Use this
249      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
250      */
WithContent(const Aws::String & value)251     inline DescribePageResult& WithContent(const Aws::String& value) { SetContent(value); return *this;}
252 
253     /**
254      * <p>The secure content of the message that was sent to the contact. Use this
255      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
256      */
WithContent(Aws::String && value)257     inline DescribePageResult& WithContent(Aws::String&& value) { SetContent(std::move(value)); return *this;}
258 
259     /**
260      * <p>The secure content of the message that was sent to the contact. Use this
261      * field for engagements to <code>VOICE</code> and <code>EMAIL</code>.</p>
262      */
WithContent(const char * value)263     inline DescribePageResult& WithContent(const char* value) { SetContent(value); return *this;}
264 
265 
266     /**
267      * <p>The insecure subject of the message that was sent to the contact. Use this
268      * field for engagements to <code>SMS</code>.</p>
269      */
GetPublicSubject()270     inline const Aws::String& GetPublicSubject() const{ return m_publicSubject; }
271 
272     /**
273      * <p>The insecure subject of the message that was sent to the contact. Use this
274      * field for engagements to <code>SMS</code>.</p>
275      */
SetPublicSubject(const Aws::String & value)276     inline void SetPublicSubject(const Aws::String& value) { m_publicSubject = value; }
277 
278     /**
279      * <p>The insecure subject of the message that was sent to the contact. Use this
280      * field for engagements to <code>SMS</code>.</p>
281      */
SetPublicSubject(Aws::String && value)282     inline void SetPublicSubject(Aws::String&& value) { m_publicSubject = std::move(value); }
283 
284     /**
285      * <p>The insecure subject of the message that was sent to the contact. Use this
286      * field for engagements to <code>SMS</code>.</p>
287      */
SetPublicSubject(const char * value)288     inline void SetPublicSubject(const char* value) { m_publicSubject.assign(value); }
289 
290     /**
291      * <p>The insecure subject of the message that was sent to the contact. Use this
292      * field for engagements to <code>SMS</code>.</p>
293      */
WithPublicSubject(const Aws::String & value)294     inline DescribePageResult& WithPublicSubject(const Aws::String& value) { SetPublicSubject(value); return *this;}
295 
296     /**
297      * <p>The insecure subject of the message that was sent to the contact. Use this
298      * field for engagements to <code>SMS</code>.</p>
299      */
WithPublicSubject(Aws::String && value)300     inline DescribePageResult& WithPublicSubject(Aws::String&& value) { SetPublicSubject(std::move(value)); return *this;}
301 
302     /**
303      * <p>The insecure subject of the message that was sent to the contact. Use this
304      * field for engagements to <code>SMS</code>.</p>
305      */
WithPublicSubject(const char * value)306     inline DescribePageResult& WithPublicSubject(const char* value) { SetPublicSubject(value); return *this;}
307 
308 
309     /**
310      * <p>The insecure content of the message that was sent to the contact. Use this
311      * field for engagements to <code>SMS</code>.</p>
312      */
GetPublicContent()313     inline const Aws::String& GetPublicContent() const{ return m_publicContent; }
314 
315     /**
316      * <p>The insecure content of the message that was sent to the contact. Use this
317      * field for engagements to <code>SMS</code>.</p>
318      */
SetPublicContent(const Aws::String & value)319     inline void SetPublicContent(const Aws::String& value) { m_publicContent = value; }
320 
321     /**
322      * <p>The insecure content of the message that was sent to the contact. Use this
323      * field for engagements to <code>SMS</code>.</p>
324      */
SetPublicContent(Aws::String && value)325     inline void SetPublicContent(Aws::String&& value) { m_publicContent = std::move(value); }
326 
327     /**
328      * <p>The insecure content of the message that was sent to the contact. Use this
329      * field for engagements to <code>SMS</code>.</p>
330      */
SetPublicContent(const char * value)331     inline void SetPublicContent(const char* value) { m_publicContent.assign(value); }
332 
333     /**
334      * <p>The insecure content of the message that was sent to the contact. Use this
335      * field for engagements to <code>SMS</code>.</p>
336      */
WithPublicContent(const Aws::String & value)337     inline DescribePageResult& WithPublicContent(const Aws::String& value) { SetPublicContent(value); return *this;}
338 
339     /**
340      * <p>The insecure content of the message that was sent to the contact. Use this
341      * field for engagements to <code>SMS</code>.</p>
342      */
WithPublicContent(Aws::String && value)343     inline DescribePageResult& WithPublicContent(Aws::String&& value) { SetPublicContent(std::move(value)); return *this;}
344 
345     /**
346      * <p>The insecure content of the message that was sent to the contact. Use this
347      * field for engagements to <code>SMS</code>.</p>
348      */
WithPublicContent(const char * value)349     inline DescribePageResult& WithPublicContent(const char* value) { SetPublicContent(value); return *this;}
350 
351 
352     /**
353      * <p>The ARN of the incident that engaged the contact channel.</p>
354      */
GetIncidentId()355     inline const Aws::String& GetIncidentId() const{ return m_incidentId; }
356 
357     /**
358      * <p>The ARN of the incident that engaged the contact channel.</p>
359      */
SetIncidentId(const Aws::String & value)360     inline void SetIncidentId(const Aws::String& value) { m_incidentId = value; }
361 
362     /**
363      * <p>The ARN of the incident that engaged the contact channel.</p>
364      */
SetIncidentId(Aws::String && value)365     inline void SetIncidentId(Aws::String&& value) { m_incidentId = std::move(value); }
366 
367     /**
368      * <p>The ARN of the incident that engaged the contact channel.</p>
369      */
SetIncidentId(const char * value)370     inline void SetIncidentId(const char* value) { m_incidentId.assign(value); }
371 
372     /**
373      * <p>The ARN of the incident that engaged the contact channel.</p>
374      */
WithIncidentId(const Aws::String & value)375     inline DescribePageResult& WithIncidentId(const Aws::String& value) { SetIncidentId(value); return *this;}
376 
377     /**
378      * <p>The ARN of the incident that engaged the contact channel.</p>
379      */
WithIncidentId(Aws::String && value)380     inline DescribePageResult& WithIncidentId(Aws::String&& value) { SetIncidentId(std::move(value)); return *this;}
381 
382     /**
383      * <p>The ARN of the incident that engaged the contact channel.</p>
384      */
WithIncidentId(const char * value)385     inline DescribePageResult& WithIncidentId(const char* value) { SetIncidentId(value); return *this;}
386 
387 
388     /**
389      * <p>The time the engagement was sent to the contact channel.</p>
390      */
GetSentTime()391     inline const Aws::Utils::DateTime& GetSentTime() const{ return m_sentTime; }
392 
393     /**
394      * <p>The time the engagement was sent to the contact channel.</p>
395      */
SetSentTime(const Aws::Utils::DateTime & value)396     inline void SetSentTime(const Aws::Utils::DateTime& value) { m_sentTime = value; }
397 
398     /**
399      * <p>The time the engagement was sent to the contact channel.</p>
400      */
SetSentTime(Aws::Utils::DateTime && value)401     inline void SetSentTime(Aws::Utils::DateTime&& value) { m_sentTime = std::move(value); }
402 
403     /**
404      * <p>The time the engagement was sent to the contact channel.</p>
405      */
WithSentTime(const Aws::Utils::DateTime & value)406     inline DescribePageResult& WithSentTime(const Aws::Utils::DateTime& value) { SetSentTime(value); return *this;}
407 
408     /**
409      * <p>The time the engagement was sent to the contact channel.</p>
410      */
WithSentTime(Aws::Utils::DateTime && value)411     inline DescribePageResult& WithSentTime(Aws::Utils::DateTime&& value) { SetSentTime(std::move(value)); return *this;}
412 
413 
414     /**
415      * <p>The time that the contact channel acknowledged the engagement.</p>
416      */
GetReadTime()417     inline const Aws::Utils::DateTime& GetReadTime() const{ return m_readTime; }
418 
419     /**
420      * <p>The time that the contact channel acknowledged the engagement.</p>
421      */
SetReadTime(const Aws::Utils::DateTime & value)422     inline void SetReadTime(const Aws::Utils::DateTime& value) { m_readTime = value; }
423 
424     /**
425      * <p>The time that the contact channel acknowledged the engagement.</p>
426      */
SetReadTime(Aws::Utils::DateTime && value)427     inline void SetReadTime(Aws::Utils::DateTime&& value) { m_readTime = std::move(value); }
428 
429     /**
430      * <p>The time that the contact channel acknowledged the engagement.</p>
431      */
WithReadTime(const Aws::Utils::DateTime & value)432     inline DescribePageResult& WithReadTime(const Aws::Utils::DateTime& value) { SetReadTime(value); return *this;}
433 
434     /**
435      * <p>The time that the contact channel acknowledged the engagement.</p>
436      */
WithReadTime(Aws::Utils::DateTime && value)437     inline DescribePageResult& WithReadTime(Aws::Utils::DateTime&& value) { SetReadTime(std::move(value)); return *this;}
438 
439 
440     /**
441      * <p>The time that the contact channel received the engagement.</p>
442      */
GetDeliveryTime()443     inline const Aws::Utils::DateTime& GetDeliveryTime() const{ return m_deliveryTime; }
444 
445     /**
446      * <p>The time that the contact channel received the engagement.</p>
447      */
SetDeliveryTime(const Aws::Utils::DateTime & value)448     inline void SetDeliveryTime(const Aws::Utils::DateTime& value) { m_deliveryTime = value; }
449 
450     /**
451      * <p>The time that the contact channel received the engagement.</p>
452      */
SetDeliveryTime(Aws::Utils::DateTime && value)453     inline void SetDeliveryTime(Aws::Utils::DateTime&& value) { m_deliveryTime = std::move(value); }
454 
455     /**
456      * <p>The time that the contact channel received the engagement.</p>
457      */
WithDeliveryTime(const Aws::Utils::DateTime & value)458     inline DescribePageResult& WithDeliveryTime(const Aws::Utils::DateTime& value) { SetDeliveryTime(value); return *this;}
459 
460     /**
461      * <p>The time that the contact channel received the engagement.</p>
462      */
WithDeliveryTime(Aws::Utils::DateTime && value)463     inline DescribePageResult& WithDeliveryTime(Aws::Utils::DateTime&& value) { SetDeliveryTime(std::move(value)); return *this;}
464 
465   private:
466 
467     Aws::String m_pageArn;
468 
469     Aws::String m_engagementArn;
470 
471     Aws::String m_contactArn;
472 
473     Aws::String m_sender;
474 
475     Aws::String m_subject;
476 
477     Aws::String m_content;
478 
479     Aws::String m_publicSubject;
480 
481     Aws::String m_publicContent;
482 
483     Aws::String m_incidentId;
484 
485     Aws::Utils::DateTime m_sentTime;
486 
487     Aws::Utils::DateTime m_readTime;
488 
489     Aws::Utils::DateTime m_deliveryTime;
490   };
491 
492 } // namespace Model
493 } // namespace SSMContacts
494 } // namespace Aws
495