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/amplify/Amplify_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 Amplify
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p> Describes the backend environment for an Amplify app. </p><p><h3>See
29    * Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/BackendEnvironment">AWS
31    * API Reference</a></p>
32    */
33   class AWS_AMPLIFY_API BackendEnvironment
34   {
35   public:
36     BackendEnvironment();
37     BackendEnvironment(Aws::Utils::Json::JsonView jsonValue);
38     BackendEnvironment& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
44      * Amplify app. </p>
45      */
GetBackendEnvironmentArn()46     inline const Aws::String& GetBackendEnvironmentArn() const{ return m_backendEnvironmentArn; }
47 
48     /**
49      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
50      * Amplify app. </p>
51      */
BackendEnvironmentArnHasBeenSet()52     inline bool BackendEnvironmentArnHasBeenSet() const { return m_backendEnvironmentArnHasBeenSet; }
53 
54     /**
55      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
56      * Amplify app. </p>
57      */
SetBackendEnvironmentArn(const Aws::String & value)58     inline void SetBackendEnvironmentArn(const Aws::String& value) { m_backendEnvironmentArnHasBeenSet = true; m_backendEnvironmentArn = value; }
59 
60     /**
61      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
62      * Amplify app. </p>
63      */
SetBackendEnvironmentArn(Aws::String && value)64     inline void SetBackendEnvironmentArn(Aws::String&& value) { m_backendEnvironmentArnHasBeenSet = true; m_backendEnvironmentArn = std::move(value); }
65 
66     /**
67      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
68      * Amplify app. </p>
69      */
SetBackendEnvironmentArn(const char * value)70     inline void SetBackendEnvironmentArn(const char* value) { m_backendEnvironmentArnHasBeenSet = true; m_backendEnvironmentArn.assign(value); }
71 
72     /**
73      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
74      * Amplify app. </p>
75      */
WithBackendEnvironmentArn(const Aws::String & value)76     inline BackendEnvironment& WithBackendEnvironmentArn(const Aws::String& value) { SetBackendEnvironmentArn(value); return *this;}
77 
78     /**
79      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
80      * Amplify app. </p>
81      */
WithBackendEnvironmentArn(Aws::String && value)82     inline BackendEnvironment& WithBackendEnvironmentArn(Aws::String&& value) { SetBackendEnvironmentArn(std::move(value)); return *this;}
83 
84     /**
85      * <p> The Amazon Resource Name (ARN) for a backend environment that is part of an
86      * Amplify app. </p>
87      */
WithBackendEnvironmentArn(const char * value)88     inline BackendEnvironment& WithBackendEnvironmentArn(const char* value) { SetBackendEnvironmentArn(value); return *this;}
89 
90 
91     /**
92      * <p> The name for a backend environment that is part of an Amplify app. </p>
93      */
GetEnvironmentName()94     inline const Aws::String& GetEnvironmentName() const{ return m_environmentName; }
95 
96     /**
97      * <p> The name for a backend environment that is part of an Amplify app. </p>
98      */
EnvironmentNameHasBeenSet()99     inline bool EnvironmentNameHasBeenSet() const { return m_environmentNameHasBeenSet; }
100 
101     /**
102      * <p> The name for a backend environment that is part of an Amplify app. </p>
103      */
SetEnvironmentName(const Aws::String & value)104     inline void SetEnvironmentName(const Aws::String& value) { m_environmentNameHasBeenSet = true; m_environmentName = value; }
105 
106     /**
107      * <p> The name for a backend environment that is part of an Amplify app. </p>
108      */
SetEnvironmentName(Aws::String && value)109     inline void SetEnvironmentName(Aws::String&& value) { m_environmentNameHasBeenSet = true; m_environmentName = std::move(value); }
110 
111     /**
112      * <p> The name for a backend environment that is part of an Amplify app. </p>
113      */
SetEnvironmentName(const char * value)114     inline void SetEnvironmentName(const char* value) { m_environmentNameHasBeenSet = true; m_environmentName.assign(value); }
115 
116     /**
117      * <p> The name for a backend environment that is part of an Amplify app. </p>
118      */
WithEnvironmentName(const Aws::String & value)119     inline BackendEnvironment& WithEnvironmentName(const Aws::String& value) { SetEnvironmentName(value); return *this;}
120 
121     /**
122      * <p> The name for a backend environment that is part of an Amplify app. </p>
123      */
WithEnvironmentName(Aws::String && value)124     inline BackendEnvironment& WithEnvironmentName(Aws::String&& value) { SetEnvironmentName(std::move(value)); return *this;}
125 
126     /**
127      * <p> The name for a backend environment that is part of an Amplify app. </p>
128      */
WithEnvironmentName(const char * value)129     inline BackendEnvironment& WithEnvironmentName(const char* value) { SetEnvironmentName(value); return *this;}
130 
131 
132     /**
133      * <p> The AWS CloudFormation stack name of a backend environment. </p>
134      */
GetStackName()135     inline const Aws::String& GetStackName() const{ return m_stackName; }
136 
137     /**
138      * <p> The AWS CloudFormation stack name of a backend environment. </p>
139      */
StackNameHasBeenSet()140     inline bool StackNameHasBeenSet() const { return m_stackNameHasBeenSet; }
141 
142     /**
143      * <p> The AWS CloudFormation stack name of a backend environment. </p>
144      */
SetStackName(const Aws::String & value)145     inline void SetStackName(const Aws::String& value) { m_stackNameHasBeenSet = true; m_stackName = value; }
146 
147     /**
148      * <p> The AWS CloudFormation stack name of a backend environment. </p>
149      */
SetStackName(Aws::String && value)150     inline void SetStackName(Aws::String&& value) { m_stackNameHasBeenSet = true; m_stackName = std::move(value); }
151 
152     /**
153      * <p> The AWS CloudFormation stack name of a backend environment. </p>
154      */
SetStackName(const char * value)155     inline void SetStackName(const char* value) { m_stackNameHasBeenSet = true; m_stackName.assign(value); }
156 
157     /**
158      * <p> The AWS CloudFormation stack name of a backend environment. </p>
159      */
WithStackName(const Aws::String & value)160     inline BackendEnvironment& WithStackName(const Aws::String& value) { SetStackName(value); return *this;}
161 
162     /**
163      * <p> The AWS CloudFormation stack name of a backend environment. </p>
164      */
WithStackName(Aws::String && value)165     inline BackendEnvironment& WithStackName(Aws::String&& value) { SetStackName(std::move(value)); return *this;}
166 
167     /**
168      * <p> The AWS CloudFormation stack name of a backend environment. </p>
169      */
WithStackName(const char * value)170     inline BackendEnvironment& WithStackName(const char* value) { SetStackName(value); return *this;}
171 
172 
173     /**
174      * <p> The name of deployment artifacts. </p>
175      */
GetDeploymentArtifacts()176     inline const Aws::String& GetDeploymentArtifacts() const{ return m_deploymentArtifacts; }
177 
178     /**
179      * <p> The name of deployment artifacts. </p>
180      */
DeploymentArtifactsHasBeenSet()181     inline bool DeploymentArtifactsHasBeenSet() const { return m_deploymentArtifactsHasBeenSet; }
182 
183     /**
184      * <p> The name of deployment artifacts. </p>
185      */
SetDeploymentArtifacts(const Aws::String & value)186     inline void SetDeploymentArtifacts(const Aws::String& value) { m_deploymentArtifactsHasBeenSet = true; m_deploymentArtifacts = value; }
187 
188     /**
189      * <p> The name of deployment artifacts. </p>
190      */
SetDeploymentArtifacts(Aws::String && value)191     inline void SetDeploymentArtifacts(Aws::String&& value) { m_deploymentArtifactsHasBeenSet = true; m_deploymentArtifacts = std::move(value); }
192 
193     /**
194      * <p> The name of deployment artifacts. </p>
195      */
SetDeploymentArtifacts(const char * value)196     inline void SetDeploymentArtifacts(const char* value) { m_deploymentArtifactsHasBeenSet = true; m_deploymentArtifacts.assign(value); }
197 
198     /**
199      * <p> The name of deployment artifacts. </p>
200      */
WithDeploymentArtifacts(const Aws::String & value)201     inline BackendEnvironment& WithDeploymentArtifacts(const Aws::String& value) { SetDeploymentArtifacts(value); return *this;}
202 
203     /**
204      * <p> The name of deployment artifacts. </p>
205      */
WithDeploymentArtifacts(Aws::String && value)206     inline BackendEnvironment& WithDeploymentArtifacts(Aws::String&& value) { SetDeploymentArtifacts(std::move(value)); return *this;}
207 
208     /**
209      * <p> The name of deployment artifacts. </p>
210      */
WithDeploymentArtifacts(const char * value)211     inline BackendEnvironment& WithDeploymentArtifacts(const char* value) { SetDeploymentArtifacts(value); return *this;}
212 
213 
214     /**
215      * <p> The creation date and time for a backend environment that is part of an
216      * Amplify app. </p>
217      */
GetCreateTime()218     inline const Aws::Utils::DateTime& GetCreateTime() const{ return m_createTime; }
219 
220     /**
221      * <p> The creation date and time for a backend environment that is part of an
222      * Amplify app. </p>
223      */
CreateTimeHasBeenSet()224     inline bool CreateTimeHasBeenSet() const { return m_createTimeHasBeenSet; }
225 
226     /**
227      * <p> The creation date and time for a backend environment that is part of an
228      * Amplify app. </p>
229      */
SetCreateTime(const Aws::Utils::DateTime & value)230     inline void SetCreateTime(const Aws::Utils::DateTime& value) { m_createTimeHasBeenSet = true; m_createTime = value; }
231 
232     /**
233      * <p> The creation date and time for a backend environment that is part of an
234      * Amplify app. </p>
235      */
SetCreateTime(Aws::Utils::DateTime && value)236     inline void SetCreateTime(Aws::Utils::DateTime&& value) { m_createTimeHasBeenSet = true; m_createTime = std::move(value); }
237 
238     /**
239      * <p> The creation date and time for a backend environment that is part of an
240      * Amplify app. </p>
241      */
WithCreateTime(const Aws::Utils::DateTime & value)242     inline BackendEnvironment& WithCreateTime(const Aws::Utils::DateTime& value) { SetCreateTime(value); return *this;}
243 
244     /**
245      * <p> The creation date and time for a backend environment that is part of an
246      * Amplify app. </p>
247      */
WithCreateTime(Aws::Utils::DateTime && value)248     inline BackendEnvironment& WithCreateTime(Aws::Utils::DateTime&& value) { SetCreateTime(std::move(value)); return *this;}
249 
250 
251     /**
252      * <p> The last updated date and time for a backend environment that is part of an
253      * Amplify app. </p>
254      */
GetUpdateTime()255     inline const Aws::Utils::DateTime& GetUpdateTime() const{ return m_updateTime; }
256 
257     /**
258      * <p> The last updated date and time for a backend environment that is part of an
259      * Amplify app. </p>
260      */
UpdateTimeHasBeenSet()261     inline bool UpdateTimeHasBeenSet() const { return m_updateTimeHasBeenSet; }
262 
263     /**
264      * <p> The last updated date and time for a backend environment that is part of an
265      * Amplify app. </p>
266      */
SetUpdateTime(const Aws::Utils::DateTime & value)267     inline void SetUpdateTime(const Aws::Utils::DateTime& value) { m_updateTimeHasBeenSet = true; m_updateTime = value; }
268 
269     /**
270      * <p> The last updated date and time for a backend environment that is part of an
271      * Amplify app. </p>
272      */
SetUpdateTime(Aws::Utils::DateTime && value)273     inline void SetUpdateTime(Aws::Utils::DateTime&& value) { m_updateTimeHasBeenSet = true; m_updateTime = std::move(value); }
274 
275     /**
276      * <p> The last updated date and time for a backend environment that is part of an
277      * Amplify app. </p>
278      */
WithUpdateTime(const Aws::Utils::DateTime & value)279     inline BackendEnvironment& WithUpdateTime(const Aws::Utils::DateTime& value) { SetUpdateTime(value); return *this;}
280 
281     /**
282      * <p> The last updated date and time for a backend environment that is part of an
283      * Amplify app. </p>
284      */
WithUpdateTime(Aws::Utils::DateTime && value)285     inline BackendEnvironment& WithUpdateTime(Aws::Utils::DateTime&& value) { SetUpdateTime(std::move(value)); return *this;}
286 
287   private:
288 
289     Aws::String m_backendEnvironmentArn;
290     bool m_backendEnvironmentArnHasBeenSet;
291 
292     Aws::String m_environmentName;
293     bool m_environmentNameHasBeenSet;
294 
295     Aws::String m_stackName;
296     bool m_stackNameHasBeenSet;
297 
298     Aws::String m_deploymentArtifacts;
299     bool m_deploymentArtifactsHasBeenSet;
300 
301     Aws::Utils::DateTime m_createTime;
302     bool m_createTimeHasBeenSet;
303 
304     Aws::Utils::DateTime m_updateTime;
305     bool m_updateTimeHasBeenSet;
306   };
307 
308 } // namespace Model
309 } // namespace Amplify
310 } // namespace Aws
311