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/servicecatalog/ServiceCatalog_EXPORTS.h>
8 #include <aws/servicecatalog/ServiceCatalogRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/core/utils/memory/stl/AWSVector.h>
11 #include <aws/servicecatalog/model/Tag.h>
12 #include <utility>
13 
14 namespace Aws
15 {
16 namespace ServiceCatalog
17 {
18 namespace Model
19 {
20 
21   /**
22    */
23   class AWS_SERVICECATALOG_API UpdatePortfolioRequest : public ServiceCatalogRequest
24   {
25   public:
26     UpdatePortfolioRequest();
27 
28     // Service request name is the Operation name which will send this request out,
29     // each operation should has unique request name, so that we can get operation's name from this request.
30     // Note: this is not true for response, multiple operations may have the same response name,
31     // so we can not get operation's name from response.
GetServiceRequestName()32     inline virtual const char* GetServiceRequestName() const override { return "UpdatePortfolio"; }
33 
34     Aws::String SerializePayload() const override;
35 
36     Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37 
38 
39     /**
40      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
41      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
42      * Chinese</p> </li> </ul>
43      */
GetAcceptLanguage()44     inline const Aws::String& GetAcceptLanguage() const{ return m_acceptLanguage; }
45 
46     /**
47      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
48      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
49      * Chinese</p> </li> </ul>
50      */
AcceptLanguageHasBeenSet()51     inline bool AcceptLanguageHasBeenSet() const { return m_acceptLanguageHasBeenSet; }
52 
53     /**
54      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
55      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
56      * Chinese</p> </li> </ul>
57      */
SetAcceptLanguage(const Aws::String & value)58     inline void SetAcceptLanguage(const Aws::String& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = value; }
59 
60     /**
61      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
62      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
63      * Chinese</p> </li> </ul>
64      */
SetAcceptLanguage(Aws::String && value)65     inline void SetAcceptLanguage(Aws::String&& value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage = std::move(value); }
66 
67     /**
68      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
69      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
70      * Chinese</p> </li> </ul>
71      */
SetAcceptLanguage(const char * value)72     inline void SetAcceptLanguage(const char* value) { m_acceptLanguageHasBeenSet = true; m_acceptLanguage.assign(value); }
73 
74     /**
75      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
76      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
77      * Chinese</p> </li> </ul>
78      */
WithAcceptLanguage(const Aws::String & value)79     inline UpdatePortfolioRequest& WithAcceptLanguage(const Aws::String& value) { SetAcceptLanguage(value); return *this;}
80 
81     /**
82      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
83      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
84      * Chinese</p> </li> </ul>
85      */
WithAcceptLanguage(Aws::String && value)86     inline UpdatePortfolioRequest& WithAcceptLanguage(Aws::String&& value) { SetAcceptLanguage(std::move(value)); return *this;}
87 
88     /**
89      * <p>The language code.</p> <ul> <li> <p> <code>en</code> - English (default)</p>
90      * </li> <li> <p> <code>jp</code> - Japanese</p> </li> <li> <p> <code>zh</code> -
91      * Chinese</p> </li> </ul>
92      */
WithAcceptLanguage(const char * value)93     inline UpdatePortfolioRequest& WithAcceptLanguage(const char* value) { SetAcceptLanguage(value); return *this;}
94 
95 
96     /**
97      * <p>The portfolio identifier.</p>
98      */
GetId()99     inline const Aws::String& GetId() const{ return m_id; }
100 
101     /**
102      * <p>The portfolio identifier.</p>
103      */
IdHasBeenSet()104     inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
105 
106     /**
107      * <p>The portfolio identifier.</p>
108      */
SetId(const Aws::String & value)109     inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
110 
111     /**
112      * <p>The portfolio identifier.</p>
113      */
SetId(Aws::String && value)114     inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
115 
116     /**
117      * <p>The portfolio identifier.</p>
118      */
SetId(const char * value)119     inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
120 
121     /**
122      * <p>The portfolio identifier.</p>
123      */
WithId(const Aws::String & value)124     inline UpdatePortfolioRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
125 
126     /**
127      * <p>The portfolio identifier.</p>
128      */
WithId(Aws::String && value)129     inline UpdatePortfolioRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
130 
131     /**
132      * <p>The portfolio identifier.</p>
133      */
WithId(const char * value)134     inline UpdatePortfolioRequest& WithId(const char* value) { SetId(value); return *this;}
135 
136 
137     /**
138      * <p>The name to use for display purposes.</p>
139      */
GetDisplayName()140     inline const Aws::String& GetDisplayName() const{ return m_displayName; }
141 
142     /**
143      * <p>The name to use for display purposes.</p>
144      */
DisplayNameHasBeenSet()145     inline bool DisplayNameHasBeenSet() const { return m_displayNameHasBeenSet; }
146 
147     /**
148      * <p>The name to use for display purposes.</p>
149      */
SetDisplayName(const Aws::String & value)150     inline void SetDisplayName(const Aws::String& value) { m_displayNameHasBeenSet = true; m_displayName = value; }
151 
152     /**
153      * <p>The name to use for display purposes.</p>
154      */
SetDisplayName(Aws::String && value)155     inline void SetDisplayName(Aws::String&& value) { m_displayNameHasBeenSet = true; m_displayName = std::move(value); }
156 
157     /**
158      * <p>The name to use for display purposes.</p>
159      */
SetDisplayName(const char * value)160     inline void SetDisplayName(const char* value) { m_displayNameHasBeenSet = true; m_displayName.assign(value); }
161 
162     /**
163      * <p>The name to use for display purposes.</p>
164      */
WithDisplayName(const Aws::String & value)165     inline UpdatePortfolioRequest& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;}
166 
167     /**
168      * <p>The name to use for display purposes.</p>
169      */
WithDisplayName(Aws::String && value)170     inline UpdatePortfolioRequest& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;}
171 
172     /**
173      * <p>The name to use for display purposes.</p>
174      */
WithDisplayName(const char * value)175     inline UpdatePortfolioRequest& WithDisplayName(const char* value) { SetDisplayName(value); return *this;}
176 
177 
178     /**
179      * <p>The updated description of the portfolio.</p>
180      */
GetDescription()181     inline const Aws::String& GetDescription() const{ return m_description; }
182 
183     /**
184      * <p>The updated description of the portfolio.</p>
185      */
DescriptionHasBeenSet()186     inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
187 
188     /**
189      * <p>The updated description of the portfolio.</p>
190      */
SetDescription(const Aws::String & value)191     inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
192 
193     /**
194      * <p>The updated description of the portfolio.</p>
195      */
SetDescription(Aws::String && value)196     inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
197 
198     /**
199      * <p>The updated description of the portfolio.</p>
200      */
SetDescription(const char * value)201     inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
202 
203     /**
204      * <p>The updated description of the portfolio.</p>
205      */
WithDescription(const Aws::String & value)206     inline UpdatePortfolioRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
207 
208     /**
209      * <p>The updated description of the portfolio.</p>
210      */
WithDescription(Aws::String && value)211     inline UpdatePortfolioRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
212 
213     /**
214      * <p>The updated description of the portfolio.</p>
215      */
WithDescription(const char * value)216     inline UpdatePortfolioRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
217 
218 
219     /**
220      * <p>The updated name of the portfolio provider.</p>
221      */
GetProviderName()222     inline const Aws::String& GetProviderName() const{ return m_providerName; }
223 
224     /**
225      * <p>The updated name of the portfolio provider.</p>
226      */
ProviderNameHasBeenSet()227     inline bool ProviderNameHasBeenSet() const { return m_providerNameHasBeenSet; }
228 
229     /**
230      * <p>The updated name of the portfolio provider.</p>
231      */
SetProviderName(const Aws::String & value)232     inline void SetProviderName(const Aws::String& value) { m_providerNameHasBeenSet = true; m_providerName = value; }
233 
234     /**
235      * <p>The updated name of the portfolio provider.</p>
236      */
SetProviderName(Aws::String && value)237     inline void SetProviderName(Aws::String&& value) { m_providerNameHasBeenSet = true; m_providerName = std::move(value); }
238 
239     /**
240      * <p>The updated name of the portfolio provider.</p>
241      */
SetProviderName(const char * value)242     inline void SetProviderName(const char* value) { m_providerNameHasBeenSet = true; m_providerName.assign(value); }
243 
244     /**
245      * <p>The updated name of the portfolio provider.</p>
246      */
WithProviderName(const Aws::String & value)247     inline UpdatePortfolioRequest& WithProviderName(const Aws::String& value) { SetProviderName(value); return *this;}
248 
249     /**
250      * <p>The updated name of the portfolio provider.</p>
251      */
WithProviderName(Aws::String && value)252     inline UpdatePortfolioRequest& WithProviderName(Aws::String&& value) { SetProviderName(std::move(value)); return *this;}
253 
254     /**
255      * <p>The updated name of the portfolio provider.</p>
256      */
WithProviderName(const char * value)257     inline UpdatePortfolioRequest& WithProviderName(const char* value) { SetProviderName(value); return *this;}
258 
259 
260     /**
261      * <p>The tags to add.</p>
262      */
GetAddTags()263     inline const Aws::Vector<Tag>& GetAddTags() const{ return m_addTags; }
264 
265     /**
266      * <p>The tags to add.</p>
267      */
AddTagsHasBeenSet()268     inline bool AddTagsHasBeenSet() const { return m_addTagsHasBeenSet; }
269 
270     /**
271      * <p>The tags to add.</p>
272      */
SetAddTags(const Aws::Vector<Tag> & value)273     inline void SetAddTags(const Aws::Vector<Tag>& value) { m_addTagsHasBeenSet = true; m_addTags = value; }
274 
275     /**
276      * <p>The tags to add.</p>
277      */
SetAddTags(Aws::Vector<Tag> && value)278     inline void SetAddTags(Aws::Vector<Tag>&& value) { m_addTagsHasBeenSet = true; m_addTags = std::move(value); }
279 
280     /**
281      * <p>The tags to add.</p>
282      */
WithAddTags(const Aws::Vector<Tag> & value)283     inline UpdatePortfolioRequest& WithAddTags(const Aws::Vector<Tag>& value) { SetAddTags(value); return *this;}
284 
285     /**
286      * <p>The tags to add.</p>
287      */
WithAddTags(Aws::Vector<Tag> && value)288     inline UpdatePortfolioRequest& WithAddTags(Aws::Vector<Tag>&& value) { SetAddTags(std::move(value)); return *this;}
289 
290     /**
291      * <p>The tags to add.</p>
292      */
AddAddTags(const Tag & value)293     inline UpdatePortfolioRequest& AddAddTags(const Tag& value) { m_addTagsHasBeenSet = true; m_addTags.push_back(value); return *this; }
294 
295     /**
296      * <p>The tags to add.</p>
297      */
AddAddTags(Tag && value)298     inline UpdatePortfolioRequest& AddAddTags(Tag&& value) { m_addTagsHasBeenSet = true; m_addTags.push_back(std::move(value)); return *this; }
299 
300 
301     /**
302      * <p>The tags to remove.</p>
303      */
GetRemoveTags()304     inline const Aws::Vector<Aws::String>& GetRemoveTags() const{ return m_removeTags; }
305 
306     /**
307      * <p>The tags to remove.</p>
308      */
RemoveTagsHasBeenSet()309     inline bool RemoveTagsHasBeenSet() const { return m_removeTagsHasBeenSet; }
310 
311     /**
312      * <p>The tags to remove.</p>
313      */
SetRemoveTags(const Aws::Vector<Aws::String> & value)314     inline void SetRemoveTags(const Aws::Vector<Aws::String>& value) { m_removeTagsHasBeenSet = true; m_removeTags = value; }
315 
316     /**
317      * <p>The tags to remove.</p>
318      */
SetRemoveTags(Aws::Vector<Aws::String> && value)319     inline void SetRemoveTags(Aws::Vector<Aws::String>&& value) { m_removeTagsHasBeenSet = true; m_removeTags = std::move(value); }
320 
321     /**
322      * <p>The tags to remove.</p>
323      */
WithRemoveTags(const Aws::Vector<Aws::String> & value)324     inline UpdatePortfolioRequest& WithRemoveTags(const Aws::Vector<Aws::String>& value) { SetRemoveTags(value); return *this;}
325 
326     /**
327      * <p>The tags to remove.</p>
328      */
WithRemoveTags(Aws::Vector<Aws::String> && value)329     inline UpdatePortfolioRequest& WithRemoveTags(Aws::Vector<Aws::String>&& value) { SetRemoveTags(std::move(value)); return *this;}
330 
331     /**
332      * <p>The tags to remove.</p>
333      */
AddRemoveTags(const Aws::String & value)334     inline UpdatePortfolioRequest& AddRemoveTags(const Aws::String& value) { m_removeTagsHasBeenSet = true; m_removeTags.push_back(value); return *this; }
335 
336     /**
337      * <p>The tags to remove.</p>
338      */
AddRemoveTags(Aws::String && value)339     inline UpdatePortfolioRequest& AddRemoveTags(Aws::String&& value) { m_removeTagsHasBeenSet = true; m_removeTags.push_back(std::move(value)); return *this; }
340 
341     /**
342      * <p>The tags to remove.</p>
343      */
AddRemoveTags(const char * value)344     inline UpdatePortfolioRequest& AddRemoveTags(const char* value) { m_removeTagsHasBeenSet = true; m_removeTags.push_back(value); return *this; }
345 
346   private:
347 
348     Aws::String m_acceptLanguage;
349     bool m_acceptLanguageHasBeenSet;
350 
351     Aws::String m_id;
352     bool m_idHasBeenSet;
353 
354     Aws::String m_displayName;
355     bool m_displayNameHasBeenSet;
356 
357     Aws::String m_description;
358     bool m_descriptionHasBeenSet;
359 
360     Aws::String m_providerName;
361     bool m_providerNameHasBeenSet;
362 
363     Aws::Vector<Tag> m_addTags;
364     bool m_addTagsHasBeenSet;
365 
366     Aws::Vector<Aws::String> m_removeTags;
367     bool m_removeTagsHasBeenSet;
368   };
369 
370 } // namespace Model
371 } // namespace ServiceCatalog
372 } // namespace Aws
373