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 StartStudioSSOConfigurationRepairRequest : public NimbleStudioRequest
23   {
24   public:
25     StartStudioSSOConfigurationRepairRequest();
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 "StartStudioSSOConfigurationRepair"; }
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 StartStudioSSOConfigurationRepairRequest& 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 StartStudioSSOConfigurationRepairRequest& 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 StartStudioSSOConfigurationRepairRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;}
125 
126 
127     /**
128      * <p>The studio ID.</p>
129      */
GetStudioId()130     inline const Aws::String& GetStudioId() const{ return m_studioId; }
131 
132     /**
133      * <p>The studio ID.</p>
134      */
StudioIdHasBeenSet()135     inline bool StudioIdHasBeenSet() const { return m_studioIdHasBeenSet; }
136 
137     /**
138      * <p>The studio ID.</p>
139      */
SetStudioId(const Aws::String & value)140     inline void SetStudioId(const Aws::String& value) { m_studioIdHasBeenSet = true; m_studioId = value; }
141 
142     /**
143      * <p>The studio ID.</p>
144      */
SetStudioId(Aws::String && value)145     inline void SetStudioId(Aws::String&& value) { m_studioIdHasBeenSet = true; m_studioId = std::move(value); }
146 
147     /**
148      * <p>The studio ID.</p>
149      */
SetStudioId(const char * value)150     inline void SetStudioId(const char* value) { m_studioIdHasBeenSet = true; m_studioId.assign(value); }
151 
152     /**
153      * <p>The studio ID.</p>
154      */
WithStudioId(const Aws::String & value)155     inline StartStudioSSOConfigurationRepairRequest& WithStudioId(const Aws::String& value) { SetStudioId(value); return *this;}
156 
157     /**
158      * <p>The studio ID.</p>
159      */
WithStudioId(Aws::String && value)160     inline StartStudioSSOConfigurationRepairRequest& WithStudioId(Aws::String&& value) { SetStudioId(std::move(value)); return *this;}
161 
162     /**
163      * <p>The studio ID.</p>
164      */
WithStudioId(const char * value)165     inline StartStudioSSOConfigurationRepairRequest& WithStudioId(const char* value) { SetStudioId(value); return *this;}
166 
167   private:
168 
169     Aws::String m_clientToken;
170     bool m_clientTokenHasBeenSet;
171 
172     Aws::String m_studioId;
173     bool m_studioIdHasBeenSet;
174   };
175 
176 } // namespace Model
177 } // namespace NimbleStudio
178 } // namespace Aws
179