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/cloudtrail/CloudTrail_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/memory/stl/AWSVector.h>
10 #include <aws/cloudtrail/model/EventSelector.h>
11 #include <aws/cloudtrail/model/AdvancedEventSelector.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 CloudTrail
27 {
28 namespace Model
29 {
30   class AWS_CLOUDTRAIL_API GetEventSelectorsResult
31   {
32   public:
33     GetEventSelectorsResult();
34     GetEventSelectorsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
35     GetEventSelectorsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
36 
37 
38     /**
39      * <p>The specified trail ARN that has the event selectors.</p>
40      */
GetTrailARN()41     inline const Aws::String& GetTrailARN() const{ return m_trailARN; }
42 
43     /**
44      * <p>The specified trail ARN that has the event selectors.</p>
45      */
SetTrailARN(const Aws::String & value)46     inline void SetTrailARN(const Aws::String& value) { m_trailARN = value; }
47 
48     /**
49      * <p>The specified trail ARN that has the event selectors.</p>
50      */
SetTrailARN(Aws::String && value)51     inline void SetTrailARN(Aws::String&& value) { m_trailARN = std::move(value); }
52 
53     /**
54      * <p>The specified trail ARN that has the event selectors.</p>
55      */
SetTrailARN(const char * value)56     inline void SetTrailARN(const char* value) { m_trailARN.assign(value); }
57 
58     /**
59      * <p>The specified trail ARN that has the event selectors.</p>
60      */
WithTrailARN(const Aws::String & value)61     inline GetEventSelectorsResult& WithTrailARN(const Aws::String& value) { SetTrailARN(value); return *this;}
62 
63     /**
64      * <p>The specified trail ARN that has the event selectors.</p>
65      */
WithTrailARN(Aws::String && value)66     inline GetEventSelectorsResult& WithTrailARN(Aws::String&& value) { SetTrailARN(std::move(value)); return *this;}
67 
68     /**
69      * <p>The specified trail ARN that has the event selectors.</p>
70      */
WithTrailARN(const char * value)71     inline GetEventSelectorsResult& WithTrailARN(const char* value) { SetTrailARN(value); return *this;}
72 
73 
74     /**
75      * <p>The event selectors that are configured for the trail.</p>
76      */
GetEventSelectors()77     inline const Aws::Vector<EventSelector>& GetEventSelectors() const{ return m_eventSelectors; }
78 
79     /**
80      * <p>The event selectors that are configured for the trail.</p>
81      */
SetEventSelectors(const Aws::Vector<EventSelector> & value)82     inline void SetEventSelectors(const Aws::Vector<EventSelector>& value) { m_eventSelectors = value; }
83 
84     /**
85      * <p>The event selectors that are configured for the trail.</p>
86      */
SetEventSelectors(Aws::Vector<EventSelector> && value)87     inline void SetEventSelectors(Aws::Vector<EventSelector>&& value) { m_eventSelectors = std::move(value); }
88 
89     /**
90      * <p>The event selectors that are configured for the trail.</p>
91      */
WithEventSelectors(const Aws::Vector<EventSelector> & value)92     inline GetEventSelectorsResult& WithEventSelectors(const Aws::Vector<EventSelector>& value) { SetEventSelectors(value); return *this;}
93 
94     /**
95      * <p>The event selectors that are configured for the trail.</p>
96      */
WithEventSelectors(Aws::Vector<EventSelector> && value)97     inline GetEventSelectorsResult& WithEventSelectors(Aws::Vector<EventSelector>&& value) { SetEventSelectors(std::move(value)); return *this;}
98 
99     /**
100      * <p>The event selectors that are configured for the trail.</p>
101      */
AddEventSelectors(const EventSelector & value)102     inline GetEventSelectorsResult& AddEventSelectors(const EventSelector& value) { m_eventSelectors.push_back(value); return *this; }
103 
104     /**
105      * <p>The event selectors that are configured for the trail.</p>
106      */
AddEventSelectors(EventSelector && value)107     inline GetEventSelectorsResult& AddEventSelectors(EventSelector&& value) { m_eventSelectors.push_back(std::move(value)); return *this; }
108 
109 
110     /**
111      * <p> The advanced event selectors that are configured for the trail. </p>
112      */
GetAdvancedEventSelectors()113     inline const Aws::Vector<AdvancedEventSelector>& GetAdvancedEventSelectors() const{ return m_advancedEventSelectors; }
114 
115     /**
116      * <p> The advanced event selectors that are configured for the trail. </p>
117      */
SetAdvancedEventSelectors(const Aws::Vector<AdvancedEventSelector> & value)118     inline void SetAdvancedEventSelectors(const Aws::Vector<AdvancedEventSelector>& value) { m_advancedEventSelectors = value; }
119 
120     /**
121      * <p> The advanced event selectors that are configured for the trail. </p>
122      */
SetAdvancedEventSelectors(Aws::Vector<AdvancedEventSelector> && value)123     inline void SetAdvancedEventSelectors(Aws::Vector<AdvancedEventSelector>&& value) { m_advancedEventSelectors = std::move(value); }
124 
125     /**
126      * <p> The advanced event selectors that are configured for the trail. </p>
127      */
WithAdvancedEventSelectors(const Aws::Vector<AdvancedEventSelector> & value)128     inline GetEventSelectorsResult& WithAdvancedEventSelectors(const Aws::Vector<AdvancedEventSelector>& value) { SetAdvancedEventSelectors(value); return *this;}
129 
130     /**
131      * <p> The advanced event selectors that are configured for the trail. </p>
132      */
WithAdvancedEventSelectors(Aws::Vector<AdvancedEventSelector> && value)133     inline GetEventSelectorsResult& WithAdvancedEventSelectors(Aws::Vector<AdvancedEventSelector>&& value) { SetAdvancedEventSelectors(std::move(value)); return *this;}
134 
135     /**
136      * <p> The advanced event selectors that are configured for the trail. </p>
137      */
AddAdvancedEventSelectors(const AdvancedEventSelector & value)138     inline GetEventSelectorsResult& AddAdvancedEventSelectors(const AdvancedEventSelector& value) { m_advancedEventSelectors.push_back(value); return *this; }
139 
140     /**
141      * <p> The advanced event selectors that are configured for the trail. </p>
142      */
AddAdvancedEventSelectors(AdvancedEventSelector && value)143     inline GetEventSelectorsResult& AddAdvancedEventSelectors(AdvancedEventSelector&& value) { m_advancedEventSelectors.push_back(std::move(value)); return *this; }
144 
145   private:
146 
147     Aws::String m_trailARN;
148 
149     Aws::Vector<EventSelector> m_eventSelectors;
150 
151     Aws::Vector<AdvancedEventSelector> m_advancedEventSelectors;
152   };
153 
154 } // namespace Model
155 } // namespace CloudTrail
156 } // namespace Aws
157