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/personalize/Personalize_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 namespace Utils
15 {
16 namespace Json
17 {
18   class JsonValue;
19   class JsonView;
20 } // namespace Json
21 } // namespace Utils
22 namespace Personalize
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Provides a summary of the properties of a dataset group. For a complete
29    * listing, call the <a>DescribeDatasetGroup</a> API.</p><p><h3>See Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/personalize-2018-05-22/DatasetGroupSummary">AWS
31    * API Reference</a></p>
32    */
33   class AWS_PERSONALIZE_API DatasetGroupSummary
34   {
35   public:
36     DatasetGroupSummary();
37     DatasetGroupSummary(Aws::Utils::Json::JsonView jsonValue);
38     DatasetGroupSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>The name of the dataset group.</p>
44      */
GetName()45     inline const Aws::String& GetName() const{ return m_name; }
46 
47     /**
48      * <p>The name of the dataset group.</p>
49      */
NameHasBeenSet()50     inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 
52     /**
53      * <p>The name of the dataset group.</p>
54      */
SetName(const Aws::String & value)55     inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
56 
57     /**
58      * <p>The name of the dataset group.</p>
59      */
SetName(Aws::String && value)60     inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
61 
62     /**
63      * <p>The name of the dataset group.</p>
64      */
SetName(const char * value)65     inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
66 
67     /**
68      * <p>The name of the dataset group.</p>
69      */
WithName(const Aws::String & value)70     inline DatasetGroupSummary& WithName(const Aws::String& value) { SetName(value); return *this;}
71 
72     /**
73      * <p>The name of the dataset group.</p>
74      */
WithName(Aws::String && value)75     inline DatasetGroupSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
76 
77     /**
78      * <p>The name of the dataset group.</p>
79      */
WithName(const char * value)80     inline DatasetGroupSummary& WithName(const char* value) { SetName(value); return *this;}
81 
82 
83     /**
84      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
85      */
GetDatasetGroupArn()86     inline const Aws::String& GetDatasetGroupArn() const{ return m_datasetGroupArn; }
87 
88     /**
89      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
90      */
DatasetGroupArnHasBeenSet()91     inline bool DatasetGroupArnHasBeenSet() const { return m_datasetGroupArnHasBeenSet; }
92 
93     /**
94      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
95      */
SetDatasetGroupArn(const Aws::String & value)96     inline void SetDatasetGroupArn(const Aws::String& value) { m_datasetGroupArnHasBeenSet = true; m_datasetGroupArn = value; }
97 
98     /**
99      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
100      */
SetDatasetGroupArn(Aws::String && value)101     inline void SetDatasetGroupArn(Aws::String&& value) { m_datasetGroupArnHasBeenSet = true; m_datasetGroupArn = std::move(value); }
102 
103     /**
104      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
105      */
SetDatasetGroupArn(const char * value)106     inline void SetDatasetGroupArn(const char* value) { m_datasetGroupArnHasBeenSet = true; m_datasetGroupArn.assign(value); }
107 
108     /**
109      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
110      */
WithDatasetGroupArn(const Aws::String & value)111     inline DatasetGroupSummary& WithDatasetGroupArn(const Aws::String& value) { SetDatasetGroupArn(value); return *this;}
112 
113     /**
114      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
115      */
WithDatasetGroupArn(Aws::String && value)116     inline DatasetGroupSummary& WithDatasetGroupArn(Aws::String&& value) { SetDatasetGroupArn(std::move(value)); return *this;}
117 
118     /**
119      * <p>The Amazon Resource Name (ARN) of the dataset group.</p>
120      */
WithDatasetGroupArn(const char * value)121     inline DatasetGroupSummary& WithDatasetGroupArn(const char* value) { SetDatasetGroupArn(value); return *this;}
122 
123 
124     /**
125      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
126      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
127      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
128      */
GetStatus()129     inline const Aws::String& GetStatus() const{ return m_status; }
130 
131     /**
132      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
133      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
134      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
135      */
StatusHasBeenSet()136     inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
137 
138     /**
139      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
140      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
141      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
142      */
SetStatus(const Aws::String & value)143     inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
144 
145     /**
146      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
147      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
148      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
149      */
SetStatus(Aws::String && value)150     inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
151 
152     /**
153      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
154      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
155      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
156      */
SetStatus(const char * value)157     inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
158 
159     /**
160      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
161      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
162      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
163      */
WithStatus(const Aws::String & value)164     inline DatasetGroupSummary& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
165 
166     /**
167      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
168      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
169      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
170      */
WithStatus(Aws::String && value)171     inline DatasetGroupSummary& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;}
172 
173     /**
174      * <p>The status of the dataset group.</p> <p>A dataset group can be in one of the
175      * following states:</p> <ul> <li> <p>CREATE PENDING &gt; CREATE IN_PROGRESS &gt;
176      * ACTIVE -or- CREATE FAILED</p> </li> <li> <p>DELETE PENDING</p> </li> </ul>
177      */
WithStatus(const char * value)178     inline DatasetGroupSummary& WithStatus(const char* value) { SetStatus(value); return *this;}
179 
180 
181     /**
182      * <p>The date and time (in Unix time) that the dataset group was created.</p>
183      */
GetCreationDateTime()184     inline const Aws::Utils::DateTime& GetCreationDateTime() const{ return m_creationDateTime; }
185 
186     /**
187      * <p>The date and time (in Unix time) that the dataset group was created.</p>
188      */
CreationDateTimeHasBeenSet()189     inline bool CreationDateTimeHasBeenSet() const { return m_creationDateTimeHasBeenSet; }
190 
191     /**
192      * <p>The date and time (in Unix time) that the dataset group was created.</p>
193      */
SetCreationDateTime(const Aws::Utils::DateTime & value)194     inline void SetCreationDateTime(const Aws::Utils::DateTime& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = value; }
195 
196     /**
197      * <p>The date and time (in Unix time) that the dataset group was created.</p>
198      */
SetCreationDateTime(Aws::Utils::DateTime && value)199     inline void SetCreationDateTime(Aws::Utils::DateTime&& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = std::move(value); }
200 
201     /**
202      * <p>The date and time (in Unix time) that the dataset group was created.</p>
203      */
WithCreationDateTime(const Aws::Utils::DateTime & value)204     inline DatasetGroupSummary& WithCreationDateTime(const Aws::Utils::DateTime& value) { SetCreationDateTime(value); return *this;}
205 
206     /**
207      * <p>The date and time (in Unix time) that the dataset group was created.</p>
208      */
WithCreationDateTime(Aws::Utils::DateTime && value)209     inline DatasetGroupSummary& WithCreationDateTime(Aws::Utils::DateTime&& value) { SetCreationDateTime(std::move(value)); return *this;}
210 
211 
212     /**
213      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
214      */
GetLastUpdatedDateTime()215     inline const Aws::Utils::DateTime& GetLastUpdatedDateTime() const{ return m_lastUpdatedDateTime; }
216 
217     /**
218      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
219      */
LastUpdatedDateTimeHasBeenSet()220     inline bool LastUpdatedDateTimeHasBeenSet() const { return m_lastUpdatedDateTimeHasBeenSet; }
221 
222     /**
223      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
224      */
SetLastUpdatedDateTime(const Aws::Utils::DateTime & value)225     inline void SetLastUpdatedDateTime(const Aws::Utils::DateTime& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = value; }
226 
227     /**
228      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
229      */
SetLastUpdatedDateTime(Aws::Utils::DateTime && value)230     inline void SetLastUpdatedDateTime(Aws::Utils::DateTime&& value) { m_lastUpdatedDateTimeHasBeenSet = true; m_lastUpdatedDateTime = std::move(value); }
231 
232     /**
233      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
234      */
WithLastUpdatedDateTime(const Aws::Utils::DateTime & value)235     inline DatasetGroupSummary& WithLastUpdatedDateTime(const Aws::Utils::DateTime& value) { SetLastUpdatedDateTime(value); return *this;}
236 
237     /**
238      * <p>The date and time (in Unix time) that the dataset group was last updated.</p>
239      */
WithLastUpdatedDateTime(Aws::Utils::DateTime && value)240     inline DatasetGroupSummary& WithLastUpdatedDateTime(Aws::Utils::DateTime&& value) { SetLastUpdatedDateTime(std::move(value)); return *this;}
241 
242 
243     /**
244      * <p>If creating a dataset group fails, the reason behind the failure.</p>
245      */
GetFailureReason()246     inline const Aws::String& GetFailureReason() const{ return m_failureReason; }
247 
248     /**
249      * <p>If creating a dataset group fails, the reason behind the failure.</p>
250      */
FailureReasonHasBeenSet()251     inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; }
252 
253     /**
254      * <p>If creating a dataset group fails, the reason behind the failure.</p>
255      */
SetFailureReason(const Aws::String & value)256     inline void SetFailureReason(const Aws::String& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; }
257 
258     /**
259      * <p>If creating a dataset group fails, the reason behind the failure.</p>
260      */
SetFailureReason(Aws::String && value)261     inline void SetFailureReason(Aws::String&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); }
262 
263     /**
264      * <p>If creating a dataset group fails, the reason behind the failure.</p>
265      */
SetFailureReason(const char * value)266     inline void SetFailureReason(const char* value) { m_failureReasonHasBeenSet = true; m_failureReason.assign(value); }
267 
268     /**
269      * <p>If creating a dataset group fails, the reason behind the failure.</p>
270      */
WithFailureReason(const Aws::String & value)271     inline DatasetGroupSummary& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;}
272 
273     /**
274      * <p>If creating a dataset group fails, the reason behind the failure.</p>
275      */
WithFailureReason(Aws::String && value)276     inline DatasetGroupSummary& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;}
277 
278     /**
279      * <p>If creating a dataset group fails, the reason behind the failure.</p>
280      */
WithFailureReason(const char * value)281     inline DatasetGroupSummary& WithFailureReason(const char* value) { SetFailureReason(value); return *this;}
282 
283   private:
284 
285     Aws::String m_name;
286     bool m_nameHasBeenSet;
287 
288     Aws::String m_datasetGroupArn;
289     bool m_datasetGroupArnHasBeenSet;
290 
291     Aws::String m_status;
292     bool m_statusHasBeenSet;
293 
294     Aws::Utils::DateTime m_creationDateTime;
295     bool m_creationDateTimeHasBeenSet;
296 
297     Aws::Utils::DateTime m_lastUpdatedDateTime;
298     bool m_lastUpdatedDateTimeHasBeenSet;
299 
300     Aws::String m_failureReason;
301     bool m_failureReasonHasBeenSet;
302   };
303 
304 } // namespace Model
305 } // namespace Personalize
306 } // namespace Aws
307