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/opsworkscm/OpsWorksCM_EXPORTS.h> 8 #include <aws/opsworkscm/OpsWorksCMRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/opsworkscm/model/EngineAttribute.h> 12 #include <aws/opsworkscm/model/Tag.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace OpsWorksCM 18 { 19 namespace Model 20 { 21 22 /** 23 */ 24 class AWS_OPSWORKSCM_API CreateServerRequest : public OpsWorksCMRequest 25 { 26 public: 27 CreateServerRequest(); 28 29 // Service request name is the Operation name which will send this request out, 30 // each operation should has unique request name, so that we can get operation's name from this request. 31 // Note: this is not true for response, multiple operations may have the same response name, 32 // so we can not get operation's name from response. GetServiceRequestName()33 inline virtual const char* GetServiceRequestName() const override { return "CreateServer"; } 34 35 Aws::String SerializePayload() const override; 36 37 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 38 39 40 /** 41 * <p> Associate a public IP address with a server that you are launching. Valid 42 * values are <code>true</code> or <code>false</code>. The default value is 43 * <code>true</code>. </p> 44 */ GetAssociatePublicIpAddress()45 inline bool GetAssociatePublicIpAddress() const{ return m_associatePublicIpAddress; } 46 47 /** 48 * <p> Associate a public IP address with a server that you are launching. Valid 49 * values are <code>true</code> or <code>false</code>. The default value is 50 * <code>true</code>. </p> 51 */ AssociatePublicIpAddressHasBeenSet()52 inline bool AssociatePublicIpAddressHasBeenSet() const { return m_associatePublicIpAddressHasBeenSet; } 53 54 /** 55 * <p> Associate a public IP address with a server that you are launching. Valid 56 * values are <code>true</code> or <code>false</code>. The default value is 57 * <code>true</code>. </p> 58 */ SetAssociatePublicIpAddress(bool value)59 inline void SetAssociatePublicIpAddress(bool value) { m_associatePublicIpAddressHasBeenSet = true; m_associatePublicIpAddress = value; } 60 61 /** 62 * <p> Associate a public IP address with a server that you are launching. Valid 63 * values are <code>true</code> or <code>false</code>. The default value is 64 * <code>true</code>. </p> 65 */ WithAssociatePublicIpAddress(bool value)66 inline CreateServerRequest& WithAssociatePublicIpAddress(bool value) { SetAssociatePublicIpAddress(value); return *this;} 67 68 69 /** 70 * <p>An optional public endpoint of a server, such as 71 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 72 * DNS record in your preferred DNS service that points the custom domain to the 73 * endpoint that is generated when the server is created (the value of the 74 * CreateServer Endpoint attribute). You cannot access the server by using the 75 * generated <code>Endpoint</code> value if the server is using a custom domain. If 76 * you specify a custom domain, you must also specify values for 77 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 78 */ GetCustomDomain()79 inline const Aws::String& GetCustomDomain() const{ return m_customDomain; } 80 81 /** 82 * <p>An optional public endpoint of a server, such as 83 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 84 * DNS record in your preferred DNS service that points the custom domain to the 85 * endpoint that is generated when the server is created (the value of the 86 * CreateServer Endpoint attribute). You cannot access the server by using the 87 * generated <code>Endpoint</code> value if the server is using a custom domain. If 88 * you specify a custom domain, you must also specify values for 89 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 90 */ CustomDomainHasBeenSet()91 inline bool CustomDomainHasBeenSet() const { return m_customDomainHasBeenSet; } 92 93 /** 94 * <p>An optional public endpoint of a server, such as 95 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 96 * DNS record in your preferred DNS service that points the custom domain to the 97 * endpoint that is generated when the server is created (the value of the 98 * CreateServer Endpoint attribute). You cannot access the server by using the 99 * generated <code>Endpoint</code> value if the server is using a custom domain. If 100 * you specify a custom domain, you must also specify values for 101 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 102 */ SetCustomDomain(const Aws::String & value)103 inline void SetCustomDomain(const Aws::String& value) { m_customDomainHasBeenSet = true; m_customDomain = value; } 104 105 /** 106 * <p>An optional public endpoint of a server, such as 107 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 108 * DNS record in your preferred DNS service that points the custom domain to the 109 * endpoint that is generated when the server is created (the value of the 110 * CreateServer Endpoint attribute). You cannot access the server by using the 111 * generated <code>Endpoint</code> value if the server is using a custom domain. If 112 * you specify a custom domain, you must also specify values for 113 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 114 */ SetCustomDomain(Aws::String && value)115 inline void SetCustomDomain(Aws::String&& value) { m_customDomainHasBeenSet = true; m_customDomain = std::move(value); } 116 117 /** 118 * <p>An optional public endpoint of a server, such as 119 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 120 * DNS record in your preferred DNS service that points the custom domain to the 121 * endpoint that is generated when the server is created (the value of the 122 * CreateServer Endpoint attribute). You cannot access the server by using the 123 * generated <code>Endpoint</code> value if the server is using a custom domain. If 124 * you specify a custom domain, you must also specify values for 125 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 126 */ SetCustomDomain(const char * value)127 inline void SetCustomDomain(const char* value) { m_customDomainHasBeenSet = true; m_customDomain.assign(value); } 128 129 /** 130 * <p>An optional public endpoint of a server, such as 131 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 132 * DNS record in your preferred DNS service that points the custom domain to the 133 * endpoint that is generated when the server is created (the value of the 134 * CreateServer Endpoint attribute). You cannot access the server by using the 135 * generated <code>Endpoint</code> value if the server is using a custom domain. If 136 * you specify a custom domain, you must also specify values for 137 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 138 */ WithCustomDomain(const Aws::String & value)139 inline CreateServerRequest& WithCustomDomain(const Aws::String& value) { SetCustomDomain(value); return *this;} 140 141 /** 142 * <p>An optional public endpoint of a server, such as 143 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 144 * DNS record in your preferred DNS service that points the custom domain to the 145 * endpoint that is generated when the server is created (the value of the 146 * CreateServer Endpoint attribute). You cannot access the server by using the 147 * generated <code>Endpoint</code> value if the server is using a custom domain. If 148 * you specify a custom domain, you must also specify values for 149 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 150 */ WithCustomDomain(Aws::String && value)151 inline CreateServerRequest& WithCustomDomain(Aws::String&& value) { SetCustomDomain(std::move(value)); return *this;} 152 153 /** 154 * <p>An optional public endpoint of a server, such as 155 * <code>https://aws.my-company.com</code>. To access the server, create a CNAME 156 * DNS record in your preferred DNS service that points the custom domain to the 157 * endpoint that is generated when the server is created (the value of the 158 * CreateServer Endpoint attribute). You cannot access the server by using the 159 * generated <code>Endpoint</code> value if the server is using a custom domain. If 160 * you specify a custom domain, you must also specify values for 161 * <code>CustomCertificate</code> and <code>CustomPrivateKey</code>.</p> 162 */ WithCustomDomain(const char * value)163 inline CreateServerRequest& WithCustomDomain(const char* value) { SetCustomDomain(value); return *this;} 164 165 166 /** 167 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 168 * certificate, or a certificate chain. If you specify a custom certificate, you 169 * must also specify values for <code>CustomDomain</code> and 170 * <code>CustomPrivateKey</code>. The following are requirements for the 171 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 172 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 173 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 174 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 175 * upload. A certificate can't be used before its validity period begins (the 176 * certificate's <code>NotBefore</code> date), or after it expires (the 177 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 178 * common name or subject alternative names (SANs), if present, must match the 179 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 180 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 181 */ GetCustomCertificate()182 inline const Aws::String& GetCustomCertificate() const{ return m_customCertificate; } 183 184 /** 185 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 186 * certificate, or a certificate chain. If you specify a custom certificate, you 187 * must also specify values for <code>CustomDomain</code> and 188 * <code>CustomPrivateKey</code>. The following are requirements for the 189 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 190 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 191 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 192 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 193 * upload. A certificate can't be used before its validity period begins (the 194 * certificate's <code>NotBefore</code> date), or after it expires (the 195 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 196 * common name or subject alternative names (SANs), if present, must match the 197 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 198 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 199 */ CustomCertificateHasBeenSet()200 inline bool CustomCertificateHasBeenSet() const { return m_customCertificateHasBeenSet; } 201 202 /** 203 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 204 * certificate, or a certificate chain. If you specify a custom certificate, you 205 * must also specify values for <code>CustomDomain</code> and 206 * <code>CustomPrivateKey</code>. The following are requirements for the 207 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 208 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 209 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 210 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 211 * upload. A certificate can't be used before its validity period begins (the 212 * certificate's <code>NotBefore</code> date), or after it expires (the 213 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 214 * common name or subject alternative names (SANs), if present, must match the 215 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 216 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 217 */ SetCustomCertificate(const Aws::String & value)218 inline void SetCustomCertificate(const Aws::String& value) { m_customCertificateHasBeenSet = true; m_customCertificate = value; } 219 220 /** 221 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 222 * certificate, or a certificate chain. If you specify a custom certificate, you 223 * must also specify values for <code>CustomDomain</code> and 224 * <code>CustomPrivateKey</code>. The following are requirements for the 225 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 226 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 227 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 228 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 229 * upload. A certificate can't be used before its validity period begins (the 230 * certificate's <code>NotBefore</code> date), or after it expires (the 231 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 232 * common name or subject alternative names (SANs), if present, must match the 233 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 234 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 235 */ SetCustomCertificate(Aws::String && value)236 inline void SetCustomCertificate(Aws::String&& value) { m_customCertificateHasBeenSet = true; m_customCertificate = std::move(value); } 237 238 /** 239 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 240 * certificate, or a certificate chain. If you specify a custom certificate, you 241 * must also specify values for <code>CustomDomain</code> and 242 * <code>CustomPrivateKey</code>. The following are requirements for the 243 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 244 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 245 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 246 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 247 * upload. A certificate can't be used before its validity period begins (the 248 * certificate's <code>NotBefore</code> date), or after it expires (the 249 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 250 * common name or subject alternative names (SANs), if present, must match the 251 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 252 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 253 */ SetCustomCertificate(const char * value)254 inline void SetCustomCertificate(const char* value) { m_customCertificateHasBeenSet = true; m_customCertificate.assign(value); } 255 256 /** 257 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 258 * certificate, or a certificate chain. If you specify a custom certificate, you 259 * must also specify values for <code>CustomDomain</code> and 260 * <code>CustomPrivateKey</code>. The following are requirements for the 261 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 262 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 263 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 264 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 265 * upload. A certificate can't be used before its validity period begins (the 266 * certificate's <code>NotBefore</code> date), or after it expires (the 267 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 268 * common name or subject alternative names (SANs), if present, must match the 269 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 270 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 271 */ WithCustomCertificate(const Aws::String & value)272 inline CreateServerRequest& WithCustomCertificate(const Aws::String& value) { SetCustomCertificate(value); return *this;} 273 274 /** 275 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 276 * certificate, or a certificate chain. If you specify a custom certificate, you 277 * must also specify values for <code>CustomDomain</code> and 278 * <code>CustomPrivateKey</code>. The following are requirements for the 279 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 280 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 281 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 282 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 283 * upload. A certificate can't be used before its validity period begins (the 284 * certificate's <code>NotBefore</code> date), or after it expires (the 285 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 286 * common name or subject alternative names (SANs), if present, must match the 287 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 288 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 289 */ WithCustomCertificate(Aws::String && value)290 inline CreateServerRequest& WithCustomCertificate(Aws::String&& value) { SetCustomCertificate(std::move(value)); return *this;} 291 292 /** 293 * <p>A PEM-formatted HTTPS certificate. The value can be be a single, self-signed 294 * certificate, or a certificate chain. If you specify a custom certificate, you 295 * must also specify values for <code>CustomDomain</code> and 296 * <code>CustomPrivateKey</code>. The following are requirements for the 297 * <code>CustomCertificate</code> value:</p> <ul> <li> <p>You can provide either a 298 * self-signed, custom certificate, or the full certificate chain.</p> </li> <li> 299 * <p>The certificate must be a valid X509 certificate, or a certificate chain in 300 * PEM format.</p> </li> <li> <p>The certificate must be valid at the time of 301 * upload. A certificate can't be used before its validity period begins (the 302 * certificate's <code>NotBefore</code> date), or after it expires (the 303 * certificate's <code>NotAfter</code> date).</p> </li> <li> <p>The certificate’s 304 * common name or subject alternative names (SANs), if present, must match the 305 * value of <code>CustomDomain</code>.</p> </li> <li> <p>The certificate must match 306 * the value of <code>CustomPrivateKey</code>.</p> </li> </ul> 307 */ WithCustomCertificate(const char * value)308 inline CreateServerRequest& WithCustomCertificate(const char* value) { SetCustomCertificate(value); return *this;} 309 310 311 /** 312 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 313 * private key must not be encrypted; it cannot be protected by a password or 314 * passphrase. If you specify a custom private key, you must also specify values 315 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 316 */ GetCustomPrivateKey()317 inline const Aws::String& GetCustomPrivateKey() const{ return m_customPrivateKey; } 318 319 /** 320 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 321 * private key must not be encrypted; it cannot be protected by a password or 322 * passphrase. If you specify a custom private key, you must also specify values 323 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 324 */ CustomPrivateKeyHasBeenSet()325 inline bool CustomPrivateKeyHasBeenSet() const { return m_customPrivateKeyHasBeenSet; } 326 327 /** 328 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 329 * private key must not be encrypted; it cannot be protected by a password or 330 * passphrase. If you specify a custom private key, you must also specify values 331 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 332 */ SetCustomPrivateKey(const Aws::String & value)333 inline void SetCustomPrivateKey(const Aws::String& value) { m_customPrivateKeyHasBeenSet = true; m_customPrivateKey = value; } 334 335 /** 336 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 337 * private key must not be encrypted; it cannot be protected by a password or 338 * passphrase. If you specify a custom private key, you must also specify values 339 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 340 */ SetCustomPrivateKey(Aws::String && value)341 inline void SetCustomPrivateKey(Aws::String&& value) { m_customPrivateKeyHasBeenSet = true; m_customPrivateKey = std::move(value); } 342 343 /** 344 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 345 * private key must not be encrypted; it cannot be protected by a password or 346 * passphrase. If you specify a custom private key, you must also specify values 347 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 348 */ SetCustomPrivateKey(const char * value)349 inline void SetCustomPrivateKey(const char* value) { m_customPrivateKeyHasBeenSet = true; m_customPrivateKey.assign(value); } 350 351 /** 352 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 353 * private key must not be encrypted; it cannot be protected by a password or 354 * passphrase. If you specify a custom private key, you must also specify values 355 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 356 */ WithCustomPrivateKey(const Aws::String & value)357 inline CreateServerRequest& WithCustomPrivateKey(const Aws::String& value) { SetCustomPrivateKey(value); return *this;} 358 359 /** 360 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 361 * private key must not be encrypted; it cannot be protected by a password or 362 * passphrase. If you specify a custom private key, you must also specify values 363 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 364 */ WithCustomPrivateKey(Aws::String && value)365 inline CreateServerRequest& WithCustomPrivateKey(Aws::String&& value) { SetCustomPrivateKey(std::move(value)); return *this;} 366 367 /** 368 * <p>A private key in PEM format for connecting to the server by using HTTPS. The 369 * private key must not be encrypted; it cannot be protected by a password or 370 * passphrase. If you specify a custom private key, you must also specify values 371 * for <code>CustomDomain</code> and <code>CustomCertificate</code>.</p> 372 */ WithCustomPrivateKey(const char * value)373 inline CreateServerRequest& WithCustomPrivateKey(const char* value) { SetCustomPrivateKey(value); return *this;} 374 375 376 /** 377 * <p> Enable or disable scheduled backups. Valid values are <code>true</code> or 378 * <code>false</code>. The default value is <code>true</code>. </p> 379 */ GetDisableAutomatedBackup()380 inline bool GetDisableAutomatedBackup() const{ return m_disableAutomatedBackup; } 381 382 /** 383 * <p> Enable or disable scheduled backups. Valid values are <code>true</code> or 384 * <code>false</code>. The default value is <code>true</code>. </p> 385 */ DisableAutomatedBackupHasBeenSet()386 inline bool DisableAutomatedBackupHasBeenSet() const { return m_disableAutomatedBackupHasBeenSet; } 387 388 /** 389 * <p> Enable or disable scheduled backups. Valid values are <code>true</code> or 390 * <code>false</code>. The default value is <code>true</code>. </p> 391 */ SetDisableAutomatedBackup(bool value)392 inline void SetDisableAutomatedBackup(bool value) { m_disableAutomatedBackupHasBeenSet = true; m_disableAutomatedBackup = value; } 393 394 /** 395 * <p> Enable or disable scheduled backups. Valid values are <code>true</code> or 396 * <code>false</code>. The default value is <code>true</code>. </p> 397 */ WithDisableAutomatedBackup(bool value)398 inline CreateServerRequest& WithDisableAutomatedBackup(bool value) { SetDisableAutomatedBackup(value); return *this;} 399 400 401 /** 402 * <p> The configuration management engine to use. Valid values include 403 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 404 */ GetEngine()405 inline const Aws::String& GetEngine() const{ return m_engine; } 406 407 /** 408 * <p> The configuration management engine to use. Valid values include 409 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 410 */ EngineHasBeenSet()411 inline bool EngineHasBeenSet() const { return m_engineHasBeenSet; } 412 413 /** 414 * <p> The configuration management engine to use. Valid values include 415 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 416 */ SetEngine(const Aws::String & value)417 inline void SetEngine(const Aws::String& value) { m_engineHasBeenSet = true; m_engine = value; } 418 419 /** 420 * <p> The configuration management engine to use. Valid values include 421 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 422 */ SetEngine(Aws::String && value)423 inline void SetEngine(Aws::String&& value) { m_engineHasBeenSet = true; m_engine = std::move(value); } 424 425 /** 426 * <p> The configuration management engine to use. Valid values include 427 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 428 */ SetEngine(const char * value)429 inline void SetEngine(const char* value) { m_engineHasBeenSet = true; m_engine.assign(value); } 430 431 /** 432 * <p> The configuration management engine to use. Valid values include 433 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 434 */ WithEngine(const Aws::String & value)435 inline CreateServerRequest& WithEngine(const Aws::String& value) { SetEngine(value); return *this;} 436 437 /** 438 * <p> The configuration management engine to use. Valid values include 439 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 440 */ WithEngine(Aws::String && value)441 inline CreateServerRequest& WithEngine(Aws::String&& value) { SetEngine(std::move(value)); return *this;} 442 443 /** 444 * <p> The configuration management engine to use. Valid values include 445 * <code>ChefAutomate</code> and <code>Puppet</code>. </p> 446 */ WithEngine(const char * value)447 inline CreateServerRequest& WithEngine(const char* value) { SetEngine(value); return *this;} 448 449 450 /** 451 * <p> The engine model of the server. Valid values in this release include 452 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 453 */ GetEngineModel()454 inline const Aws::String& GetEngineModel() const{ return m_engineModel; } 455 456 /** 457 * <p> The engine model of the server. Valid values in this release include 458 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 459 */ EngineModelHasBeenSet()460 inline bool EngineModelHasBeenSet() const { return m_engineModelHasBeenSet; } 461 462 /** 463 * <p> The engine model of the server. Valid values in this release include 464 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 465 */ SetEngineModel(const Aws::String & value)466 inline void SetEngineModel(const Aws::String& value) { m_engineModelHasBeenSet = true; m_engineModel = value; } 467 468 /** 469 * <p> The engine model of the server. Valid values in this release include 470 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 471 */ SetEngineModel(Aws::String && value)472 inline void SetEngineModel(Aws::String&& value) { m_engineModelHasBeenSet = true; m_engineModel = std::move(value); } 473 474 /** 475 * <p> The engine model of the server. Valid values in this release include 476 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 477 */ SetEngineModel(const char * value)478 inline void SetEngineModel(const char* value) { m_engineModelHasBeenSet = true; m_engineModel.assign(value); } 479 480 /** 481 * <p> The engine model of the server. Valid values in this release include 482 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 483 */ WithEngineModel(const Aws::String & value)484 inline CreateServerRequest& WithEngineModel(const Aws::String& value) { SetEngineModel(value); return *this;} 485 486 /** 487 * <p> The engine model of the server. Valid values in this release include 488 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 489 */ WithEngineModel(Aws::String && value)490 inline CreateServerRequest& WithEngineModel(Aws::String&& value) { SetEngineModel(std::move(value)); return *this;} 491 492 /** 493 * <p> The engine model of the server. Valid values in this release include 494 * <code>Monolithic</code> for Puppet and <code>Single</code> for Chef. </p> 495 */ WithEngineModel(const char * value)496 inline CreateServerRequest& WithEngineModel(const char* value) { SetEngineModel(value); return *this;} 497 498 499 /** 500 * <p> The major release version of the engine that you want to use. For a Chef 501 * server, the valid value for EngineVersion is currently <code>2</code>. For a 502 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 503 */ GetEngineVersion()504 inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; } 505 506 /** 507 * <p> The major release version of the engine that you want to use. For a Chef 508 * server, the valid value for EngineVersion is currently <code>2</code>. For a 509 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 510 */ EngineVersionHasBeenSet()511 inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; } 512 513 /** 514 * <p> The major release version of the engine that you want to use. For a Chef 515 * server, the valid value for EngineVersion is currently <code>2</code>. For a 516 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 517 */ SetEngineVersion(const Aws::String & value)518 inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; } 519 520 /** 521 * <p> The major release version of the engine that you want to use. For a Chef 522 * server, the valid value for EngineVersion is currently <code>2</code>. For a 523 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 524 */ SetEngineVersion(Aws::String && value)525 inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::move(value); } 526 527 /** 528 * <p> The major release version of the engine that you want to use. For a Chef 529 * server, the valid value for EngineVersion is currently <code>2</code>. For a 530 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 531 */ SetEngineVersion(const char * value)532 inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); } 533 534 /** 535 * <p> The major release version of the engine that you want to use. For a Chef 536 * server, the valid value for EngineVersion is currently <code>2</code>. For a 537 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 538 */ WithEngineVersion(const Aws::String & value)539 inline CreateServerRequest& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;} 540 541 /** 542 * <p> The major release version of the engine that you want to use. For a Chef 543 * server, the valid value for EngineVersion is currently <code>2</code>. For a 544 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 545 */ WithEngineVersion(Aws::String && value)546 inline CreateServerRequest& WithEngineVersion(Aws::String&& value) { SetEngineVersion(std::move(value)); return *this;} 547 548 /** 549 * <p> The major release version of the engine that you want to use. For a Chef 550 * server, the valid value for EngineVersion is currently <code>2</code>. For a 551 * Puppet server, valid values are <code>2019</code> or <code>2017</code>. </p> 552 */ WithEngineVersion(const char * value)553 inline CreateServerRequest& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;} 554 555 556 /** 557 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 558 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 559 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 560 * corresponding private key is required to access the Chef API. When no 561 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 562 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 563 * password for the administrative user in the Chef Automate web-based dashboard. 564 * The password length is a minimum of eight characters, and a maximum of 32. The 565 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 566 * The password must contain at least one lower case letter, one upper case letter, 567 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 568 * set, one is generated and returned in the response.</p> </li> </ul> <p 569 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 570 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 571 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 572 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 573 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 574 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 575 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 576 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 577 * </ul> 578 */ GetEngineAttributes()579 inline const Aws::Vector<EngineAttribute>& GetEngineAttributes() const{ return m_engineAttributes; } 580 581 /** 582 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 583 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 584 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 585 * corresponding private key is required to access the Chef API. When no 586 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 587 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 588 * password for the administrative user in the Chef Automate web-based dashboard. 589 * The password length is a minimum of eight characters, and a maximum of 32. The 590 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 591 * The password must contain at least one lower case letter, one upper case letter, 592 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 593 * set, one is generated and returned in the response.</p> </li> </ul> <p 594 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 595 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 596 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 597 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 598 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 599 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 600 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 601 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 602 * </ul> 603 */ EngineAttributesHasBeenSet()604 inline bool EngineAttributesHasBeenSet() const { return m_engineAttributesHasBeenSet; } 605 606 /** 607 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 608 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 609 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 610 * corresponding private key is required to access the Chef API. When no 611 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 612 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 613 * password for the administrative user in the Chef Automate web-based dashboard. 614 * The password length is a minimum of eight characters, and a maximum of 32. The 615 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 616 * The password must contain at least one lower case letter, one upper case letter, 617 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 618 * set, one is generated and returned in the response.</p> </li> </ul> <p 619 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 620 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 621 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 622 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 623 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 624 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 625 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 626 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 627 * </ul> 628 */ SetEngineAttributes(const Aws::Vector<EngineAttribute> & value)629 inline void SetEngineAttributes(const Aws::Vector<EngineAttribute>& value) { m_engineAttributesHasBeenSet = true; m_engineAttributes = value; } 630 631 /** 632 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 633 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 634 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 635 * corresponding private key is required to access the Chef API. When no 636 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 637 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 638 * password for the administrative user in the Chef Automate web-based dashboard. 639 * The password length is a minimum of eight characters, and a maximum of 32. The 640 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 641 * The password must contain at least one lower case letter, one upper case letter, 642 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 643 * set, one is generated and returned in the response.</p> </li> </ul> <p 644 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 645 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 646 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 647 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 648 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 649 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 650 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 651 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 652 * </ul> 653 */ SetEngineAttributes(Aws::Vector<EngineAttribute> && value)654 inline void SetEngineAttributes(Aws::Vector<EngineAttribute>&& value) { m_engineAttributesHasBeenSet = true; m_engineAttributes = std::move(value); } 655 656 /** 657 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 658 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 659 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 660 * corresponding private key is required to access the Chef API. When no 661 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 662 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 663 * password for the administrative user in the Chef Automate web-based dashboard. 664 * The password length is a minimum of eight characters, and a maximum of 32. The 665 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 666 * The password must contain at least one lower case letter, one upper case letter, 667 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 668 * set, one is generated and returned in the response.</p> </li> </ul> <p 669 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 670 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 671 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 672 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 673 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 674 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 675 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 676 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 677 * </ul> 678 */ WithEngineAttributes(const Aws::Vector<EngineAttribute> & value)679 inline CreateServerRequest& WithEngineAttributes(const Aws::Vector<EngineAttribute>& value) { SetEngineAttributes(value); return *this;} 680 681 /** 682 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 683 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 684 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 685 * corresponding private key is required to access the Chef API. When no 686 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 687 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 688 * password for the administrative user in the Chef Automate web-based dashboard. 689 * The password length is a minimum of eight characters, and a maximum of 32. The 690 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 691 * The password must contain at least one lower case letter, one upper case letter, 692 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 693 * set, one is generated and returned in the response.</p> </li> </ul> <p 694 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 695 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 696 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 697 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 698 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 699 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 700 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 701 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 702 * </ul> 703 */ WithEngineAttributes(Aws::Vector<EngineAttribute> && value)704 inline CreateServerRequest& WithEngineAttributes(Aws::Vector<EngineAttribute>&& value) { SetEngineAttributes(std::move(value)); return *this;} 705 706 /** 707 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 708 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 709 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 710 * corresponding private key is required to access the Chef API. When no 711 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 712 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 713 * password for the administrative user in the Chef Automate web-based dashboard. 714 * The password length is a minimum of eight characters, and a maximum of 32. The 715 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 716 * The password must contain at least one lower case letter, one upper case letter, 717 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 718 * set, one is generated and returned in the response.</p> </li> </ul> <p 719 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 720 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 721 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 722 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 723 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 724 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 725 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 726 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 727 * </ul> 728 */ AddEngineAttributes(const EngineAttribute & value)729 inline CreateServerRequest& AddEngineAttributes(const EngineAttribute& value) { m_engineAttributesHasBeenSet = true; m_engineAttributes.push_back(value); return *this; } 730 731 /** 732 * <p>Optional engine attributes on a specified server. </p> <p class="title"> 733 * <b>Attributes accepted in a Chef createServer request:</b> </p> <ul> <li> <p> 734 * <code>CHEF_AUTOMATE_PIVOTAL_KEY</code>: A base64-encoded RSA public key. The 735 * corresponding private key is required to access the Chef API. When no 736 * CHEF_AUTOMATE_PIVOTAL_KEY is set, a private key is generated and returned in the 737 * response. </p> </li> <li> <p> <code>CHEF_AUTOMATE_ADMIN_PASSWORD</code>: The 738 * password for the administrative user in the Chef Automate web-based dashboard. 739 * The password length is a minimum of eight characters, and a maximum of 32. The 740 * password can contain letters, numbers, and special characters (!/@#$%^&+=_). 741 * The password must contain at least one lower case letter, one upper case letter, 742 * one number, and one special character. When no CHEF_AUTOMATE_ADMIN_PASSWORD is 743 * set, one is generated and returned in the response.</p> </li> </ul> <p 744 * class="title"> <b>Attributes accepted in a Puppet createServer request:</b> </p> 745 * <ul> <li> <p> <code>PUPPET_ADMIN_PASSWORD</code>: To work with the Puppet 746 * Enterprise console, a password must use ASCII characters.</p> </li> <li> <p> 747 * <code>PUPPET_R10K_REMOTE</code>: The r10k remote is the URL of your control 748 * repository (for example, ssh://git@your.git-repo.com:user/control-repo.git). 749 * Specifying an r10k remote opens TCP port 8170.</p> </li> <li> <p> 750 * <code>PUPPET_R10K_PRIVATE_KEY</code>: If you are using a private Git repository, 751 * add PUPPET_R10K_PRIVATE_KEY to specify a PEM-encoded private SSH key.</p> </li> 752 * </ul> 753 */ AddEngineAttributes(EngineAttribute && value)754 inline CreateServerRequest& AddEngineAttributes(EngineAttribute&& value) { m_engineAttributesHasBeenSet = true; m_engineAttributes.push_back(std::move(value)); return *this; } 755 756 757 /** 758 * <p> The number of automated backups that you want to keep. Whenever a new backup 759 * is created, AWS OpsWorks CM deletes the oldest backups if this number is 760 * exceeded. The default value is <code>1</code>. </p> 761 */ GetBackupRetentionCount()762 inline int GetBackupRetentionCount() const{ return m_backupRetentionCount; } 763 764 /** 765 * <p> The number of automated backups that you want to keep. Whenever a new backup 766 * is created, AWS OpsWorks CM deletes the oldest backups if this number is 767 * exceeded. The default value is <code>1</code>. </p> 768 */ BackupRetentionCountHasBeenSet()769 inline bool BackupRetentionCountHasBeenSet() const { return m_backupRetentionCountHasBeenSet; } 770 771 /** 772 * <p> The number of automated backups that you want to keep. Whenever a new backup 773 * is created, AWS OpsWorks CM deletes the oldest backups if this number is 774 * exceeded. The default value is <code>1</code>. </p> 775 */ SetBackupRetentionCount(int value)776 inline void SetBackupRetentionCount(int value) { m_backupRetentionCountHasBeenSet = true; m_backupRetentionCount = value; } 777 778 /** 779 * <p> The number of automated backups that you want to keep. Whenever a new backup 780 * is created, AWS OpsWorks CM deletes the oldest backups if this number is 781 * exceeded. The default value is <code>1</code>. </p> 782 */ WithBackupRetentionCount(int value)783 inline CreateServerRequest& WithBackupRetentionCount(int value) { SetBackupRetentionCount(value); return *this;} 784 785 786 /** 787 * <p> The name of the server. The server name must be unique within your AWS 788 * account, within each region. Server names must start with a letter; then 789 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 790 * </p> 791 */ GetServerName()792 inline const Aws::String& GetServerName() const{ return m_serverName; } 793 794 /** 795 * <p> The name of the server. The server name must be unique within your AWS 796 * account, within each region. Server names must start with a letter; then 797 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 798 * </p> 799 */ ServerNameHasBeenSet()800 inline bool ServerNameHasBeenSet() const { return m_serverNameHasBeenSet; } 801 802 /** 803 * <p> The name of the server. The server name must be unique within your AWS 804 * account, within each region. Server names must start with a letter; then 805 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 806 * </p> 807 */ SetServerName(const Aws::String & value)808 inline void SetServerName(const Aws::String& value) { m_serverNameHasBeenSet = true; m_serverName = value; } 809 810 /** 811 * <p> The name of the server. The server name must be unique within your AWS 812 * account, within each region. Server names must start with a letter; then 813 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 814 * </p> 815 */ SetServerName(Aws::String && value)816 inline void SetServerName(Aws::String&& value) { m_serverNameHasBeenSet = true; m_serverName = std::move(value); } 817 818 /** 819 * <p> The name of the server. The server name must be unique within your AWS 820 * account, within each region. Server names must start with a letter; then 821 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 822 * </p> 823 */ SetServerName(const char * value)824 inline void SetServerName(const char* value) { m_serverNameHasBeenSet = true; m_serverName.assign(value); } 825 826 /** 827 * <p> The name of the server. The server name must be unique within your AWS 828 * account, within each region. Server names must start with a letter; then 829 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 830 * </p> 831 */ WithServerName(const Aws::String & value)832 inline CreateServerRequest& WithServerName(const Aws::String& value) { SetServerName(value); return *this;} 833 834 /** 835 * <p> The name of the server. The server name must be unique within your AWS 836 * account, within each region. Server names must start with a letter; then 837 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 838 * </p> 839 */ WithServerName(Aws::String && value)840 inline CreateServerRequest& WithServerName(Aws::String&& value) { SetServerName(std::move(value)); return *this;} 841 842 /** 843 * <p> The name of the server. The server name must be unique within your AWS 844 * account, within each region. Server names must start with a letter; then 845 * letters, numbers, or hyphens (-) are allowed, up to a maximum of 40 characters. 846 * </p> 847 */ WithServerName(const char * value)848 inline CreateServerRequest& WithServerName(const char* value) { SetServerName(value); return *this;} 849 850 851 /** 852 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 853 * the AWS OpsWorks console typically creates the instance profile for you, if you 854 * are using API commands instead, run the service-role-creation.yaml AWS 855 * CloudFormation template, located at 856 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 857 * This template creates a CloudFormation stack that includes the instance profile 858 * you need. </p> 859 */ GetInstanceProfileArn()860 inline const Aws::String& GetInstanceProfileArn() const{ return m_instanceProfileArn; } 861 862 /** 863 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 864 * the AWS OpsWorks console typically creates the instance profile for you, if you 865 * are using API commands instead, run the service-role-creation.yaml AWS 866 * CloudFormation template, located at 867 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 868 * This template creates a CloudFormation stack that includes the instance profile 869 * you need. </p> 870 */ InstanceProfileArnHasBeenSet()871 inline bool InstanceProfileArnHasBeenSet() const { return m_instanceProfileArnHasBeenSet; } 872 873 /** 874 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 875 * the AWS OpsWorks console typically creates the instance profile for you, if you 876 * are using API commands instead, run the service-role-creation.yaml AWS 877 * CloudFormation template, located at 878 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 879 * This template creates a CloudFormation stack that includes the instance profile 880 * you need. </p> 881 */ SetInstanceProfileArn(const Aws::String & value)882 inline void SetInstanceProfileArn(const Aws::String& value) { m_instanceProfileArnHasBeenSet = true; m_instanceProfileArn = value; } 883 884 /** 885 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 886 * the AWS OpsWorks console typically creates the instance profile for you, if you 887 * are using API commands instead, run the service-role-creation.yaml AWS 888 * CloudFormation template, located at 889 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 890 * This template creates a CloudFormation stack that includes the instance profile 891 * you need. </p> 892 */ SetInstanceProfileArn(Aws::String && value)893 inline void SetInstanceProfileArn(Aws::String&& value) { m_instanceProfileArnHasBeenSet = true; m_instanceProfileArn = std::move(value); } 894 895 /** 896 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 897 * the AWS OpsWorks console typically creates the instance profile for you, if you 898 * are using API commands instead, run the service-role-creation.yaml AWS 899 * CloudFormation template, located at 900 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 901 * This template creates a CloudFormation stack that includes the instance profile 902 * you need. </p> 903 */ SetInstanceProfileArn(const char * value)904 inline void SetInstanceProfileArn(const char* value) { m_instanceProfileArnHasBeenSet = true; m_instanceProfileArn.assign(value); } 905 906 /** 907 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 908 * the AWS OpsWorks console typically creates the instance profile for you, if you 909 * are using API commands instead, run the service-role-creation.yaml AWS 910 * CloudFormation template, located at 911 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 912 * This template creates a CloudFormation stack that includes the instance profile 913 * you need. </p> 914 */ WithInstanceProfileArn(const Aws::String & value)915 inline CreateServerRequest& WithInstanceProfileArn(const Aws::String& value) { SetInstanceProfileArn(value); return *this;} 916 917 /** 918 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 919 * the AWS OpsWorks console typically creates the instance profile for you, if you 920 * are using API commands instead, run the service-role-creation.yaml AWS 921 * CloudFormation template, located at 922 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 923 * This template creates a CloudFormation stack that includes the instance profile 924 * you need. </p> 925 */ WithInstanceProfileArn(Aws::String && value)926 inline CreateServerRequest& WithInstanceProfileArn(Aws::String&& value) { SetInstanceProfileArn(std::move(value)); return *this;} 927 928 /** 929 * <p> The ARN of the instance profile that your Amazon EC2 instances use. Although 930 * the AWS OpsWorks console typically creates the instance profile for you, if you 931 * are using API commands instead, run the service-role-creation.yaml AWS 932 * CloudFormation template, located at 933 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 934 * This template creates a CloudFormation stack that includes the instance profile 935 * you need. </p> 936 */ WithInstanceProfileArn(const char * value)937 inline CreateServerRequest& WithInstanceProfileArn(const char* value) { SetInstanceProfileArn(value); return *this;} 938 939 940 /** 941 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 942 * </p> 943 */ GetInstanceType()944 inline const Aws::String& GetInstanceType() const{ return m_instanceType; } 945 946 /** 947 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 948 * </p> 949 */ InstanceTypeHasBeenSet()950 inline bool InstanceTypeHasBeenSet() const { return m_instanceTypeHasBeenSet; } 951 952 /** 953 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 954 * </p> 955 */ SetInstanceType(const Aws::String & value)956 inline void SetInstanceType(const Aws::String& value) { m_instanceTypeHasBeenSet = true; m_instanceType = value; } 957 958 /** 959 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 960 * </p> 961 */ SetInstanceType(Aws::String && value)962 inline void SetInstanceType(Aws::String&& value) { m_instanceTypeHasBeenSet = true; m_instanceType = std::move(value); } 963 964 /** 965 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 966 * </p> 967 */ SetInstanceType(const char * value)968 inline void SetInstanceType(const char* value) { m_instanceTypeHasBeenSet = true; m_instanceType.assign(value); } 969 970 /** 971 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 972 * </p> 973 */ WithInstanceType(const Aws::String & value)974 inline CreateServerRequest& WithInstanceType(const Aws::String& value) { SetInstanceType(value); return *this;} 975 976 /** 977 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 978 * </p> 979 */ WithInstanceType(Aws::String && value)980 inline CreateServerRequest& WithInstanceType(Aws::String&& value) { SetInstanceType(std::move(value)); return *this;} 981 982 /** 983 * <p> The Amazon EC2 instance type to use. For example, <code>m5.large</code>. 984 * </p> 985 */ WithInstanceType(const char * value)986 inline CreateServerRequest& WithInstanceType(const char* value) { SetInstanceType(value); return *this;} 987 988 989 /** 990 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 991 * if desired, you may specify this parameter to connect to your instances by using 992 * SSH. </p> 993 */ GetKeyPair()994 inline const Aws::String& GetKeyPair() const{ return m_keyPair; } 995 996 /** 997 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 998 * if desired, you may specify this parameter to connect to your instances by using 999 * SSH. </p> 1000 */ KeyPairHasBeenSet()1001 inline bool KeyPairHasBeenSet() const { return m_keyPairHasBeenSet; } 1002 1003 /** 1004 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1005 * if desired, you may specify this parameter to connect to your instances by using 1006 * SSH. </p> 1007 */ SetKeyPair(const Aws::String & value)1008 inline void SetKeyPair(const Aws::String& value) { m_keyPairHasBeenSet = true; m_keyPair = value; } 1009 1010 /** 1011 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1012 * if desired, you may specify this parameter to connect to your instances by using 1013 * SSH. </p> 1014 */ SetKeyPair(Aws::String && value)1015 inline void SetKeyPair(Aws::String&& value) { m_keyPairHasBeenSet = true; m_keyPair = std::move(value); } 1016 1017 /** 1018 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1019 * if desired, you may specify this parameter to connect to your instances by using 1020 * SSH. </p> 1021 */ SetKeyPair(const char * value)1022 inline void SetKeyPair(const char* value) { m_keyPairHasBeenSet = true; m_keyPair.assign(value); } 1023 1024 /** 1025 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1026 * if desired, you may specify this parameter to connect to your instances by using 1027 * SSH. </p> 1028 */ WithKeyPair(const Aws::String & value)1029 inline CreateServerRequest& WithKeyPair(const Aws::String& value) { SetKeyPair(value); return *this;} 1030 1031 /** 1032 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1033 * if desired, you may specify this parameter to connect to your instances by using 1034 * SSH. </p> 1035 */ WithKeyPair(Aws::String && value)1036 inline CreateServerRequest& WithKeyPair(Aws::String&& value) { SetKeyPair(std::move(value)); return *this;} 1037 1038 /** 1039 * <p> The Amazon EC2 key pair to set for the instance. This parameter is optional; 1040 * if desired, you may specify this parameter to connect to your instances by using 1041 * SSH. </p> 1042 */ WithKeyPair(const char * value)1043 inline CreateServerRequest& WithKeyPair(const char* value) { SetKeyPair(value); return *this;} 1044 1045 1046 /** 1047 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1048 * performs maintenance on the instance. Valid values must be specified in the 1049 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1050 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1051 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1052 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1053 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1054 * UTC. (8:00 a.m.) </p> 1055 */ GetPreferredMaintenanceWindow()1056 inline const Aws::String& GetPreferredMaintenanceWindow() const{ return m_preferredMaintenanceWindow; } 1057 1058 /** 1059 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1060 * performs maintenance on the instance. Valid values must be specified in the 1061 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1062 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1063 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1064 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1065 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1066 * UTC. (8:00 a.m.) </p> 1067 */ PreferredMaintenanceWindowHasBeenSet()1068 inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; } 1069 1070 /** 1071 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1072 * performs maintenance on the instance. Valid values must be specified in the 1073 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1074 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1075 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1076 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1077 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1078 * UTC. (8:00 a.m.) </p> 1079 */ SetPreferredMaintenanceWindow(const Aws::String & value)1080 inline void SetPreferredMaintenanceWindow(const Aws::String& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = value; } 1081 1082 /** 1083 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1084 * performs maintenance on the instance. Valid values must be specified in the 1085 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1086 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1087 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1088 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1089 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1090 * UTC. (8:00 a.m.) </p> 1091 */ SetPreferredMaintenanceWindow(Aws::String && value)1092 inline void SetPreferredMaintenanceWindow(Aws::String&& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = std::move(value); } 1093 1094 /** 1095 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1096 * performs maintenance on the instance. Valid values must be specified in the 1097 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1098 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1099 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1100 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1101 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1102 * UTC. (8:00 a.m.) </p> 1103 */ SetPreferredMaintenanceWindow(const char * value)1104 inline void SetPreferredMaintenanceWindow(const char* value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow.assign(value); } 1105 1106 /** 1107 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1108 * performs maintenance on the instance. Valid values must be specified in the 1109 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1110 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1111 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1112 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1113 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1114 * UTC. (8:00 a.m.) </p> 1115 */ WithPreferredMaintenanceWindow(const Aws::String & value)1116 inline CreateServerRequest& WithPreferredMaintenanceWindow(const Aws::String& value) { SetPreferredMaintenanceWindow(value); return *this;} 1117 1118 /** 1119 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1120 * performs maintenance on the instance. Valid values must be specified in the 1121 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1122 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1123 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1124 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1125 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1126 * UTC. (8:00 a.m.) </p> 1127 */ WithPreferredMaintenanceWindow(Aws::String && value)1128 inline CreateServerRequest& WithPreferredMaintenanceWindow(Aws::String&& value) { SetPreferredMaintenanceWindow(std::move(value)); return *this;} 1129 1130 /** 1131 * <p> The start time for a one-hour period each week during which AWS OpsWorks CM 1132 * performs maintenance on the instance. Valid values must be specified in the 1133 * following format: <code>DDD:HH:MM</code>. <code>MM</code> must be specified as 1134 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1135 * default value is a random one-hour period on Tuesday, Wednesday, or Friday. See 1136 * <code>TimeWindowDefinition</code> for more information. </p> <p> <b>Example:</b> 1137 * <code>Mon:08:00</code>, which represents a start time of every Monday at 08:00 1138 * UTC. (8:00 a.m.) </p> 1139 */ WithPreferredMaintenanceWindow(const char * value)1140 inline CreateServerRequest& WithPreferredMaintenanceWindow(const char* value) { SetPreferredMaintenanceWindow(value); return *this;} 1141 1142 1143 /** 1144 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1145 * application-level data on your server if automated backups are enabled. Valid 1146 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1147 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1148 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1149 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1150 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1151 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1152 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1153 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1154 */ GetPreferredBackupWindow()1155 inline const Aws::String& GetPreferredBackupWindow() const{ return m_preferredBackupWindow; } 1156 1157 /** 1158 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1159 * application-level data on your server if automated backups are enabled. Valid 1160 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1161 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1162 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1163 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1164 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1165 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1166 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1167 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1168 */ PreferredBackupWindowHasBeenSet()1169 inline bool PreferredBackupWindowHasBeenSet() const { return m_preferredBackupWindowHasBeenSet; } 1170 1171 /** 1172 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1173 * application-level data on your server if automated backups are enabled. Valid 1174 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1175 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1176 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1177 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1178 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1179 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1180 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1181 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1182 */ SetPreferredBackupWindow(const Aws::String & value)1183 inline void SetPreferredBackupWindow(const Aws::String& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = value; } 1184 1185 /** 1186 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1187 * application-level data on your server if automated backups are enabled. Valid 1188 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1189 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1190 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1191 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1192 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1193 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1194 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1195 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1196 */ SetPreferredBackupWindow(Aws::String && value)1197 inline void SetPreferredBackupWindow(Aws::String&& value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow = std::move(value); } 1198 1199 /** 1200 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1201 * application-level data on your server if automated backups are enabled. Valid 1202 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1203 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1204 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1205 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1206 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1207 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1208 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1209 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1210 */ SetPreferredBackupWindow(const char * value)1211 inline void SetPreferredBackupWindow(const char* value) { m_preferredBackupWindowHasBeenSet = true; m_preferredBackupWindow.assign(value); } 1212 1213 /** 1214 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1215 * application-level data on your server if automated backups are enabled. Valid 1216 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1217 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1218 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1219 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1220 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1221 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1222 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1223 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1224 */ WithPreferredBackupWindow(const Aws::String & value)1225 inline CreateServerRequest& WithPreferredBackupWindow(const Aws::String& value) { SetPreferredBackupWindow(value); return *this;} 1226 1227 /** 1228 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1229 * application-level data on your server if automated backups are enabled. Valid 1230 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1231 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1232 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1233 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1234 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1235 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1236 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1237 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1238 */ WithPreferredBackupWindow(Aws::String && value)1239 inline CreateServerRequest& WithPreferredBackupWindow(Aws::String&& value) { SetPreferredBackupWindow(std::move(value)); return *this;} 1240 1241 /** 1242 * <p> The start time for a one-hour period during which AWS OpsWorks CM backs up 1243 * application-level data on your server if automated backups are enabled. Valid 1244 * values must be specified in one of the following formats: </p> <ul> <li> <p> 1245 * <code>HH:MM</code> for daily backups</p> </li> <li> <p> <code>DDD:HH:MM</code> 1246 * for weekly backups</p> </li> </ul> <p> <code>MM</code> must be specified as 1247 * <code>00</code>. The specified time is in coordinated universal time (UTC). The 1248 * default value is a random, daily start time.</p> <p> <b>Example:</b> 1249 * <code>08:00</code>, which represents a daily start time of 08:00 UTC.</p> <p> 1250 * <b>Example:</b> <code>Mon:08:00</code>, which represents a start time of every 1251 * Monday at 08:00 UTC. (8:00 a.m.)</p> 1252 */ WithPreferredBackupWindow(const char * value)1253 inline CreateServerRequest& WithPreferredBackupWindow(const char* value) { SetPreferredBackupWindow(value); return *this;} 1254 1255 1256 /** 1257 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1258 * add this parameter, the specified security groups must be within the VPC that is 1259 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1260 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1261 * and 443, open to 0.0.0.0/0 (everyone). </p> 1262 */ GetSecurityGroupIds()1263 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const{ return m_securityGroupIds; } 1264 1265 /** 1266 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1267 * add this parameter, the specified security groups must be within the VPC that is 1268 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1269 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1270 * and 443, open to 0.0.0.0/0 (everyone). </p> 1271 */ SecurityGroupIdsHasBeenSet()1272 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; } 1273 1274 /** 1275 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1276 * add this parameter, the specified security groups must be within the VPC that is 1277 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1278 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1279 * and 443, open to 0.0.0.0/0 (everyone). </p> 1280 */ SetSecurityGroupIds(const Aws::Vector<Aws::String> & value)1281 inline void SetSecurityGroupIds(const Aws::Vector<Aws::String>& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = value; } 1282 1283 /** 1284 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1285 * add this parameter, the specified security groups must be within the VPC that is 1286 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1287 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1288 * and 443, open to 0.0.0.0/0 (everyone). </p> 1289 */ SetSecurityGroupIds(Aws::Vector<Aws::String> && value)1290 inline void SetSecurityGroupIds(Aws::Vector<Aws::String>&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::move(value); } 1291 1292 /** 1293 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1294 * add this parameter, the specified security groups must be within the VPC that is 1295 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1296 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1297 * and 443, open to 0.0.0.0/0 (everyone). </p> 1298 */ WithSecurityGroupIds(const Aws::Vector<Aws::String> & value)1299 inline CreateServerRequest& WithSecurityGroupIds(const Aws::Vector<Aws::String>& value) { SetSecurityGroupIds(value); return *this;} 1300 1301 /** 1302 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1303 * add this parameter, the specified security groups must be within the VPC that is 1304 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1305 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1306 * and 443, open to 0.0.0.0/0 (everyone). </p> 1307 */ WithSecurityGroupIds(Aws::Vector<Aws::String> && value)1308 inline CreateServerRequest& WithSecurityGroupIds(Aws::Vector<Aws::String>&& value) { SetSecurityGroupIds(std::move(value)); return *this;} 1309 1310 /** 1311 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1312 * add this parameter, the specified security groups must be within the VPC that is 1313 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1314 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1315 * and 443, open to 0.0.0.0/0 (everyone). </p> 1316 */ AddSecurityGroupIds(const Aws::String & value)1317 inline CreateServerRequest& AddSecurityGroupIds(const Aws::String& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } 1318 1319 /** 1320 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1321 * add this parameter, the specified security groups must be within the VPC that is 1322 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1323 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1324 * and 443, open to 0.0.0.0/0 (everyone). </p> 1325 */ AddSecurityGroupIds(Aws::String && value)1326 inline CreateServerRequest& AddSecurityGroupIds(Aws::String&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(std::move(value)); return *this; } 1327 1328 /** 1329 * <p> A list of security group IDs to attach to the Amazon EC2 instance. If you 1330 * add this parameter, the specified security groups must be within the VPC that is 1331 * specified by <code>SubnetIds</code>. </p> <p> If you do not specify this 1332 * parameter, AWS OpsWorks CM creates one new security group that uses TCP ports 22 1333 * and 443, open to 0.0.0.0/0 (everyone). </p> 1334 */ AddSecurityGroupIds(const char * value)1335 inline CreateServerRequest& AddSecurityGroupIds(const char* value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.push_back(value); return *this; } 1336 1337 1338 /** 1339 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1340 * your account. Although the AWS OpsWorks management console typically creates the 1341 * service role for you, if you are using the AWS CLI or API commands, run the 1342 * service-role-creation.yaml AWS CloudFormation template, located at 1343 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1344 * This template creates a CloudFormation stack that includes the service role and 1345 * instance profile that you need. </p> 1346 */ GetServiceRoleArn()1347 inline const Aws::String& GetServiceRoleArn() const{ return m_serviceRoleArn; } 1348 1349 /** 1350 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1351 * your account. Although the AWS OpsWorks management console typically creates the 1352 * service role for you, if you are using the AWS CLI or API commands, run the 1353 * service-role-creation.yaml AWS CloudFormation template, located at 1354 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1355 * This template creates a CloudFormation stack that includes the service role and 1356 * instance profile that you need. </p> 1357 */ ServiceRoleArnHasBeenSet()1358 inline bool ServiceRoleArnHasBeenSet() const { return m_serviceRoleArnHasBeenSet; } 1359 1360 /** 1361 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1362 * your account. Although the AWS OpsWorks management console typically creates the 1363 * service role for you, if you are using the AWS CLI or API commands, run the 1364 * service-role-creation.yaml AWS CloudFormation template, located at 1365 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1366 * This template creates a CloudFormation stack that includes the service role and 1367 * instance profile that you need. </p> 1368 */ SetServiceRoleArn(const Aws::String & value)1369 inline void SetServiceRoleArn(const Aws::String& value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn = value; } 1370 1371 /** 1372 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1373 * your account. Although the AWS OpsWorks management console typically creates the 1374 * service role for you, if you are using the AWS CLI or API commands, run the 1375 * service-role-creation.yaml AWS CloudFormation template, located at 1376 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1377 * This template creates a CloudFormation stack that includes the service role and 1378 * instance profile that you need. </p> 1379 */ SetServiceRoleArn(Aws::String && value)1380 inline void SetServiceRoleArn(Aws::String&& value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn = std::move(value); } 1381 1382 /** 1383 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1384 * your account. Although the AWS OpsWorks management console typically creates the 1385 * service role for you, if you are using the AWS CLI or API commands, run the 1386 * service-role-creation.yaml AWS CloudFormation template, located at 1387 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1388 * This template creates a CloudFormation stack that includes the service role and 1389 * instance profile that you need. </p> 1390 */ SetServiceRoleArn(const char * value)1391 inline void SetServiceRoleArn(const char* value) { m_serviceRoleArnHasBeenSet = true; m_serviceRoleArn.assign(value); } 1392 1393 /** 1394 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1395 * your account. Although the AWS OpsWorks management console typically creates the 1396 * service role for you, if you are using the AWS CLI or API commands, run the 1397 * service-role-creation.yaml AWS CloudFormation template, located at 1398 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1399 * This template creates a CloudFormation stack that includes the service role and 1400 * instance profile that you need. </p> 1401 */ WithServiceRoleArn(const Aws::String & value)1402 inline CreateServerRequest& WithServiceRoleArn(const Aws::String& value) { SetServiceRoleArn(value); return *this;} 1403 1404 /** 1405 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1406 * your account. Although the AWS OpsWorks management console typically creates the 1407 * service role for you, if you are using the AWS CLI or API commands, run the 1408 * service-role-creation.yaml AWS CloudFormation template, located at 1409 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1410 * This template creates a CloudFormation stack that includes the service role and 1411 * instance profile that you need. </p> 1412 */ WithServiceRoleArn(Aws::String && value)1413 inline CreateServerRequest& WithServiceRoleArn(Aws::String&& value) { SetServiceRoleArn(std::move(value)); return *this;} 1414 1415 /** 1416 * <p> The service role that the AWS OpsWorks CM service backend uses to work with 1417 * your account. Although the AWS OpsWorks management console typically creates the 1418 * service role for you, if you are using the AWS CLI or API commands, run the 1419 * service-role-creation.yaml AWS CloudFormation template, located at 1420 * https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml. 1421 * This template creates a CloudFormation stack that includes the service role and 1422 * instance profile that you need. </p> 1423 */ WithServiceRoleArn(const char * value)1424 inline CreateServerRequest& WithServiceRoleArn(const char* value) { SetServiceRoleArn(value); return *this;} 1425 1426 1427 /** 1428 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1429 * Amazon EC2-Classic customers: This field is required. All servers must run 1430 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1431 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1432 * your EC2 instances are created in a default subnet that is selected by Amazon 1433 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1434 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1435 * <a 1436 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1437 * Platforms</a>.</p> 1438 */ GetSubnetIds()1439 inline const Aws::Vector<Aws::String>& GetSubnetIds() const{ return m_subnetIds; } 1440 1441 /** 1442 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1443 * Amazon EC2-Classic customers: This field is required. All servers must run 1444 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1445 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1446 * your EC2 instances are created in a default subnet that is selected by Amazon 1447 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1448 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1449 * <a 1450 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1451 * Platforms</a>.</p> 1452 */ SubnetIdsHasBeenSet()1453 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; } 1454 1455 /** 1456 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1457 * Amazon EC2-Classic customers: This field is required. All servers must run 1458 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1459 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1460 * your EC2 instances are created in a default subnet that is selected by Amazon 1461 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1462 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1463 * <a 1464 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1465 * Platforms</a>.</p> 1466 */ SetSubnetIds(const Aws::Vector<Aws::String> & value)1467 inline void SetSubnetIds(const Aws::Vector<Aws::String>& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; } 1468 1469 /** 1470 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1471 * Amazon EC2-Classic customers: This field is required. All servers must run 1472 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1473 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1474 * your EC2 instances are created in a default subnet that is selected by Amazon 1475 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1476 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1477 * <a 1478 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1479 * Platforms</a>.</p> 1480 */ SetSubnetIds(Aws::Vector<Aws::String> && value)1481 inline void SetSubnetIds(Aws::Vector<Aws::String>&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); } 1482 1483 /** 1484 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1485 * Amazon EC2-Classic customers: This field is required. All servers must run 1486 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1487 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1488 * your EC2 instances are created in a default subnet that is selected by Amazon 1489 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1490 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1491 * <a 1492 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1493 * Platforms</a>.</p> 1494 */ WithSubnetIds(const Aws::Vector<Aws::String> & value)1495 inline CreateServerRequest& WithSubnetIds(const Aws::Vector<Aws::String>& value) { SetSubnetIds(value); return *this;} 1496 1497 /** 1498 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1499 * Amazon EC2-Classic customers: This field is required. All servers must run 1500 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1501 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1502 * your EC2 instances are created in a default subnet that is selected by Amazon 1503 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1504 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1505 * <a 1506 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1507 * Platforms</a>.</p> 1508 */ WithSubnetIds(Aws::Vector<Aws::String> && value)1509 inline CreateServerRequest& WithSubnetIds(Aws::Vector<Aws::String>&& value) { SetSubnetIds(std::move(value)); return *this;} 1510 1511 /** 1512 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1513 * Amazon EC2-Classic customers: This field is required. All servers must run 1514 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1515 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1516 * your EC2 instances are created in a default subnet that is selected by Amazon 1517 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1518 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1519 * <a 1520 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1521 * Platforms</a>.</p> 1522 */ AddSubnetIds(const Aws::String & value)1523 inline CreateServerRequest& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } 1524 1525 /** 1526 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1527 * Amazon EC2-Classic customers: This field is required. All servers must run 1528 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1529 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1530 * your EC2 instances are created in a default subnet that is selected by Amazon 1531 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1532 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1533 * <a 1534 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1535 * Platforms</a>.</p> 1536 */ AddSubnetIds(Aws::String && value)1537 inline CreateServerRequest& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; } 1538 1539 /** 1540 * <p> The IDs of subnets in which to launch the server EC2 instance. </p> <p> 1541 * Amazon EC2-Classic customers: This field is required. All servers must run 1542 * within a VPC. The VPC must have "Auto Assign Public IP" enabled. </p> <p> 1543 * EC2-VPC customers: This field is optional. If you do not specify subnet IDs, 1544 * your EC2 instances are created in a default subnet that is selected by Amazon 1545 * EC2. If you specify subnet IDs, the VPC must have "Auto Assign Public IP" 1546 * enabled. </p> <p>For more information about supported Amazon EC2 platforms, see 1547 * <a 1548 * href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html">Supported 1549 * Platforms</a>.</p> 1550 */ AddSubnetIds(const char * value)1551 inline CreateServerRequest& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } 1552 1553 1554 /** 1555 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1556 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1557 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1558 * characters, and can contain only Unicode letters, numbers, or separators, or the 1559 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1560 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1561 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1562 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1563 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1564 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1565 */ GetTags()1566 inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; } 1567 1568 /** 1569 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1570 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1571 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1572 * characters, and can contain only Unicode letters, numbers, or separators, or the 1573 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1574 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1575 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1576 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1577 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1578 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1579 */ TagsHasBeenSet()1580 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } 1581 1582 /** 1583 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1584 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1585 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1586 * characters, and can contain only Unicode letters, numbers, or separators, or the 1587 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1588 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1589 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1590 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1591 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1592 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1593 */ SetTags(const Aws::Vector<Tag> & value)1594 inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; } 1595 1596 /** 1597 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1598 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1599 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1600 * characters, and can contain only Unicode letters, numbers, or separators, or the 1601 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1602 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1603 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1604 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1605 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1606 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1607 */ SetTags(Aws::Vector<Tag> && value)1608 inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } 1609 1610 /** 1611 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1612 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1613 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1614 * characters, and can contain only Unicode letters, numbers, or separators, or the 1615 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1616 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1617 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1618 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1619 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1620 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1621 */ WithTags(const Aws::Vector<Tag> & value)1622 inline CreateServerRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;} 1623 1624 /** 1625 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1626 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1627 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1628 * characters, and can contain only Unicode letters, numbers, or separators, or the 1629 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1630 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1631 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1632 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1633 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1634 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1635 */ WithTags(Aws::Vector<Tag> && value)1636 inline CreateServerRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;} 1637 1638 /** 1639 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1640 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1641 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1642 * characters, and can contain only Unicode letters, numbers, or separators, or the 1643 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1644 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1645 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1646 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1647 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1648 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1649 */ AddTags(const Tag & value)1650 inline CreateServerRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } 1651 1652 /** 1653 * <p>A map that contains tag keys and tag values to attach to an AWS OpsWorks for 1654 * Chef Automate or AWS OpsWorks for Puppet Enterprise server.</p> <ul> <li> <p>The 1655 * key cannot be empty.</p> </li> <li> <p>The key can be a maximum of 127 1656 * characters, and can contain only Unicode letters, numbers, or separators, or the 1657 * following special characters: <code>+ - = . _ : / @</code> </p> </li> <li> 1658 * <p>The value can be a maximum 255 characters, and contain only Unicode letters, 1659 * numbers, or separators, or the following special characters: <code>+ - = . _ : / 1660 * @</code> </p> </li> <li> <p>Leading and trailing white spaces are trimmed from 1661 * both the key and value.</p> </li> <li> <p>A maximum of 50 user-applied tags is 1662 * allowed for any AWS OpsWorks-CM server.</p> </li> </ul> 1663 */ AddTags(Tag && value)1664 inline CreateServerRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } 1665 1666 1667 /** 1668 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1669 * backup represented by BackupId. </p> 1670 */ GetBackupId()1671 inline const Aws::String& GetBackupId() const{ return m_backupId; } 1672 1673 /** 1674 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1675 * backup represented by BackupId. </p> 1676 */ BackupIdHasBeenSet()1677 inline bool BackupIdHasBeenSet() const { return m_backupIdHasBeenSet; } 1678 1679 /** 1680 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1681 * backup represented by BackupId. </p> 1682 */ SetBackupId(const Aws::String & value)1683 inline void SetBackupId(const Aws::String& value) { m_backupIdHasBeenSet = true; m_backupId = value; } 1684 1685 /** 1686 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1687 * backup represented by BackupId. </p> 1688 */ SetBackupId(Aws::String && value)1689 inline void SetBackupId(Aws::String&& value) { m_backupIdHasBeenSet = true; m_backupId = std::move(value); } 1690 1691 /** 1692 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1693 * backup represented by BackupId. </p> 1694 */ SetBackupId(const char * value)1695 inline void SetBackupId(const char* value) { m_backupIdHasBeenSet = true; m_backupId.assign(value); } 1696 1697 /** 1698 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1699 * backup represented by BackupId. </p> 1700 */ WithBackupId(const Aws::String & value)1701 inline CreateServerRequest& WithBackupId(const Aws::String& value) { SetBackupId(value); return *this;} 1702 1703 /** 1704 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1705 * backup represented by BackupId. </p> 1706 */ WithBackupId(Aws::String && value)1707 inline CreateServerRequest& WithBackupId(Aws::String&& value) { SetBackupId(std::move(value)); return *this;} 1708 1709 /** 1710 * <p> If you specify this field, AWS OpsWorks CM creates the server by using the 1711 * backup represented by BackupId. </p> 1712 */ WithBackupId(const char * value)1713 inline CreateServerRequest& WithBackupId(const char* value) { SetBackupId(value); return *this;} 1714 1715 private: 1716 1717 bool m_associatePublicIpAddress; 1718 bool m_associatePublicIpAddressHasBeenSet; 1719 1720 Aws::String m_customDomain; 1721 bool m_customDomainHasBeenSet; 1722 1723 Aws::String m_customCertificate; 1724 bool m_customCertificateHasBeenSet; 1725 1726 Aws::String m_customPrivateKey; 1727 bool m_customPrivateKeyHasBeenSet; 1728 1729 bool m_disableAutomatedBackup; 1730 bool m_disableAutomatedBackupHasBeenSet; 1731 1732 Aws::String m_engine; 1733 bool m_engineHasBeenSet; 1734 1735 Aws::String m_engineModel; 1736 bool m_engineModelHasBeenSet; 1737 1738 Aws::String m_engineVersion; 1739 bool m_engineVersionHasBeenSet; 1740 1741 Aws::Vector<EngineAttribute> m_engineAttributes; 1742 bool m_engineAttributesHasBeenSet; 1743 1744 int m_backupRetentionCount; 1745 bool m_backupRetentionCountHasBeenSet; 1746 1747 Aws::String m_serverName; 1748 bool m_serverNameHasBeenSet; 1749 1750 Aws::String m_instanceProfileArn; 1751 bool m_instanceProfileArnHasBeenSet; 1752 1753 Aws::String m_instanceType; 1754 bool m_instanceTypeHasBeenSet; 1755 1756 Aws::String m_keyPair; 1757 bool m_keyPairHasBeenSet; 1758 1759 Aws::String m_preferredMaintenanceWindow; 1760 bool m_preferredMaintenanceWindowHasBeenSet; 1761 1762 Aws::String m_preferredBackupWindow; 1763 bool m_preferredBackupWindowHasBeenSet; 1764 1765 Aws::Vector<Aws::String> m_securityGroupIds; 1766 bool m_securityGroupIdsHasBeenSet; 1767 1768 Aws::String m_serviceRoleArn; 1769 bool m_serviceRoleArnHasBeenSet; 1770 1771 Aws::Vector<Aws::String> m_subnetIds; 1772 bool m_subnetIdsHasBeenSet; 1773 1774 Aws::Vector<Tag> m_tags; 1775 bool m_tagsHasBeenSet; 1776 1777 Aws::String m_backupId; 1778 bool m_backupIdHasBeenSet; 1779 }; 1780 1781 } // namespace Model 1782 } // namespace OpsWorksCM 1783 } // namespace Aws 1784