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-appregistry/AppRegistry_EXPORTS.h> 8 #include <aws/servicecatalog-appregistry/AppRegistryRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSMap.h> 11 #include <utility> 12 #include <aws/core/utils/UUID.h> 13 14 namespace Aws 15 { 16 namespace AppRegistry 17 { 18 namespace Model 19 { 20 21 /** 22 */ 23 class AWS_APPREGISTRY_API CreateApplicationRequest : public AppRegistryRequest 24 { 25 public: 26 CreateApplicationRequest(); 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 "CreateApplication"; } 33 34 Aws::String SerializePayload() const override; 35 36 37 /** 38 * <p>The name of the application. The name must be unique in the region in which 39 * you are creating the application.</p> 40 */ GetName()41 inline const Aws::String& GetName() const{ return m_name; } 42 43 /** 44 * <p>The name of the application. The name must be unique in the region in which 45 * you are creating the application.</p> 46 */ NameHasBeenSet()47 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 48 49 /** 50 * <p>The name of the application. The name must be unique in the region in which 51 * you are creating the application.</p> 52 */ SetName(const Aws::String & value)53 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 54 55 /** 56 * <p>The name of the application. The name must be unique in the region in which 57 * you are creating the application.</p> 58 */ SetName(Aws::String && value)59 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 60 61 /** 62 * <p>The name of the application. The name must be unique in the region in which 63 * you are creating the application.</p> 64 */ SetName(const char * value)65 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 66 67 /** 68 * <p>The name of the application. The name must be unique in the region in which 69 * you are creating the application.</p> 70 */ WithName(const Aws::String & value)71 inline CreateApplicationRequest& WithName(const Aws::String& value) { SetName(value); return *this;} 72 73 /** 74 * <p>The name of the application. The name must be unique in the region in which 75 * you are creating the application.</p> 76 */ WithName(Aws::String && value)77 inline CreateApplicationRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 78 79 /** 80 * <p>The name of the application. The name must be unique in the region in which 81 * you are creating the application.</p> 82 */ WithName(const char * value)83 inline CreateApplicationRequest& WithName(const char* value) { SetName(value); return *this;} 84 85 86 /** 87 * <p>The description of the application.</p> 88 */ GetDescription()89 inline const Aws::String& GetDescription() const{ return m_description; } 90 91 /** 92 * <p>The description of the application.</p> 93 */ DescriptionHasBeenSet()94 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } 95 96 /** 97 * <p>The description of the application.</p> 98 */ SetDescription(const Aws::String & value)99 inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } 100 101 /** 102 * <p>The description of the application.</p> 103 */ SetDescription(Aws::String && value)104 inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } 105 106 /** 107 * <p>The description of the application.</p> 108 */ SetDescription(const char * value)109 inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } 110 111 /** 112 * <p>The description of the application.</p> 113 */ WithDescription(const Aws::String & value)114 inline CreateApplicationRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 115 116 /** 117 * <p>The description of the application.</p> 118 */ WithDescription(Aws::String && value)119 inline CreateApplicationRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 120 121 /** 122 * <p>The description of the application.</p> 123 */ WithDescription(const char * value)124 inline CreateApplicationRequest& WithDescription(const char* value) { SetDescription(value); return *this;} 125 126 127 /** 128 * <p>Key-value pairs you can use to associate with the application.</p> 129 */ GetTags()130 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const{ return m_tags; } 131 132 /** 133 * <p>Key-value pairs you can use to associate with the application.</p> 134 */ TagsHasBeenSet()135 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 136 137 /** 138 * <p>Key-value pairs you can use to associate with the application.</p> 139 */ SetTags(const Aws::Map<Aws::String,Aws::String> & value)140 inline void SetTags(const Aws::Map<Aws::String, Aws::String>& value) { m_tagsHasBeenSet = true; m_tags = value; } 141 142 /** 143 * <p>Key-value pairs you can use to associate with the application.</p> 144 */ SetTags(Aws::Map<Aws::String,Aws::String> && value)145 inline void SetTags(Aws::Map<Aws::String, Aws::String>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 146 147 /** 148 * <p>Key-value pairs you can use to associate with the application.</p> 149 */ WithTags(const Aws::Map<Aws::String,Aws::String> & value)150 inline CreateApplicationRequest& WithTags(const Aws::Map<Aws::String, Aws::String>& value) { SetTags(value); return *this;} 151 152 /** 153 * <p>Key-value pairs you can use to associate with the application.</p> 154 */ WithTags(Aws::Map<Aws::String,Aws::String> && value)155 inline CreateApplicationRequest& WithTags(Aws::Map<Aws::String, Aws::String>&& value) { SetTags(std::move(value)); return *this;} 156 157 /** 158 * <p>Key-value pairs you can use to associate with the application.</p> 159 */ AddTags(const Aws::String & key,const Aws::String & value)160 inline CreateApplicationRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 161 162 /** 163 * <p>Key-value pairs you can use to associate with the application.</p> 164 */ AddTags(Aws::String && key,const Aws::String & value)165 inline CreateApplicationRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 166 167 /** 168 * <p>Key-value pairs you can use to associate with the application.</p> 169 */ AddTags(const Aws::String & key,Aws::String && value)170 inline CreateApplicationRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 171 172 /** 173 * <p>Key-value pairs you can use to associate with the application.</p> 174 */ AddTags(Aws::String && key,Aws::String && value)175 inline CreateApplicationRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } 176 177 /** 178 * <p>Key-value pairs you can use to associate with the application.</p> 179 */ AddTags(const char * key,Aws::String && value)180 inline CreateApplicationRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } 181 182 /** 183 * <p>Key-value pairs you can use to associate with the application.</p> 184 */ AddTags(Aws::String && key,const char * value)185 inline CreateApplicationRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } 186 187 /** 188 * <p>Key-value pairs you can use to associate with the application.</p> 189 */ AddTags(const char * key,const char * value)190 inline CreateApplicationRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } 191 192 193 /** 194 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 195 * request that completed successfully using the same client token and the same 196 * parameters, the retry succeeds without performing any further actions. If you 197 * retry a successful request using the same client token, but one or more of the 198 * parameters are different, the retry fails.</p> 199 */ GetClientToken()200 inline const Aws::String& GetClientToken() const{ return m_clientToken; } 201 202 /** 203 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 204 * request that completed successfully using the same client token and the same 205 * parameters, the retry succeeds without performing any further actions. If you 206 * retry a successful request using the same client token, but one or more of the 207 * parameters are different, the retry fails.</p> 208 */ ClientTokenHasBeenSet()209 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; } 210 211 /** 212 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 213 * request that completed successfully using the same client token and the same 214 * parameters, the retry succeeds without performing any further actions. If you 215 * retry a successful request using the same client token, but one or more of the 216 * parameters are different, the retry fails.</p> 217 */ SetClientToken(const Aws::String & value)218 inline void SetClientToken(const Aws::String& value) { m_clientTokenHasBeenSet = true; m_clientToken = value; } 219 220 /** 221 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 222 * request that completed successfully using the same client token and the same 223 * parameters, the retry succeeds without performing any further actions. If you 224 * retry a successful request using the same client token, but one or more of the 225 * parameters are different, the retry fails.</p> 226 */ SetClientToken(Aws::String && value)227 inline void SetClientToken(Aws::String&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::move(value); } 228 229 /** 230 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 231 * request that completed successfully using the same client token and the same 232 * parameters, the retry succeeds without performing any further actions. If you 233 * retry a successful request using the same client token, but one or more of the 234 * parameters are different, the retry fails.</p> 235 */ SetClientToken(const char * value)236 inline void SetClientToken(const char* value) { m_clientTokenHasBeenSet = true; m_clientToken.assign(value); } 237 238 /** 239 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 240 * request that completed successfully using the same client token and the same 241 * parameters, the retry succeeds without performing any further actions. If you 242 * retry a successful request using the same client token, but one or more of the 243 * parameters are different, the retry fails.</p> 244 */ WithClientToken(const Aws::String & value)245 inline CreateApplicationRequest& WithClientToken(const Aws::String& value) { SetClientToken(value); return *this;} 246 247 /** 248 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 249 * request that completed successfully using the same client token and the same 250 * parameters, the retry succeeds without performing any further actions. If you 251 * retry a successful request using the same client token, but one or more of the 252 * parameters are different, the retry fails.</p> 253 */ WithClientToken(Aws::String && value)254 inline CreateApplicationRequest& WithClientToken(Aws::String&& value) { SetClientToken(std::move(value)); return *this;} 255 256 /** 257 * <p>A unique identifier that you provide to ensure idempotency. If you retry a 258 * request that completed successfully using the same client token and the same 259 * parameters, the retry succeeds without performing any further actions. If you 260 * retry a successful request using the same client token, but one or more of the 261 * parameters are different, the retry fails.</p> 262 */ WithClientToken(const char * value)263 inline CreateApplicationRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} 264 265 private: 266 267 Aws::String m_name; 268 bool m_nameHasBeenSet; 269 270 Aws::String m_description; 271 bool m_descriptionHasBeenSet; 272 273 Aws::Map<Aws::String, Aws::String> m_tags; 274 bool m_tagsHasBeenSet; 275 276 Aws::String m_clientToken; 277 bool m_clientTokenHasBeenSet; 278 }; 279 280 } // namespace Model 281 } // namespace AppRegistry 282 } // namespace Aws 283