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/codedeploy/CodeDeploy_EXPORTS.h>
8 #include <aws/codedeploy/CodeDeployRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace CodeDeploy
15 {
16 namespace Model
17 {
18 
19   /**
20    * <p>Represents the input of a <code>DeleteDeploymentGroup</code>
21    * operation.</p><p><h3>See Also:</h3>   <a
22    * href="http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeleteDeploymentGroupInput">AWS
23    * API Reference</a></p>
24    */
25   class AWS_CODEDEPLOY_API DeleteDeploymentGroupRequest : public CodeDeployRequest
26   {
27   public:
28     DeleteDeploymentGroupRequest();
29 
30     // Service request name is the Operation name which will send this request out,
31     // each operation should has unique request name, so that we can get operation's name from this request.
32     // Note: this is not true for response, multiple operations may have the same response name,
33     // so we can not get operation's name from response.
GetServiceRequestName()34     inline virtual const char* GetServiceRequestName() const override { return "DeleteDeploymentGroup"; }
35 
36     Aws::String SerializePayload() const override;
37 
38     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
39 
40 
41     /**
42      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
43      * account.</p>
44      */
GetApplicationName()45     inline const Aws::String& GetApplicationName() const{ return m_applicationName; }
46 
47     /**
48      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
49      * account.</p>
50      */
ApplicationNameHasBeenSet()51     inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; }
52 
53     /**
54      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
55      * account.</p>
56      */
SetApplicationName(const Aws::String & value)57     inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; }
58 
59     /**
60      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
61      * account.</p>
62      */
SetApplicationName(Aws::String && value)63     inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); }
64 
65     /**
66      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
67      * account.</p>
68      */
SetApplicationName(const char * value)69     inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); }
70 
71     /**
72      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
73      * account.</p>
74      */
WithApplicationName(const Aws::String & value)75     inline DeleteDeploymentGroupRequest& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;}
76 
77     /**
78      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
79      * account.</p>
80      */
WithApplicationName(Aws::String && value)81     inline DeleteDeploymentGroupRequest& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;}
82 
83     /**
84      * <p>The name of an AWS CodeDeploy application associated with the IAM user or AWS
85      * account.</p>
86      */
WithApplicationName(const char * value)87     inline DeleteDeploymentGroupRequest& WithApplicationName(const char* value) { SetApplicationName(value); return *this;}
88 
89 
90     /**
91      * <p>The name of a deployment group for the specified application.</p>
92      */
GetDeploymentGroupName()93     inline const Aws::String& GetDeploymentGroupName() const{ return m_deploymentGroupName; }
94 
95     /**
96      * <p>The name of a deployment group for the specified application.</p>
97      */
DeploymentGroupNameHasBeenSet()98     inline bool DeploymentGroupNameHasBeenSet() const { return m_deploymentGroupNameHasBeenSet; }
99 
100     /**
101      * <p>The name of a deployment group for the specified application.</p>
102      */
SetDeploymentGroupName(const Aws::String & value)103     inline void SetDeploymentGroupName(const Aws::String& value) { m_deploymentGroupNameHasBeenSet = true; m_deploymentGroupName = value; }
104 
105     /**
106      * <p>The name of a deployment group for the specified application.</p>
107      */
SetDeploymentGroupName(Aws::String && value)108     inline void SetDeploymentGroupName(Aws::String&& value) { m_deploymentGroupNameHasBeenSet = true; m_deploymentGroupName = std::move(value); }
109 
110     /**
111      * <p>The name of a deployment group for the specified application.</p>
112      */
SetDeploymentGroupName(const char * value)113     inline void SetDeploymentGroupName(const char* value) { m_deploymentGroupNameHasBeenSet = true; m_deploymentGroupName.assign(value); }
114 
115     /**
116      * <p>The name of a deployment group for the specified application.</p>
117      */
WithDeploymentGroupName(const Aws::String & value)118     inline DeleteDeploymentGroupRequest& WithDeploymentGroupName(const Aws::String& value) { SetDeploymentGroupName(value); return *this;}
119 
120     /**
121      * <p>The name of a deployment group for the specified application.</p>
122      */
WithDeploymentGroupName(Aws::String && value)123     inline DeleteDeploymentGroupRequest& WithDeploymentGroupName(Aws::String&& value) { SetDeploymentGroupName(std::move(value)); return *this;}
124 
125     /**
126      * <p>The name of a deployment group for the specified application.</p>
127      */
WithDeploymentGroupName(const char * value)128     inline DeleteDeploymentGroupRequest& WithDeploymentGroupName(const char* value) { SetDeploymentGroupName(value); return *this;}
129 
130   private:
131 
132     Aws::String m_applicationName;
133     bool m_applicationNameHasBeenSet;
134 
135     Aws::String m_deploymentGroupName;
136     bool m_deploymentGroupNameHasBeenSet;
137   };
138 
139 } // namespace Model
140 } // namespace CodeDeploy
141 } // namespace Aws
142