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/sagemaker/SageMaker_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/sagemaker/model/FlowDefinitionStatus.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 SageMaker
24 {
25 namespace Model
26 {
27 
28   /**
29    * <p>Contains summary information about the flow definition.</p><p><h3>See
30    * Also:</h3>   <a
31    * href="http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/FlowDefinitionSummary">AWS
32    * API Reference</a></p>
33    */
34   class AWS_SAGEMAKER_API FlowDefinitionSummary
35   {
36   public:
37     FlowDefinitionSummary();
38     FlowDefinitionSummary(Aws::Utils::Json::JsonView jsonValue);
39     FlowDefinitionSummary& operator=(Aws::Utils::Json::JsonView jsonValue);
40     Aws::Utils::Json::JsonValue Jsonize() const;
41 
42 
43     /**
44      * <p>The name of the flow definition.</p>
45      */
GetFlowDefinitionName()46     inline const Aws::String& GetFlowDefinitionName() const{ return m_flowDefinitionName; }
47 
48     /**
49      * <p>The name of the flow definition.</p>
50      */
FlowDefinitionNameHasBeenSet()51     inline bool FlowDefinitionNameHasBeenSet() const { return m_flowDefinitionNameHasBeenSet; }
52 
53     /**
54      * <p>The name of the flow definition.</p>
55      */
SetFlowDefinitionName(const Aws::String & value)56     inline void SetFlowDefinitionName(const Aws::String& value) { m_flowDefinitionNameHasBeenSet = true; m_flowDefinitionName = value; }
57 
58     /**
59      * <p>The name of the flow definition.</p>
60      */
SetFlowDefinitionName(Aws::String && value)61     inline void SetFlowDefinitionName(Aws::String&& value) { m_flowDefinitionNameHasBeenSet = true; m_flowDefinitionName = std::move(value); }
62 
63     /**
64      * <p>The name of the flow definition.</p>
65      */
SetFlowDefinitionName(const char * value)66     inline void SetFlowDefinitionName(const char* value) { m_flowDefinitionNameHasBeenSet = true; m_flowDefinitionName.assign(value); }
67 
68     /**
69      * <p>The name of the flow definition.</p>
70      */
WithFlowDefinitionName(const Aws::String & value)71     inline FlowDefinitionSummary& WithFlowDefinitionName(const Aws::String& value) { SetFlowDefinitionName(value); return *this;}
72 
73     /**
74      * <p>The name of the flow definition.</p>
75      */
WithFlowDefinitionName(Aws::String && value)76     inline FlowDefinitionSummary& WithFlowDefinitionName(Aws::String&& value) { SetFlowDefinitionName(std::move(value)); return *this;}
77 
78     /**
79      * <p>The name of the flow definition.</p>
80      */
WithFlowDefinitionName(const char * value)81     inline FlowDefinitionSummary& WithFlowDefinitionName(const char* value) { SetFlowDefinitionName(value); return *this;}
82 
83 
84     /**
85      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
86      */
GetFlowDefinitionArn()87     inline const Aws::String& GetFlowDefinitionArn() const{ return m_flowDefinitionArn; }
88 
89     /**
90      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
91      */
FlowDefinitionArnHasBeenSet()92     inline bool FlowDefinitionArnHasBeenSet() const { return m_flowDefinitionArnHasBeenSet; }
93 
94     /**
95      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
96      */
SetFlowDefinitionArn(const Aws::String & value)97     inline void SetFlowDefinitionArn(const Aws::String& value) { m_flowDefinitionArnHasBeenSet = true; m_flowDefinitionArn = value; }
98 
99     /**
100      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
101      */
SetFlowDefinitionArn(Aws::String && value)102     inline void SetFlowDefinitionArn(Aws::String&& value) { m_flowDefinitionArnHasBeenSet = true; m_flowDefinitionArn = std::move(value); }
103 
104     /**
105      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
106      */
SetFlowDefinitionArn(const char * value)107     inline void SetFlowDefinitionArn(const char* value) { m_flowDefinitionArnHasBeenSet = true; m_flowDefinitionArn.assign(value); }
108 
109     /**
110      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
111      */
WithFlowDefinitionArn(const Aws::String & value)112     inline FlowDefinitionSummary& WithFlowDefinitionArn(const Aws::String& value) { SetFlowDefinitionArn(value); return *this;}
113 
114     /**
115      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
116      */
WithFlowDefinitionArn(Aws::String && value)117     inline FlowDefinitionSummary& WithFlowDefinitionArn(Aws::String&& value) { SetFlowDefinitionArn(std::move(value)); return *this;}
118 
119     /**
120      * <p>The Amazon Resource Name (ARN) of the flow definition.</p>
121      */
WithFlowDefinitionArn(const char * value)122     inline FlowDefinitionSummary& WithFlowDefinitionArn(const char* value) { SetFlowDefinitionArn(value); return *this;}
123 
124 
125     /**
126      * <p>The status of the flow definition. Valid values:</p>
127      */
GetFlowDefinitionStatus()128     inline const FlowDefinitionStatus& GetFlowDefinitionStatus() const{ return m_flowDefinitionStatus; }
129 
130     /**
131      * <p>The status of the flow definition. Valid values:</p>
132      */
FlowDefinitionStatusHasBeenSet()133     inline bool FlowDefinitionStatusHasBeenSet() const { return m_flowDefinitionStatusHasBeenSet; }
134 
135     /**
136      * <p>The status of the flow definition. Valid values:</p>
137      */
SetFlowDefinitionStatus(const FlowDefinitionStatus & value)138     inline void SetFlowDefinitionStatus(const FlowDefinitionStatus& value) { m_flowDefinitionStatusHasBeenSet = true; m_flowDefinitionStatus = value; }
139 
140     /**
141      * <p>The status of the flow definition. Valid values:</p>
142      */
SetFlowDefinitionStatus(FlowDefinitionStatus && value)143     inline void SetFlowDefinitionStatus(FlowDefinitionStatus&& value) { m_flowDefinitionStatusHasBeenSet = true; m_flowDefinitionStatus = std::move(value); }
144 
145     /**
146      * <p>The status of the flow definition. Valid values:</p>
147      */
WithFlowDefinitionStatus(const FlowDefinitionStatus & value)148     inline FlowDefinitionSummary& WithFlowDefinitionStatus(const FlowDefinitionStatus& value) { SetFlowDefinitionStatus(value); return *this;}
149 
150     /**
151      * <p>The status of the flow definition. Valid values:</p>
152      */
WithFlowDefinitionStatus(FlowDefinitionStatus && value)153     inline FlowDefinitionSummary& WithFlowDefinitionStatus(FlowDefinitionStatus&& value) { SetFlowDefinitionStatus(std::move(value)); return *this;}
154 
155 
156     /**
157      * <p>The timestamp when SageMaker created the flow definition.</p>
158      */
GetCreationTime()159     inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; }
160 
161     /**
162      * <p>The timestamp when SageMaker created the flow definition.</p>
163      */
CreationTimeHasBeenSet()164     inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
165 
166     /**
167      * <p>The timestamp when SageMaker created the flow definition.</p>
168      */
SetCreationTime(const Aws::Utils::DateTime & value)169     inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; }
170 
171     /**
172      * <p>The timestamp when SageMaker created the flow definition.</p>
173      */
SetCreationTime(Aws::Utils::DateTime && value)174     inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); }
175 
176     /**
177      * <p>The timestamp when SageMaker created the flow definition.</p>
178      */
WithCreationTime(const Aws::Utils::DateTime & value)179     inline FlowDefinitionSummary& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;}
180 
181     /**
182      * <p>The timestamp when SageMaker created the flow definition.</p>
183      */
WithCreationTime(Aws::Utils::DateTime && value)184     inline FlowDefinitionSummary& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;}
185 
186 
187     /**
188      * <p>The reason why the flow definition creation failed. A failure reason is
189      * returned only when the flow definition status is <code>Failed</code>.</p>
190      */
GetFailureReason()191     inline const Aws::String& GetFailureReason() const{ return m_failureReason; }
192 
193     /**
194      * <p>The reason why the flow definition creation failed. A failure reason is
195      * returned only when the flow definition status is <code>Failed</code>.</p>
196      */
FailureReasonHasBeenSet()197     inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; }
198 
199     /**
200      * <p>The reason why the flow definition creation failed. A failure reason is
201      * returned only when the flow definition status is <code>Failed</code>.</p>
202      */
SetFailureReason(const Aws::String & value)203     inline void SetFailureReason(const Aws::String& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; }
204 
205     /**
206      * <p>The reason why the flow definition creation failed. A failure reason is
207      * returned only when the flow definition status is <code>Failed</code>.</p>
208      */
SetFailureReason(Aws::String && value)209     inline void SetFailureReason(Aws::String&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); }
210 
211     /**
212      * <p>The reason why the flow definition creation failed. A failure reason is
213      * returned only when the flow definition status is <code>Failed</code>.</p>
214      */
SetFailureReason(const char * value)215     inline void SetFailureReason(const char* value) { m_failureReasonHasBeenSet = true; m_failureReason.assign(value); }
216 
217     /**
218      * <p>The reason why the flow definition creation failed. A failure reason is
219      * returned only when the flow definition status is <code>Failed</code>.</p>
220      */
WithFailureReason(const Aws::String & value)221     inline FlowDefinitionSummary& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;}
222 
223     /**
224      * <p>The reason why the flow definition creation failed. A failure reason is
225      * returned only when the flow definition status is <code>Failed</code>.</p>
226      */
WithFailureReason(Aws::String && value)227     inline FlowDefinitionSummary& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;}
228 
229     /**
230      * <p>The reason why the flow definition creation failed. A failure reason is
231      * returned only when the flow definition status is <code>Failed</code>.</p>
232      */
WithFailureReason(const char * value)233     inline FlowDefinitionSummary& WithFailureReason(const char* value) { SetFailureReason(value); return *this;}
234 
235   private:
236 
237     Aws::String m_flowDefinitionName;
238     bool m_flowDefinitionNameHasBeenSet;
239 
240     Aws::String m_flowDefinitionArn;
241     bool m_flowDefinitionArnHasBeenSet;
242 
243     FlowDefinitionStatus m_flowDefinitionStatus;
244     bool m_flowDefinitionStatusHasBeenSet;
245 
246     Aws::Utils::DateTime m_creationTime;
247     bool m_creationTimeHasBeenSet;
248 
249     Aws::String m_failureReason;
250     bool m_failureReasonHasBeenSet;
251   };
252 
253 } // namespace Model
254 } // namespace SageMaker
255 } // namespace Aws
256