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/iotevents-data/IoTEventsData_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/iotevents-data/model/DetectorStateSummary.h>
10 #include <aws/core/utils/DateTime.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 namespace Utils
16 {
17 namespace Json
18 {
19   class JsonValue;
20   class JsonView;
21 } // namespace Json
22 } // namespace Utils
23 namespace IoTEventsData
24 {
25 namespace Model
26 {
27 
28   /**
29    * <p>Information about the detector (instance).</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/iotevents-data-2018-10-23/DetectorSummary">AWS
31    * API Reference</a></p>
32    */
33   class AWS_IOTEVENTSDATA_API DetectorSummary
34   {
35   public:
36     DetectorSummary();
37     DetectorSummary(Aws::Utils::Json::JsonView jsonValue);
38     DetectorSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>The name of the detector model that created this detector (instance).</p>
44      */
GetDetectorModelName()45     inline const Aws::String& GetDetectorModelName() const{ return m_detectorModelName; }
46 
47     /**
48      * <p>The name of the detector model that created this detector (instance).</p>
49      */
DetectorModelNameHasBeenSet()50     inline bool DetectorModelNameHasBeenSet() const { return m_detectorModelNameHasBeenSet; }
51 
52     /**
53      * <p>The name of the detector model that created this detector (instance).</p>
54      */
SetDetectorModelName(const Aws::String & value)55     inline void SetDetectorModelName(const Aws::String& value) { m_detectorModelNameHasBeenSet = true; m_detectorModelName = value; }
56 
57     /**
58      * <p>The name of the detector model that created this detector (instance).</p>
59      */
SetDetectorModelName(Aws::String && value)60     inline void SetDetectorModelName(Aws::String&& value) { m_detectorModelNameHasBeenSet = true; m_detectorModelName = std::move(value); }
61 
62     /**
63      * <p>The name of the detector model that created this detector (instance).</p>
64      */
SetDetectorModelName(const char * value)65     inline void SetDetectorModelName(const char* value) { m_detectorModelNameHasBeenSet = true; m_detectorModelName.assign(value); }
66 
67     /**
68      * <p>The name of the detector model that created this detector (instance).</p>
69      */
WithDetectorModelName(const Aws::String & value)70     inline DetectorSummary& WithDetectorModelName(const Aws::String& value) { SetDetectorModelName(value); return *this;}
71 
72     /**
73      * <p>The name of the detector model that created this detector (instance).</p>
74      */
WithDetectorModelName(Aws::String && value)75     inline DetectorSummary& WithDetectorModelName(Aws::String&& value) { SetDetectorModelName(std::move(value)); return *this;}
76 
77     /**
78      * <p>The name of the detector model that created this detector (instance).</p>
79      */
WithDetectorModelName(const char * value)80     inline DetectorSummary& WithDetectorModelName(const char* value) { SetDetectorModelName(value); return *this;}
81 
82 
83     /**
84      * <p>The value of the key (identifying the device or system) that caused the
85      * creation of this detector (instance).</p>
86      */
GetKeyValue()87     inline const Aws::String& GetKeyValue() const{ return m_keyValue; }
88 
89     /**
90      * <p>The value of the key (identifying the device or system) that caused the
91      * creation of this detector (instance).</p>
92      */
KeyValueHasBeenSet()93     inline bool KeyValueHasBeenSet() const { return m_keyValueHasBeenSet; }
94 
95     /**
96      * <p>The value of the key (identifying the device or system) that caused the
97      * creation of this detector (instance).</p>
98      */
SetKeyValue(const Aws::String & value)99     inline void SetKeyValue(const Aws::String& value) { m_keyValueHasBeenSet = true; m_keyValue = value; }
100 
101     /**
102      * <p>The value of the key (identifying the device or system) that caused the
103      * creation of this detector (instance).</p>
104      */
SetKeyValue(Aws::String && value)105     inline void SetKeyValue(Aws::String&& value) { m_keyValueHasBeenSet = true; m_keyValue = std::move(value); }
106 
107     /**
108      * <p>The value of the key (identifying the device or system) that caused the
109      * creation of this detector (instance).</p>
110      */
SetKeyValue(const char * value)111     inline void SetKeyValue(const char* value) { m_keyValueHasBeenSet = true; m_keyValue.assign(value); }
112 
113     /**
114      * <p>The value of the key (identifying the device or system) that caused the
115      * creation of this detector (instance).</p>
116      */
WithKeyValue(const Aws::String & value)117     inline DetectorSummary& WithKeyValue(const Aws::String& value) { SetKeyValue(value); return *this;}
118 
119     /**
120      * <p>The value of the key (identifying the device or system) that caused the
121      * creation of this detector (instance).</p>
122      */
WithKeyValue(Aws::String && value)123     inline DetectorSummary& WithKeyValue(Aws::String&& value) { SetKeyValue(std::move(value)); return *this;}
124 
125     /**
126      * <p>The value of the key (identifying the device or system) that caused the
127      * creation of this detector (instance).</p>
128      */
WithKeyValue(const char * value)129     inline DetectorSummary& WithKeyValue(const char* value) { SetKeyValue(value); return *this;}
130 
131 
132     /**
133      * <p>The version of the detector model that created this detector (instance).</p>
134      */
GetDetectorModelVersion()135     inline const Aws::String& GetDetectorModelVersion() const{ return m_detectorModelVersion; }
136 
137     /**
138      * <p>The version of the detector model that created this detector (instance).</p>
139      */
DetectorModelVersionHasBeenSet()140     inline bool DetectorModelVersionHasBeenSet() const { return m_detectorModelVersionHasBeenSet; }
141 
142     /**
143      * <p>The version of the detector model that created this detector (instance).</p>
144      */
SetDetectorModelVersion(const Aws::String & value)145     inline void SetDetectorModelVersion(const Aws::String& value) { m_detectorModelVersionHasBeenSet = true; m_detectorModelVersion = value; }
146 
147     /**
148      * <p>The version of the detector model that created this detector (instance).</p>
149      */
SetDetectorModelVersion(Aws::String && value)150     inline void SetDetectorModelVersion(Aws::String&& value) { m_detectorModelVersionHasBeenSet = true; m_detectorModelVersion = std::move(value); }
151 
152     /**
153      * <p>The version of the detector model that created this detector (instance).</p>
154      */
SetDetectorModelVersion(const char * value)155     inline void SetDetectorModelVersion(const char* value) { m_detectorModelVersionHasBeenSet = true; m_detectorModelVersion.assign(value); }
156 
157     /**
158      * <p>The version of the detector model that created this detector (instance).</p>
159      */
WithDetectorModelVersion(const Aws::String & value)160     inline DetectorSummary& WithDetectorModelVersion(const Aws::String& value) { SetDetectorModelVersion(value); return *this;}
161 
162     /**
163      * <p>The version of the detector model that created this detector (instance).</p>
164      */
WithDetectorModelVersion(Aws::String && value)165     inline DetectorSummary& WithDetectorModelVersion(Aws::String&& value) { SetDetectorModelVersion(std::move(value)); return *this;}
166 
167     /**
168      * <p>The version of the detector model that created this detector (instance).</p>
169      */
WithDetectorModelVersion(const char * value)170     inline DetectorSummary& WithDetectorModelVersion(const char* value) { SetDetectorModelVersion(value); return *this;}
171 
172 
173     /**
174      * <p>The current state of the detector (instance).</p>
175      */
GetState()176     inline const DetectorStateSummary& GetState() const{ return m_state; }
177 
178     /**
179      * <p>The current state of the detector (instance).</p>
180      */
StateHasBeenSet()181     inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
182 
183     /**
184      * <p>The current state of the detector (instance).</p>
185      */
SetState(const DetectorStateSummary & value)186     inline void SetState(const DetectorStateSummary& value) { m_stateHasBeenSet = true; m_state = value; }
187 
188     /**
189      * <p>The current state of the detector (instance).</p>
190      */
SetState(DetectorStateSummary && value)191     inline void SetState(DetectorStateSummary&& value) { m_stateHasBeenSet = true; m_state = std::move(value); }
192 
193     /**
194      * <p>The current state of the detector (instance).</p>
195      */
WithState(const DetectorStateSummary & value)196     inline DetectorSummary& WithState(const DetectorStateSummary& value) { SetState(value); return *this;}
197 
198     /**
199      * <p>The current state of the detector (instance).</p>
200      */
WithState(DetectorStateSummary && value)201     inline DetectorSummary& WithState(DetectorStateSummary&& value) { SetState(std::move(value)); return *this;}
202 
203 
204     /**
205      * <p>The time the detector (instance) was created.</p>
206      */
GetCreationTime()207     inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; }
208 
209     /**
210      * <p>The time the detector (instance) was created.</p>
211      */
CreationTimeHasBeenSet()212     inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
213 
214     /**
215      * <p>The time the detector (instance) was created.</p>
216      */
SetCreationTime(const Aws::Utils::DateTime & value)217     inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; }
218 
219     /**
220      * <p>The time the detector (instance) was created.</p>
221      */
SetCreationTime(Aws::Utils::DateTime && value)222     inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); }
223 
224     /**
225      * <p>The time the detector (instance) was created.</p>
226      */
WithCreationTime(const Aws::Utils::DateTime & value)227     inline DetectorSummary& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;}
228 
229     /**
230      * <p>The time the detector (instance) was created.</p>
231      */
WithCreationTime(Aws::Utils::DateTime && value)232     inline DetectorSummary& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;}
233 
234 
235     /**
236      * <p>The time the detector (instance) was last updated.</p>
237      */
GetLastUpdateTime()238     inline const Aws::Utils::DateTime& GetLastUpdateTime() const{ return m_lastUpdateTime; }
239 
240     /**
241      * <p>The time the detector (instance) was last updated.</p>
242      */
LastUpdateTimeHasBeenSet()243     inline bool LastUpdateTimeHasBeenSet() const { return m_lastUpdateTimeHasBeenSet; }
244 
245     /**
246      * <p>The time the detector (instance) was last updated.</p>
247      */
SetLastUpdateTime(const Aws::Utils::DateTime & value)248     inline void SetLastUpdateTime(const Aws::Utils::DateTime& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = value; }
249 
250     /**
251      * <p>The time the detector (instance) was last updated.</p>
252      */
SetLastUpdateTime(Aws::Utils::DateTime && value)253     inline void SetLastUpdateTime(Aws::Utils::DateTime&& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = std::move(value); }
254 
255     /**
256      * <p>The time the detector (instance) was last updated.</p>
257      */
WithLastUpdateTime(const Aws::Utils::DateTime & value)258     inline DetectorSummary& WithLastUpdateTime(const Aws::Utils::DateTime& value) { SetLastUpdateTime(value); return *this;}
259 
260     /**
261      * <p>The time the detector (instance) was last updated.</p>
262      */
WithLastUpdateTime(Aws::Utils::DateTime && value)263     inline DetectorSummary& WithLastUpdateTime(Aws::Utils::DateTime&& value) { SetLastUpdateTime(std::move(value)); return *this;}
264 
265   private:
266 
267     Aws::String m_detectorModelName;
268     bool m_detectorModelNameHasBeenSet;
269 
270     Aws::String m_keyValue;
271     bool m_keyValueHasBeenSet;
272 
273     Aws::String m_detectorModelVersion;
274     bool m_detectorModelVersionHasBeenSet;
275 
276     DetectorStateSummary m_state;
277     bool m_stateHasBeenSet;
278 
279     Aws::Utils::DateTime m_creationTime;
280     bool m_creationTimeHasBeenSet;
281 
282     Aws::Utils::DateTime m_lastUpdateTime;
283     bool m_lastUpdateTimeHasBeenSet;
284   };
285 
286 } // namespace Model
287 } // namespace IoTEventsData
288 } // namespace Aws
289