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/machinelearning/MachineLearning_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/core/utils/DateTime.h>
10 #include <aws/machinelearning/model/EntityStatus.h>
11 #include <aws/machinelearning/model/RedshiftMetadata.h>
12 #include <aws/machinelearning/model/RDSMetadata.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace Utils
18 {
19 namespace Json
20 {
21   class JsonValue;
22   class JsonView;
23 } // namespace Json
24 } // namespace Utils
25 namespace MachineLearning
26 {
27 namespace Model
28 {
29 
30   /**
31    * <p> Represents the output of the <code>GetDataSource</code> operation. </p> <p>
32    * The content consists of the detailed metadata and data file information and the
33    * current status of the <code>DataSource</code>. </p><p><h3>See Also:</h3>   <a
34    * href="http://docs.aws.amazon.com/goto/WebAPI/machinelearning-2014-12-12/DataSource">AWS
35    * API Reference</a></p>
36    */
37   class AWS_MACHINELEARNING_API DataSource
38   {
39   public:
40     DataSource();
41     DataSource(Aws::Utils::Json::JsonView jsonValue);
42     DataSource& operator=(Aws::Utils::Json::JsonView jsonValue);
43     Aws::Utils::Json::JsonValue Jsonize() const;
44 
45 
46     /**
47      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
48      */
GetDataSourceId()49     inline const Aws::String& GetDataSourceId() const{ return m_dataSourceId; }
50 
51     /**
52      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
53      */
DataSourceIdHasBeenSet()54     inline bool DataSourceIdHasBeenSet() const { return m_dataSourceIdHasBeenSet; }
55 
56     /**
57      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
58      */
SetDataSourceId(const Aws::String & value)59     inline void SetDataSourceId(const Aws::String& value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId = value; }
60 
61     /**
62      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
63      */
SetDataSourceId(Aws::String && value)64     inline void SetDataSourceId(Aws::String&& value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId = std::move(value); }
65 
66     /**
67      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
68      */
SetDataSourceId(const char * value)69     inline void SetDataSourceId(const char* value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId.assign(value); }
70 
71     /**
72      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
73      */
WithDataSourceId(const Aws::String & value)74     inline DataSource& WithDataSourceId(const Aws::String& value) { SetDataSourceId(value); return *this;}
75 
76     /**
77      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
78      */
WithDataSourceId(Aws::String && value)79     inline DataSource& WithDataSourceId(Aws::String&& value) { SetDataSourceId(std::move(value)); return *this;}
80 
81     /**
82      * <p>The ID that is assigned to the <code>DataSource</code> during creation.</p>
83      */
WithDataSourceId(const char * value)84     inline DataSource& WithDataSourceId(const char* value) { SetDataSourceId(value); return *this;}
85 
86 
87     /**
88      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
89      * S3) that is used by a <code>DataSource</code>.</p>
90      */
GetDataLocationS3()91     inline const Aws::String& GetDataLocationS3() const{ return m_dataLocationS3; }
92 
93     /**
94      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
95      * S3) that is used by a <code>DataSource</code>.</p>
96      */
DataLocationS3HasBeenSet()97     inline bool DataLocationS3HasBeenSet() const { return m_dataLocationS3HasBeenSet; }
98 
99     /**
100      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
101      * S3) that is used by a <code>DataSource</code>.</p>
102      */
SetDataLocationS3(const Aws::String & value)103     inline void SetDataLocationS3(const Aws::String& value) { m_dataLocationS3HasBeenSet = true; m_dataLocationS3 = value; }
104 
105     /**
106      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
107      * S3) that is used by a <code>DataSource</code>.</p>
108      */
SetDataLocationS3(Aws::String && value)109     inline void SetDataLocationS3(Aws::String&& value) { m_dataLocationS3HasBeenSet = true; m_dataLocationS3 = std::move(value); }
110 
111     /**
112      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
113      * S3) that is used by a <code>DataSource</code>.</p>
114      */
SetDataLocationS3(const char * value)115     inline void SetDataLocationS3(const char* value) { m_dataLocationS3HasBeenSet = true; m_dataLocationS3.assign(value); }
116 
117     /**
118      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
119      * S3) that is used by a <code>DataSource</code>.</p>
120      */
WithDataLocationS3(const Aws::String & value)121     inline DataSource& WithDataLocationS3(const Aws::String& value) { SetDataLocationS3(value); return *this;}
122 
123     /**
124      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
125      * S3) that is used by a <code>DataSource</code>.</p>
126      */
WithDataLocationS3(Aws::String && value)127     inline DataSource& WithDataLocationS3(Aws::String&& value) { SetDataLocationS3(std::move(value)); return *this;}
128 
129     /**
130      * <p>The location and name of the data in Amazon Simple Storage Service (Amazon
131      * S3) that is used by a <code>DataSource</code>.</p>
132      */
WithDataLocationS3(const char * value)133     inline DataSource& WithDataLocationS3(const char* value) { SetDataLocationS3(value); return *this;}
134 
135 
136     /**
137      * <p>A JSON string that represents the splitting and rearrangement requirement
138      * used when this <code>DataSource</code> was created.</p>
139      */
GetDataRearrangement()140     inline const Aws::String& GetDataRearrangement() const{ return m_dataRearrangement; }
141 
142     /**
143      * <p>A JSON string that represents the splitting and rearrangement requirement
144      * used when this <code>DataSource</code> was created.</p>
145      */
DataRearrangementHasBeenSet()146     inline bool DataRearrangementHasBeenSet() const { return m_dataRearrangementHasBeenSet; }
147 
148     /**
149      * <p>A JSON string that represents the splitting and rearrangement requirement
150      * used when this <code>DataSource</code> was created.</p>
151      */
SetDataRearrangement(const Aws::String & value)152     inline void SetDataRearrangement(const Aws::String& value) { m_dataRearrangementHasBeenSet = true; m_dataRearrangement = value; }
153 
154     /**
155      * <p>A JSON string that represents the splitting and rearrangement requirement
156      * used when this <code>DataSource</code> was created.</p>
157      */
SetDataRearrangement(Aws::String && value)158     inline void SetDataRearrangement(Aws::String&& value) { m_dataRearrangementHasBeenSet = true; m_dataRearrangement = std::move(value); }
159 
160     /**
161      * <p>A JSON string that represents the splitting and rearrangement requirement
162      * used when this <code>DataSource</code> was created.</p>
163      */
SetDataRearrangement(const char * value)164     inline void SetDataRearrangement(const char* value) { m_dataRearrangementHasBeenSet = true; m_dataRearrangement.assign(value); }
165 
166     /**
167      * <p>A JSON string that represents the splitting and rearrangement requirement
168      * used when this <code>DataSource</code> was created.</p>
169      */
WithDataRearrangement(const Aws::String & value)170     inline DataSource& WithDataRearrangement(const Aws::String& value) { SetDataRearrangement(value); return *this;}
171 
172     /**
173      * <p>A JSON string that represents the splitting and rearrangement requirement
174      * used when this <code>DataSource</code> was created.</p>
175      */
WithDataRearrangement(Aws::String && value)176     inline DataSource& WithDataRearrangement(Aws::String&& value) { SetDataRearrangement(std::move(value)); return *this;}
177 
178     /**
179      * <p>A JSON string that represents the splitting and rearrangement requirement
180      * used when this <code>DataSource</code> was created.</p>
181      */
WithDataRearrangement(const char * value)182     inline DataSource& WithDataRearrangement(const char* value) { SetDataRearrangement(value); return *this;}
183 
184 
185     /**
186      * <p>The AWS user account from which the <code>DataSource</code> was created. The
187      * account type can be either an AWS root account or an AWS Identity and Access
188      * Management (IAM) user account.</p>
189      */
GetCreatedByIamUser()190     inline const Aws::String& GetCreatedByIamUser() const{ return m_createdByIamUser; }
191 
192     /**
193      * <p>The AWS user account from which the <code>DataSource</code> was created. The
194      * account type can be either an AWS root account or an AWS Identity and Access
195      * Management (IAM) user account.</p>
196      */
CreatedByIamUserHasBeenSet()197     inline bool CreatedByIamUserHasBeenSet() const { return m_createdByIamUserHasBeenSet; }
198 
199     /**
200      * <p>The AWS user account from which the <code>DataSource</code> was created. The
201      * account type can be either an AWS root account or an AWS Identity and Access
202      * Management (IAM) user account.</p>
203      */
SetCreatedByIamUser(const Aws::String & value)204     inline void SetCreatedByIamUser(const Aws::String& value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser = value; }
205 
206     /**
207      * <p>The AWS user account from which the <code>DataSource</code> was created. The
208      * account type can be either an AWS root account or an AWS Identity and Access
209      * Management (IAM) user account.</p>
210      */
SetCreatedByIamUser(Aws::String && value)211     inline void SetCreatedByIamUser(Aws::String&& value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser = std::move(value); }
212 
213     /**
214      * <p>The AWS user account from which the <code>DataSource</code> was created. The
215      * account type can be either an AWS root account or an AWS Identity and Access
216      * Management (IAM) user account.</p>
217      */
SetCreatedByIamUser(const char * value)218     inline void SetCreatedByIamUser(const char* value) { m_createdByIamUserHasBeenSet = true; m_createdByIamUser.assign(value); }
219 
220     /**
221      * <p>The AWS user account from which the <code>DataSource</code> was created. The
222      * account type can be either an AWS root account or an AWS Identity and Access
223      * Management (IAM) user account.</p>
224      */
WithCreatedByIamUser(const Aws::String & value)225     inline DataSource& WithCreatedByIamUser(const Aws::String& value) { SetCreatedByIamUser(value); return *this;}
226 
227     /**
228      * <p>The AWS user account from which the <code>DataSource</code> was created. The
229      * account type can be either an AWS root account or an AWS Identity and Access
230      * Management (IAM) user account.</p>
231      */
WithCreatedByIamUser(Aws::String && value)232     inline DataSource& WithCreatedByIamUser(Aws::String&& value) { SetCreatedByIamUser(std::move(value)); return *this;}
233 
234     /**
235      * <p>The AWS user account from which the <code>DataSource</code> was created. The
236      * account type can be either an AWS root account or an AWS Identity and Access
237      * Management (IAM) user account.</p>
238      */
WithCreatedByIamUser(const char * value)239     inline DataSource& WithCreatedByIamUser(const char* value) { SetCreatedByIamUser(value); return *this;}
240 
241 
242     /**
243      * <p>The time that the <code>DataSource</code> was created. The time is expressed
244      * in epoch time.</p>
245      */
GetCreatedAt()246     inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; }
247 
248     /**
249      * <p>The time that the <code>DataSource</code> was created. The time is expressed
250      * in epoch time.</p>
251      */
CreatedAtHasBeenSet()252     inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
253 
254     /**
255      * <p>The time that the <code>DataSource</code> was created. The time is expressed
256      * in epoch time.</p>
257      */
SetCreatedAt(const Aws::Utils::DateTime & value)258     inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; }
259 
260     /**
261      * <p>The time that the <code>DataSource</code> was created. The time is expressed
262      * in epoch time.</p>
263      */
SetCreatedAt(Aws::Utils::DateTime && value)264     inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); }
265 
266     /**
267      * <p>The time that the <code>DataSource</code> was created. The time is expressed
268      * in epoch time.</p>
269      */
WithCreatedAt(const Aws::Utils::DateTime & value)270     inline DataSource& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;}
271 
272     /**
273      * <p>The time that the <code>DataSource</code> was created. The time is expressed
274      * in epoch time.</p>
275      */
WithCreatedAt(Aws::Utils::DateTime && value)276     inline DataSource& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;}
277 
278 
279     /**
280      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
281      * time is expressed in epoch time.</p>
282      */
GetLastUpdatedAt()283     inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; }
284 
285     /**
286      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
287      * time is expressed in epoch time.</p>
288      */
LastUpdatedAtHasBeenSet()289     inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; }
290 
291     /**
292      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
293      * time is expressed in epoch time.</p>
294      */
SetLastUpdatedAt(const Aws::Utils::DateTime & value)295     inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; }
296 
297     /**
298      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
299      * time is expressed in epoch time.</p>
300      */
SetLastUpdatedAt(Aws::Utils::DateTime && value)301     inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); }
302 
303     /**
304      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
305      * time is expressed in epoch time.</p>
306      */
WithLastUpdatedAt(const Aws::Utils::DateTime & value)307     inline DataSource& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;}
308 
309     /**
310      * <p>The time of the most recent edit to the <code>BatchPrediction</code>. The
311      * time is expressed in epoch time.</p>
312      */
WithLastUpdatedAt(Aws::Utils::DateTime && value)313     inline DataSource& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;}
314 
315 
316     /**
317      * <p>The total number of observations contained in the data files that the
318      * <code>DataSource</code> references.</p>
319      */
GetDataSizeInBytes()320     inline long long GetDataSizeInBytes() const{ return m_dataSizeInBytes; }
321 
322     /**
323      * <p>The total number of observations contained in the data files that the
324      * <code>DataSource</code> references.</p>
325      */
DataSizeInBytesHasBeenSet()326     inline bool DataSizeInBytesHasBeenSet() const { return m_dataSizeInBytesHasBeenSet; }
327 
328     /**
329      * <p>The total number of observations contained in the data files that the
330      * <code>DataSource</code> references.</p>
331      */
SetDataSizeInBytes(long long value)332     inline void SetDataSizeInBytes(long long value) { m_dataSizeInBytesHasBeenSet = true; m_dataSizeInBytes = value; }
333 
334     /**
335      * <p>The total number of observations contained in the data files that the
336      * <code>DataSource</code> references.</p>
337      */
WithDataSizeInBytes(long long value)338     inline DataSource& WithDataSizeInBytes(long long value) { SetDataSizeInBytes(value); return *this;}
339 
340 
341     /**
342      * <p>The number of data files referenced by the <code>DataSource</code>.</p>
343      */
GetNumberOfFiles()344     inline long long GetNumberOfFiles() const{ return m_numberOfFiles; }
345 
346     /**
347      * <p>The number of data files referenced by the <code>DataSource</code>.</p>
348      */
NumberOfFilesHasBeenSet()349     inline bool NumberOfFilesHasBeenSet() const { return m_numberOfFilesHasBeenSet; }
350 
351     /**
352      * <p>The number of data files referenced by the <code>DataSource</code>.</p>
353      */
SetNumberOfFiles(long long value)354     inline void SetNumberOfFiles(long long value) { m_numberOfFilesHasBeenSet = true; m_numberOfFiles = value; }
355 
356     /**
357      * <p>The number of data files referenced by the <code>DataSource</code>.</p>
358      */
WithNumberOfFiles(long long value)359     inline DataSource& WithNumberOfFiles(long long value) { SetNumberOfFiles(value); return *this;}
360 
361 
362     /**
363      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
364      */
GetName()365     inline const Aws::String& GetName() const{ return m_name; }
366 
367     /**
368      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
369      */
NameHasBeenSet()370     inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
371 
372     /**
373      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
374      */
SetName(const Aws::String & value)375     inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
376 
377     /**
378      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
379      */
SetName(Aws::String && value)380     inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
381 
382     /**
383      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
384      */
SetName(const char * value)385     inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
386 
387     /**
388      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
389      */
WithName(const Aws::String & value)390     inline DataSource& WithName(const Aws::String& value) { SetName(value); return *this;}
391 
392     /**
393      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
394      */
WithName(Aws::String && value)395     inline DataSource& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
396 
397     /**
398      * <p>A user-supplied name or description of the <code>DataSource</code>.</p>
399      */
WithName(const char * value)400     inline DataSource& WithName(const char* value) { SetName(value); return *this;}
401 
402 
403     /**
404      * <p>The current status of the <code>DataSource</code>. This element can have one
405      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
406      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
407      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
408      * - The request to create a <code>DataSource</code> did not run to completion. It
409      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
410      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
411      * as deleted. It is not usable.</p> </li> </ul>
412      */
GetStatus()413     inline const EntityStatus& GetStatus() const{ return m_status; }
414 
415     /**
416      * <p>The current status of the <code>DataSource</code>. This element can have one
417      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
418      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
419      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
420      * - The request to create a <code>DataSource</code> did not run to completion. It
421      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
422      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
423      * as deleted. It is not usable.</p> </li> </ul>
424      */
StatusHasBeenSet()425     inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
426 
427     /**
428      * <p>The current status of the <code>DataSource</code>. This element can have one
429      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
430      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
431      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
432      * - The request to create a <code>DataSource</code> did not run to completion. It
433      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
434      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
435      * as deleted. It is not usable.</p> </li> </ul>
436      */
SetStatus(const EntityStatus & value)437     inline void SetStatus(const EntityStatus& value) { m_statusHasBeenSet = true; m_status = value; }
438 
439     /**
440      * <p>The current status of the <code>DataSource</code>. This element can have one
441      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
442      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
443      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
444      * - The request to create a <code>DataSource</code> did not run to completion. It
445      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
446      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
447      * as deleted. It is not usable.</p> </li> </ul>
448      */
SetStatus(EntityStatus && value)449     inline void SetStatus(EntityStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
450 
451     /**
452      * <p>The current status of the <code>DataSource</code>. This element can have one
453      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
454      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
455      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
456      * - The request to create a <code>DataSource</code> did not run to completion. It
457      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
458      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
459      * as deleted. It is not usable.</p> </li> </ul>
460      */
WithStatus(const EntityStatus & value)461     inline DataSource& WithStatus(const EntityStatus& value) { SetStatus(value); return *this;}
462 
463     /**
464      * <p>The current status of the <code>DataSource</code>. This element can have one
465      * of the following values: </p> <ul> <li> <p>PENDING - Amazon Machine Learning
466      * (Amazon ML) submitted a request to create a <code>DataSource</code>.</p> </li>
467      * <li> <p>INPROGRESS - The creation process is underway.</p> </li> <li> <p>FAILED
468      * - The request to create a <code>DataSource</code> did not run to completion. It
469      * is not usable.</p> </li> <li> <p>COMPLETED - The creation process completed
470      * successfully.</p> </li> <li> <p>DELETED - The <code>DataSource</code> is marked
471      * as deleted. It is not usable.</p> </li> </ul>
472      */
WithStatus(EntityStatus && value)473     inline DataSource& WithStatus(EntityStatus&& value) { SetStatus(std::move(value)); return *this;}
474 
475 
476     /**
477      * <p>A description of the most recent details about creating the
478      * <code>DataSource</code>.</p>
479      */
GetMessage()480     inline const Aws::String& GetMessage() const{ return m_message; }
481 
482     /**
483      * <p>A description of the most recent details about creating the
484      * <code>DataSource</code>.</p>
485      */
MessageHasBeenSet()486     inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
487 
488     /**
489      * <p>A description of the most recent details about creating the
490      * <code>DataSource</code>.</p>
491      */
SetMessage(const Aws::String & value)492     inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
493 
494     /**
495      * <p>A description of the most recent details about creating the
496      * <code>DataSource</code>.</p>
497      */
SetMessage(Aws::String && value)498     inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
499 
500     /**
501      * <p>A description of the most recent details about creating the
502      * <code>DataSource</code>.</p>
503      */
SetMessage(const char * value)504     inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
505 
506     /**
507      * <p>A description of the most recent details about creating the
508      * <code>DataSource</code>.</p>
509      */
WithMessage(const Aws::String & value)510     inline DataSource& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
511 
512     /**
513      * <p>A description of the most recent details about creating the
514      * <code>DataSource</code>.</p>
515      */
WithMessage(Aws::String && value)516     inline DataSource& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
517 
518     /**
519      * <p>A description of the most recent details about creating the
520      * <code>DataSource</code>.</p>
521      */
WithMessage(const char * value)522     inline DataSource& WithMessage(const char* value) { SetMessage(value); return *this;}
523 
524 
525 
GetRedshiftMetadata()526     inline const RedshiftMetadata& GetRedshiftMetadata() const{ return m_redshiftMetadata; }
527 
528 
RedshiftMetadataHasBeenSet()529     inline bool RedshiftMetadataHasBeenSet() const { return m_redshiftMetadataHasBeenSet; }
530 
531 
SetRedshiftMetadata(const RedshiftMetadata & value)532     inline void SetRedshiftMetadata(const RedshiftMetadata& value) { m_redshiftMetadataHasBeenSet = true; m_redshiftMetadata = value; }
533 
534 
SetRedshiftMetadata(RedshiftMetadata && value)535     inline void SetRedshiftMetadata(RedshiftMetadata&& value) { m_redshiftMetadataHasBeenSet = true; m_redshiftMetadata = std::move(value); }
536 
537 
WithRedshiftMetadata(const RedshiftMetadata & value)538     inline DataSource& WithRedshiftMetadata(const RedshiftMetadata& value) { SetRedshiftMetadata(value); return *this;}
539 
540 
WithRedshiftMetadata(RedshiftMetadata && value)541     inline DataSource& WithRedshiftMetadata(RedshiftMetadata&& value) { SetRedshiftMetadata(std::move(value)); return *this;}
542 
543 
544 
GetRDSMetadata()545     inline const RDSMetadata& GetRDSMetadata() const{ return m_rDSMetadata; }
546 
547 
RDSMetadataHasBeenSet()548     inline bool RDSMetadataHasBeenSet() const { return m_rDSMetadataHasBeenSet; }
549 
550 
SetRDSMetadata(const RDSMetadata & value)551     inline void SetRDSMetadata(const RDSMetadata& value) { m_rDSMetadataHasBeenSet = true; m_rDSMetadata = value; }
552 
553 
SetRDSMetadata(RDSMetadata && value)554     inline void SetRDSMetadata(RDSMetadata&& value) { m_rDSMetadataHasBeenSet = true; m_rDSMetadata = std::move(value); }
555 
556 
WithRDSMetadata(const RDSMetadata & value)557     inline DataSource& WithRDSMetadata(const RDSMetadata& value) { SetRDSMetadata(value); return *this;}
558 
559 
WithRDSMetadata(RDSMetadata && value)560     inline DataSource& WithRDSMetadata(RDSMetadata&& value) { SetRDSMetadata(std::move(value)); return *this;}
561 
562 
563 
GetRoleARN()564     inline const Aws::String& GetRoleARN() const{ return m_roleARN; }
565 
566 
RoleARNHasBeenSet()567     inline bool RoleARNHasBeenSet() const { return m_roleARNHasBeenSet; }
568 
569 
SetRoleARN(const Aws::String & value)570     inline void SetRoleARN(const Aws::String& value) { m_roleARNHasBeenSet = true; m_roleARN = value; }
571 
572 
SetRoleARN(Aws::String && value)573     inline void SetRoleARN(Aws::String&& value) { m_roleARNHasBeenSet = true; m_roleARN = std::move(value); }
574 
575 
SetRoleARN(const char * value)576     inline void SetRoleARN(const char* value) { m_roleARNHasBeenSet = true; m_roleARN.assign(value); }
577 
578 
WithRoleARN(const Aws::String & value)579     inline DataSource& WithRoleARN(const Aws::String& value) { SetRoleARN(value); return *this;}
580 
581 
WithRoleARN(Aws::String && value)582     inline DataSource& WithRoleARN(Aws::String&& value) { SetRoleARN(std::move(value)); return *this;}
583 
584 
WithRoleARN(const char * value)585     inline DataSource& WithRoleARN(const char* value) { SetRoleARN(value); return *this;}
586 
587 
588     /**
589      * <p> The parameter is <code>true</code> if statistics need to be generated from
590      * the observation data. </p>
591      */
GetComputeStatistics()592     inline bool GetComputeStatistics() const{ return m_computeStatistics; }
593 
594     /**
595      * <p> The parameter is <code>true</code> if statistics need to be generated from
596      * the observation data. </p>
597      */
ComputeStatisticsHasBeenSet()598     inline bool ComputeStatisticsHasBeenSet() const { return m_computeStatisticsHasBeenSet; }
599 
600     /**
601      * <p> The parameter is <code>true</code> if statistics need to be generated from
602      * the observation data. </p>
603      */
SetComputeStatistics(bool value)604     inline void SetComputeStatistics(bool value) { m_computeStatisticsHasBeenSet = true; m_computeStatistics = value; }
605 
606     /**
607      * <p> The parameter is <code>true</code> if statistics need to be generated from
608      * the observation data. </p>
609      */
WithComputeStatistics(bool value)610     inline DataSource& WithComputeStatistics(bool value) { SetComputeStatistics(value); return *this;}
611 
612 
613 
GetComputeTime()614     inline long long GetComputeTime() const{ return m_computeTime; }
615 
616 
ComputeTimeHasBeenSet()617     inline bool ComputeTimeHasBeenSet() const { return m_computeTimeHasBeenSet; }
618 
619 
SetComputeTime(long long value)620     inline void SetComputeTime(long long value) { m_computeTimeHasBeenSet = true; m_computeTime = value; }
621 
622 
WithComputeTime(long long value)623     inline DataSource& WithComputeTime(long long value) { SetComputeTime(value); return *this;}
624 
625 
626 
GetFinishedAt()627     inline const Aws::Utils::DateTime& GetFinishedAt() const{ return m_finishedAt; }
628 
629 
FinishedAtHasBeenSet()630     inline bool FinishedAtHasBeenSet() const { return m_finishedAtHasBeenSet; }
631 
632 
SetFinishedAt(const Aws::Utils::DateTime & value)633     inline void SetFinishedAt(const Aws::Utils::DateTime& value) { m_finishedAtHasBeenSet = true; m_finishedAt = value; }
634 
635 
SetFinishedAt(Aws::Utils::DateTime && value)636     inline void SetFinishedAt(Aws::Utils::DateTime&& value) { m_finishedAtHasBeenSet = true; m_finishedAt = std::move(value); }
637 
638 
WithFinishedAt(const Aws::Utils::DateTime & value)639     inline DataSource& WithFinishedAt(const Aws::Utils::DateTime& value) { SetFinishedAt(value); return *this;}
640 
641 
WithFinishedAt(Aws::Utils::DateTime && value)642     inline DataSource& WithFinishedAt(Aws::Utils::DateTime&& value) { SetFinishedAt(std::move(value)); return *this;}
643 
644 
645 
GetStartedAt()646     inline const Aws::Utils::DateTime& GetStartedAt() const{ return m_startedAt; }
647 
648 
StartedAtHasBeenSet()649     inline bool StartedAtHasBeenSet() const { return m_startedAtHasBeenSet; }
650 
651 
SetStartedAt(const Aws::Utils::DateTime & value)652     inline void SetStartedAt(const Aws::Utils::DateTime& value) { m_startedAtHasBeenSet = true; m_startedAt = value; }
653 
654 
SetStartedAt(Aws::Utils::DateTime && value)655     inline void SetStartedAt(Aws::Utils::DateTime&& value) { m_startedAtHasBeenSet = true; m_startedAt = std::move(value); }
656 
657 
WithStartedAt(const Aws::Utils::DateTime & value)658     inline DataSource& WithStartedAt(const Aws::Utils::DateTime& value) { SetStartedAt(value); return *this;}
659 
660 
WithStartedAt(Aws::Utils::DateTime && value)661     inline DataSource& WithStartedAt(Aws::Utils::DateTime&& value) { SetStartedAt(std::move(value)); return *this;}
662 
663   private:
664 
665     Aws::String m_dataSourceId;
666     bool m_dataSourceIdHasBeenSet;
667 
668     Aws::String m_dataLocationS3;
669     bool m_dataLocationS3HasBeenSet;
670 
671     Aws::String m_dataRearrangement;
672     bool m_dataRearrangementHasBeenSet;
673 
674     Aws::String m_createdByIamUser;
675     bool m_createdByIamUserHasBeenSet;
676 
677     Aws::Utils::DateTime m_createdAt;
678     bool m_createdAtHasBeenSet;
679 
680     Aws::Utils::DateTime m_lastUpdatedAt;
681     bool m_lastUpdatedAtHasBeenSet;
682 
683     long long m_dataSizeInBytes;
684     bool m_dataSizeInBytesHasBeenSet;
685 
686     long long m_numberOfFiles;
687     bool m_numberOfFilesHasBeenSet;
688 
689     Aws::String m_name;
690     bool m_nameHasBeenSet;
691 
692     EntityStatus m_status;
693     bool m_statusHasBeenSet;
694 
695     Aws::String m_message;
696     bool m_messageHasBeenSet;
697 
698     RedshiftMetadata m_redshiftMetadata;
699     bool m_redshiftMetadataHasBeenSet;
700 
701     RDSMetadata m_rDSMetadata;
702     bool m_rDSMetadataHasBeenSet;
703 
704     Aws::String m_roleARN;
705     bool m_roleARNHasBeenSet;
706 
707     bool m_computeStatistics;
708     bool m_computeStatisticsHasBeenSet;
709 
710     long long m_computeTime;
711     bool m_computeTimeHasBeenSet;
712 
713     Aws::Utils::DateTime m_finishedAt;
714     bool m_finishedAtHasBeenSet;
715 
716     Aws::Utils::DateTime m_startedAt;
717     bool m_startedAtHasBeenSet;
718   };
719 
720 } // namespace Model
721 } // namespace MachineLearning
722 } // namespace Aws
723