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/nimble/NimbleStudio_EXPORTS.h>
8 #include <aws/nimble/NimbleStudioRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 #include <aws/core/utils/UUID.h>
12 
13 namespace Aws
14 {
15 namespace NimbleStudio
16 {
17 namespace Model
18 {
19 
20   /**
21    */
22   class AWS_NIMBLESTUDIO_API DeleteLaunchProfileMemberRequest : public NimbleStudioRequest
23   {
24   public:
25     DeleteLaunchProfileMemberRequest();
26 
27     // Service request name is the Operation name which will send this request out,
28     // each operation should has unique request name, so that we can get operation's name from this request.
29     // Note: this is not true for response, multiple operations may have the same response name,
30     // so we can not get operation's name from response.
GetServiceRequestName()31     inline virtual const char* GetServiceRequestName() const override { return "DeleteLaunchProfileMember"; }
32 
33     Aws::String SerializePayload() const override;
34 
35     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
36 
37 
38     /**
39      * <p>To make an idempotent API request using one of these actions, specify a
40      * client token in the request. You should not reuse the same client token for
41      * other API requests. If you retry a request that completed successfully using the
42      * same client token and the same parameters, the retry succeeds without performing
43      * any further actions. If you retry a successful request using the same client
44      * token, but one or more of the parameters are different, the retry fails with a
45      * ValidationException error.</p>
46      */
GetClientToken()47     inline const Aws::String& GetClientToken() const{ return m_clientToken; }
48 
49     /**
50      * <p>To make an idempotent API request using one of these actions, specify a
51      * client token in the request. You should not reuse the same client token for
52      * other API requests. If you retry a request that completed successfully using the
53      * same client token and the same parameters, the retry succeeds without performing
54      * any further actions. If you retry a successful request using the same client
55      * token, but one or more of the parameters are different, the retry fails with a
56      * ValidationException error.</p>
57      */
ClientTokenHasBeenSet()58     inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
59 
60     /**
61      * <p>To make an idempotent API request using one of these actions, specify a
62      * client token in the request. You should not reuse the same client token for
63      * other API requests. If you retry a request that completed successfully using the
64      * same client token and the same parameters, the retry succeeds without performing
65      * any further actions. If you retry a successful request using the same client
66      * token, but one or more of the parameters are different, the retry fails with a
67      * ValidationException error.</p>
68      */
SetClientToken(const Aws::String & value)69     inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; }
70 
71     /**
72      * <p>To make an idempotent API request using one of these actions, specify a
73      * client token in the request. You should not reuse the same client token for
74      * other API requests. If you retry a request that completed successfully using the
75      * same client token and the same parameters, the retry succeeds without performing
76      * any further actions. If you retry a successful request using the same client
77      * token, but one or more of the parameters are different, the retry fails with a
78      * ValidationException error.</p>
79      */
SetClientToken(Aws::String && value)80     inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); }
81 
82     /**
83      * <p>To make an idempotent API request using one of these actions, specify a
84      * client token in the request. You should not reuse the same client token for
85      * other API requests. If you retry a request that completed successfully using the
86      * same client token and the same parameters, the retry succeeds without performing
87      * any further actions. If you retry a successful request using the same client
88      * token, but one or more of the parameters are different, the retry fails with a
89      * ValidationException error.</p>
90      */
SetClientToken(const char * value)91     inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); }
92 
93     /**
94      * <p>To make an idempotent API request using one of these actions, specify a
95      * client token in the request. You should not reuse the same client token for
96      * other API requests. If you retry a request that completed successfully using the
97      * same client token and the same parameters, the retry succeeds without performing
98      * any further actions. If you retry a successful request using the same client
99      * token, but one or more of the parameters are different, the retry fails with a
100      * ValidationException error.</p>
101      */
WithClientToken(const Aws::String & value)102     inline DeleteLaunchProfileMemberRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;}
103 
104     /**
105      * <p>To make an idempotent API request using one of these actions, specify a
106      * client token in the request. You should not reuse the same client token for
107      * other API requests. If you retry a request that completed successfully using the
108      * same client token and the same parameters, the retry succeeds without performing
109      * any further actions. If you retry a successful request using the same client
110      * token, but one or more of the parameters are different, the retry fails with a
111      * ValidationException error.</p>
112      */
WithClientToken(Aws::String && value)113     inline DeleteLaunchProfileMemberRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;}
114 
115     /**
116      * <p>To make an idempotent API request using one of these actions, specify a
117      * client token in the request. You should not reuse the same client token for
118      * other API requests. If you retry a request that completed successfully using the
119      * same client token and the same parameters, the retry succeeds without performing
120      * any further actions. If you retry a successful request using the same client
121      * token, but one or more of the parameters are different, the retry fails with a
122      * ValidationException error.</p>
123      */
WithClientToken(const char * value)124     inline DeleteLaunchProfileMemberRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
125 
126 
127     /**
128      * <p>The launch profile ID.</p>
129      */
GetLaunchProfileId()130     inline const Aws::String& GetLaunchProfileId() const{ return m_launchProfileId; }
131 
132     /**
133      * <p>The launch profile ID.</p>
134      */
LaunchProfileIdHasBeenSet()135     inline bool LaunchProfileIdHasBeenSet() const { return m_launchProfileIdHasBeenSet; }
136 
137     /**
138      * <p>The launch profile ID.</p>
139      */
SetLaunchProfileId(const Aws::String & value)140     inline void SetLaunchProfileId(const Aws::String& value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId = value; }
141 
142     /**
143      * <p>The launch profile ID.</p>
144      */
SetLaunchProfileId(Aws::String && value)145     inline void SetLaunchProfileId(Aws::String&& value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId = std::move(value); }
146 
147     /**
148      * <p>The launch profile ID.</p>
149      */
SetLaunchProfileId(const char * value)150     inline void SetLaunchProfileId(const char* value) { m_launchProfileIdHasBeenSet = true; m_launchProfileId.assign(value); }
151 
152     /**
153      * <p>The launch profile ID.</p>
154      */
WithLaunchProfileId(const Aws::String & value)155     inline DeleteLaunchProfileMemberRequest& WithLaunchProfileId(const Aws::String& value) { SetLaunchProfileId(value); return *this;}
156 
157     /**
158      * <p>The launch profile ID.</p>
159      */
WithLaunchProfileId(Aws::String && value)160     inline DeleteLaunchProfileMemberRequest& WithLaunchProfileId(Aws::String&& value) { SetLaunchProfileId(std::move(value)); return *this;}
161 
162     /**
163      * <p>The launch profile ID.</p>
164      */
WithLaunchProfileId(const char * value)165     inline DeleteLaunchProfileMemberRequest& WithLaunchProfileId(const char* value) { SetLaunchProfileId(value); return *this;}
166 
167 
168     /**
169      * <p>The principal ID.</p>
170      */
GetPrincipalId()171     inline const Aws::String& GetPrincipalId() const{ return m_principalId; }
172 
173     /**
174      * <p>The principal ID.</p>
175      */
PrincipalIdHasBeenSet()176     inline bool PrincipalIdHasBeenSet() const { return m_principalIdHasBeenSet; }
177 
178     /**
179      * <p>The principal ID.</p>
180      */
SetPrincipalId(const Aws::String & value)181     inline void SetPrincipalId(const Aws::String& value) { m_principalIdHasBeenSet = true; m_principalId = value; }
182 
183     /**
184      * <p>The principal ID.</p>
185      */
SetPrincipalId(Aws::String && value)186     inline void SetPrincipalId(Aws::String&& value) { m_principalIdHasBeenSet = true; m_principalId = std::move(value); }
187 
188     /**
189      * <p>The principal ID.</p>
190      */
SetPrincipalId(const char * value)191     inline void SetPrincipalId(const char* value) { m_principalIdHasBeenSet = true; m_principalId.assign(value); }
192 
193     /**
194      * <p>The principal ID.</p>
195      */
WithPrincipalId(const Aws::String & value)196     inline DeleteLaunchProfileMemberRequest& WithPrincipalId(const Aws::String& value) { SetPrincipalId(value); return *this;}
197 
198     /**
199      * <p>The principal ID.</p>
200      */
WithPrincipalId(Aws::String && value)201     inline DeleteLaunchProfileMemberRequest& WithPrincipalId(Aws::String&& value) { SetPrincipalId(std::move(value)); return *this;}
202 
203     /**
204      * <p>The principal ID.</p>
205      */
WithPrincipalId(const char * value)206     inline DeleteLaunchProfileMemberRequest& WithPrincipalId(const char* value) { SetPrincipalId(value); return *this;}
207 
208 
209     /**
210      * <p>The studio ID.</p>
211      */
GetStudioId()212     inline const Aws::String& GetStudioId() const{ return m_studioId; }
213 
214     /**
215      * <p>The studio ID.</p>
216      */
StudioIdHasBeenSet()217     inline bool StudioIdHasBeenSet() const { return m_studioIdHasBeenSet; }
218 
219     /**
220      * <p>The studio ID.</p>
221      */
SetStudioId(const Aws::String & value)222     inline void SetStudioId(const Aws::String& value) { m_studioIdHasBeenSet = true; m_studioId = value; }
223 
224     /**
225      * <p>The studio ID.</p>
226      */
SetStudioId(Aws::String && value)227     inline void SetStudioId(Aws::String&& value) { m_studioIdHasBeenSet = true; m_studioId = std::move(value); }
228 
229     /**
230      * <p>The studio ID.</p>
231      */
SetStudioId(const char * value)232     inline void SetStudioId(const char* value) { m_studioIdHasBeenSet = true; m_studioId.assign(value); }
233 
234     /**
235      * <p>The studio ID.</p>
236      */
WithStudioId(const Aws::String & value)237     inline DeleteLaunchProfileMemberRequest& WithStudioId(const Aws::String& value) { SetStudioId(value); return *this;}
238 
239     /**
240      * <p>The studio ID.</p>
241      */
WithStudioId(Aws::String && value)242     inline DeleteLaunchProfileMemberRequest& WithStudioId(Aws::String&& value) { SetStudioId(std::move(value)); return *this;}
243 
244     /**
245      * <p>The studio ID.</p>
246      */
WithStudioId(const char * value)247     inline DeleteLaunchProfileMemberRequest& WithStudioId(const char* value) { SetStudioId(value); return *this;}
248 
249   private:
250 
251     Aws::String m_clientToken;
252     bool m_clientTokenHasBeenSet;
253 
254     Aws::String m_launchProfileId;
255     bool m_launchProfileIdHasBeenSet;
256 
257     Aws::String m_principalId;
258     bool m_principalIdHasBeenSet;
259 
260     Aws::String m_studioId;
261     bool m_studioIdHasBeenSet;
262   };
263 
264 } // namespace Model
265 } // namespace NimbleStudio
266 } // namespace Aws
267