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/iotfleethub/IoTFleetHub_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/iotfleethub/model/ApplicationState.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace Utils
15 {
16 namespace Json
17 {
18   class JsonValue;
19   class JsonView;
20 } // namespace Json
21 } // namespace Utils
22 namespace IoTFleetHub
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>A summary of information about a AWS IoT Device Management web
29    * application.</p>  <p>Fleet Hub for AWS IoT Device Management is in public
30    * preview and is subject to change.</p> <p><h3>See Also:</h3>   <a
31    * href="http://docs.aws.amazon.com/goto/WebAPI/iotfleethub-2020-11-03/ApplicationSummary">AWS
32    * API Reference</a></p>
33    */
34   class AWS_IOTFLEETHUB_API ApplicationSummary
35   {
36   public:
37     ApplicationSummary();
38     ApplicationSummary(Aws::Utils::Json::JsonView jsonValue);
39     ApplicationSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
40     Aws::Utils::Json::JsonValue Jsonize() const;
41 
42 
43     /**
44      * <p>The unique Id of the web application.</p>
45      */
GetApplicationId()46     inline const Aws::String& GetApplicationId() const{ return m_applicationId; }
47 
48     /**
49      * <p>The unique Id of the web application.</p>
50      */
ApplicationIdHasBeenSet()51     inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; }
52 
53     /**
54      * <p>The unique Id of the web application.</p>
55      */
SetApplicationId(const Aws::String & value)56     inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; }
57 
58     /**
59      * <p>The unique Id of the web application.</p>
60      */
SetApplicationId(Aws::String && value)61     inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); }
62 
63     /**
64      * <p>The unique Id of the web application.</p>
65      */
SetApplicationId(const char * value)66     inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); }
67 
68     /**
69      * <p>The unique Id of the web application.</p>
70      */
WithApplicationId(const Aws::String & value)71     inline ApplicationSummary& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;}
72 
73     /**
74      * <p>The unique Id of the web application.</p>
75      */
WithApplicationId(Aws::String && value)76     inline ApplicationSummary& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;}
77 
78     /**
79      * <p>The unique Id of the web application.</p>
80      */
WithApplicationId(const char * value)81     inline ApplicationSummary& WithApplicationId(const char* value) { SetApplicationId(value); return *this;}
82 
83 
84     /**
85      * <p>The name of the web application.</p>
86      */
GetApplicationName()87     inline const Aws::String& GetApplicationName() const{ return m_applicationName; }
88 
89     /**
90      * <p>The name of the web application.</p>
91      */
ApplicationNameHasBeenSet()92     inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; }
93 
94     /**
95      * <p>The name of the web application.</p>
96      */
SetApplicationName(const Aws::String & value)97     inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; }
98 
99     /**
100      * <p>The name of the web application.</p>
101      */
SetApplicationName(Aws::String && value)102     inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); }
103 
104     /**
105      * <p>The name of the web application.</p>
106      */
SetApplicationName(const char * value)107     inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); }
108 
109     /**
110      * <p>The name of the web application.</p>
111      */
WithApplicationName(const Aws::String & value)112     inline ApplicationSummary& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;}
113 
114     /**
115      * <p>The name of the web application.</p>
116      */
WithApplicationName(Aws::String && value)117     inline ApplicationSummary& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;}
118 
119     /**
120      * <p>The name of the web application.</p>
121      */
WithApplicationName(const char * value)122     inline ApplicationSummary& WithApplicationName(const char* value) { SetApplicationName(value); return *this;}
123 
124 
125     /**
126      * <p>An optional description of the web application.</p>
127      */
GetApplicationDescription()128     inline const Aws::String& GetApplicationDescription() const{ return m_applicationDescription; }
129 
130     /**
131      * <p>An optional description of the web application.</p>
132      */
ApplicationDescriptionHasBeenSet()133     inline bool ApplicationDescriptionHasBeenSet() const { return m_applicationDescriptionHasBeenSet; }
134 
135     /**
136      * <p>An optional description of the web application.</p>
137      */
SetApplicationDescription(const Aws::String & value)138     inline void SetApplicationDescription(const Aws::String& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = value; }
139 
140     /**
141      * <p>An optional description of the web application.</p>
142      */
SetApplicationDescription(Aws::String && value)143     inline void SetApplicationDescription(Aws::String&& value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription = std::move(value); }
144 
145     /**
146      * <p>An optional description of the web application.</p>
147      */
SetApplicationDescription(const char * value)148     inline void SetApplicationDescription(const char* value) { m_applicationDescriptionHasBeenSet = true; m_applicationDescription.assign(value); }
149 
150     /**
151      * <p>An optional description of the web application.</p>
152      */
WithApplicationDescription(const Aws::String & value)153     inline ApplicationSummary& WithApplicationDescription(const Aws::String& value) { SetApplicationDescription(value); return *this;}
154 
155     /**
156      * <p>An optional description of the web application.</p>
157      */
WithApplicationDescription(Aws::String && value)158     inline ApplicationSummary& WithApplicationDescription(Aws::String&& value) { SetApplicationDescription(std::move(value)); return *this;}
159 
160     /**
161      * <p>An optional description of the web application.</p>
162      */
WithApplicationDescription(const char * value)163     inline ApplicationSummary& WithApplicationDescription(const char* value) { SetApplicationDescription(value); return *this;}
164 
165 
166     /**
167      * <p>The URL of the web application.</p>
168      */
GetApplicationUrl()169     inline const Aws::String& GetApplicationUrl() const{ return m_applicationUrl; }
170 
171     /**
172      * <p>The URL of the web application.</p>
173      */
ApplicationUrlHasBeenSet()174     inline bool ApplicationUrlHasBeenSet() const { return m_applicationUrlHasBeenSet; }
175 
176     /**
177      * <p>The URL of the web application.</p>
178      */
SetApplicationUrl(const Aws::String & value)179     inline void SetApplicationUrl(const Aws::String& value) { m_applicationUrlHasBeenSet = true; m_applicationUrl = value; }
180 
181     /**
182      * <p>The URL of the web application.</p>
183      */
SetApplicationUrl(Aws::String && value)184     inline void SetApplicationUrl(Aws::String&& value) { m_applicationUrlHasBeenSet = true; m_applicationUrl = std::move(value); }
185 
186     /**
187      * <p>The URL of the web application.</p>
188      */
SetApplicationUrl(const char * value)189     inline void SetApplicationUrl(const char* value) { m_applicationUrlHasBeenSet = true; m_applicationUrl.assign(value); }
190 
191     /**
192      * <p>The URL of the web application.</p>
193      */
WithApplicationUrl(const Aws::String & value)194     inline ApplicationSummary& WithApplicationUrl(const Aws::String& value) { SetApplicationUrl(value); return *this;}
195 
196     /**
197      * <p>The URL of the web application.</p>
198      */
WithApplicationUrl(Aws::String && value)199     inline ApplicationSummary& WithApplicationUrl(Aws::String&& value) { SetApplicationUrl(std::move(value)); return *this;}
200 
201     /**
202      * <p>The URL of the web application.</p>
203      */
WithApplicationUrl(const char * value)204     inline ApplicationSummary& WithApplicationUrl(const char* value) { SetApplicationUrl(value); return *this;}
205 
206 
207     /**
208      * <p>The date (in Unix epoch time) when the web application was created.</p>
209      */
GetApplicationCreationDate()210     inline long long GetApplicationCreationDate() const{ return m_applicationCreationDate; }
211 
212     /**
213      * <p>The date (in Unix epoch time) when the web application was created.</p>
214      */
ApplicationCreationDateHasBeenSet()215     inline bool ApplicationCreationDateHasBeenSet() const { return m_applicationCreationDateHasBeenSet; }
216 
217     /**
218      * <p>The date (in Unix epoch time) when the web application was created.</p>
219      */
SetApplicationCreationDate(long long value)220     inline void SetApplicationCreationDate(long long value) { m_applicationCreationDateHasBeenSet = true; m_applicationCreationDate = value; }
221 
222     /**
223      * <p>The date (in Unix epoch time) when the web application was created.</p>
224      */
WithApplicationCreationDate(long long value)225     inline ApplicationSummary& WithApplicationCreationDate(long long value) { SetApplicationCreationDate(value); return *this;}
226 
227 
228     /**
229      * <p>The date (in Unix epoch time) when the web application was last updated.</p>
230      */
GetApplicationLastUpdateDate()231     inline long long GetApplicationLastUpdateDate() const{ return m_applicationLastUpdateDate; }
232 
233     /**
234      * <p>The date (in Unix epoch time) when the web application was last updated.</p>
235      */
ApplicationLastUpdateDateHasBeenSet()236     inline bool ApplicationLastUpdateDateHasBeenSet() const { return m_applicationLastUpdateDateHasBeenSet; }
237 
238     /**
239      * <p>The date (in Unix epoch time) when the web application was last updated.</p>
240      */
SetApplicationLastUpdateDate(long long value)241     inline void SetApplicationLastUpdateDate(long long value) { m_applicationLastUpdateDateHasBeenSet = true; m_applicationLastUpdateDate = value; }
242 
243     /**
244      * <p>The date (in Unix epoch time) when the web application was last updated.</p>
245      */
WithApplicationLastUpdateDate(long long value)246     inline ApplicationSummary& WithApplicationLastUpdateDate(long long value) { SetApplicationLastUpdateDate(value); return *this;}
247 
248 
249     /**
250      * <p>The current state of the web application.</p>
251      */
GetApplicationState()252     inline const ApplicationState& GetApplicationState() const{ return m_applicationState; }
253 
254     /**
255      * <p>The current state of the web application.</p>
256      */
ApplicationStateHasBeenSet()257     inline bool ApplicationStateHasBeenSet() const { return m_applicationStateHasBeenSet; }
258 
259     /**
260      * <p>The current state of the web application.</p>
261      */
SetApplicationState(const ApplicationState & value)262     inline void SetApplicationState(const ApplicationState& value) { m_applicationStateHasBeenSet = true; m_applicationState = value; }
263 
264     /**
265      * <p>The current state of the web application.</p>
266      */
SetApplicationState(ApplicationState && value)267     inline void SetApplicationState(ApplicationState&& value) { m_applicationStateHasBeenSet = true; m_applicationState = std::move(value); }
268 
269     /**
270      * <p>The current state of the web application.</p>
271      */
WithApplicationState(const ApplicationState & value)272     inline ApplicationSummary& WithApplicationState(const ApplicationState& value) { SetApplicationState(value); return *this;}
273 
274     /**
275      * <p>The current state of the web application.</p>
276      */
WithApplicationState(ApplicationState && value)277     inline ApplicationSummary& WithApplicationState(ApplicationState&& value) { SetApplicationState(std::move(value)); return *this;}
278 
279   private:
280 
281     Aws::String m_applicationId;
282     bool m_applicationIdHasBeenSet;
283 
284     Aws::String m_applicationName;
285     bool m_applicationNameHasBeenSet;
286 
287     Aws::String m_applicationDescription;
288     bool m_applicationDescriptionHasBeenSet;
289 
290     Aws::String m_applicationUrl;
291     bool m_applicationUrlHasBeenSet;
292 
293     long long m_applicationCreationDate;
294     bool m_applicationCreationDateHasBeenSet;
295 
296     long long m_applicationLastUpdateDate;
297     bool m_applicationLastUpdateDateHasBeenSet;
298 
299     ApplicationState m_applicationState;
300     bool m_applicationStateHasBeenSet;
301   };
302 
303 } // namespace Model
304 } // namespace IoTFleetHub
305 } // namespace Aws
306