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/config/ConfigService_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/config/model/RemediationTargetType.h> 10 #include <aws/core/utils/memory/stl/AWSMap.h> 11 #include <aws/config/model/ExecutionControls.h> 12 #include <aws/config/model/RemediationParameterValue.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 class JsonView; 23 } // namespace Json 24 } // namespace Utils 25 namespace ConfigService 26 { 27 namespace Model 28 { 29 30 /** 31 * <p>An object that represents the details about the remediation configuration 32 * that includes the remediation action, parameters, and data to execute the 33 * action.</p><p><h3>See Also:</h3> <a 34 * href="http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/RemediationConfiguration">AWS 35 * API Reference</a></p> 36 */ 37 class AWS_CONFIGSERVICE_API RemediationConfiguration 38 { 39 public: 40 RemediationConfiguration(); 41 RemediationConfiguration(Aws::Utils::Json::JsonView jsonValue); 42 RemediationConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); 43 Aws::Utils::Json::JsonValue Jsonize() const; 44 45 46 /** 47 * <p>The name of the Config rule.</p> 48 */ GetConfigRuleName()49 inline const Aws::String& GetConfigRuleName() const{ return m_configRuleName; } 50 51 /** 52 * <p>The name of the Config rule.</p> 53 */ ConfigRuleNameHasBeenSet()54 inline bool ConfigRuleNameHasBeenSet() const { return m_configRuleNameHasBeenSet; } 55 56 /** 57 * <p>The name of the Config rule.</p> 58 */ SetConfigRuleName(const Aws::String & value)59 inline void SetConfigRuleName(const Aws::String& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = value; } 60 61 /** 62 * <p>The name of the Config rule.</p> 63 */ SetConfigRuleName(Aws::String && value)64 inline void SetConfigRuleName(Aws::String&& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = std::move(value); } 65 66 /** 67 * <p>The name of the Config rule.</p> 68 */ SetConfigRuleName(const char * value)69 inline void SetConfigRuleName(const char* value) { m_configRuleNameHasBeenSet = true; m_configRuleName.assign(value); } 70 71 /** 72 * <p>The name of the Config rule.</p> 73 */ WithConfigRuleName(const Aws::String & value)74 inline RemediationConfiguration& WithConfigRuleName(const Aws::String& value) { SetConfigRuleName(value); return *this;} 75 76 /** 77 * <p>The name of the Config rule.</p> 78 */ WithConfigRuleName(Aws::String && value)79 inline RemediationConfiguration& WithConfigRuleName(Aws::String&& value) { SetConfigRuleName(std::move(value)); return *this;} 80 81 /** 82 * <p>The name of the Config rule.</p> 83 */ WithConfigRuleName(const char * value)84 inline RemediationConfiguration& WithConfigRuleName(const char* value) { SetConfigRuleName(value); return *this;} 85 86 87 /** 88 * <p>The type of the target. Target executes remediation. For example, SSM 89 * document.</p> 90 */ GetTargetType()91 inline const RemediationTargetType& GetTargetType() const{ return m_targetType; } 92 93 /** 94 * <p>The type of the target. Target executes remediation. For example, SSM 95 * document.</p> 96 */ TargetTypeHasBeenSet()97 inline bool TargetTypeHasBeenSet() const { return m_targetTypeHasBeenSet; } 98 99 /** 100 * <p>The type of the target. Target executes remediation. For example, SSM 101 * document.</p> 102 */ SetTargetType(const RemediationTargetType & value)103 inline void SetTargetType(const RemediationTargetType& value) { m_targetTypeHasBeenSet = true; m_targetType = value; } 104 105 /** 106 * <p>The type of the target. Target executes remediation. For example, SSM 107 * document.</p> 108 */ SetTargetType(RemediationTargetType && value)109 inline void SetTargetType(RemediationTargetType&& value) { m_targetTypeHasBeenSet = true; m_targetType = std::move(value); } 110 111 /** 112 * <p>The type of the target. Target executes remediation. For example, SSM 113 * document.</p> 114 */ WithTargetType(const RemediationTargetType & value)115 inline RemediationConfiguration& WithTargetType(const RemediationTargetType& value) { SetTargetType(value); return *this;} 116 117 /** 118 * <p>The type of the target. Target executes remediation. For example, SSM 119 * document.</p> 120 */ WithTargetType(RemediationTargetType && value)121 inline RemediationConfiguration& WithTargetType(RemediationTargetType&& value) { SetTargetType(std::move(value)); return *this;} 122 123 124 /** 125 * <p>Target ID is the name of the public document.</p> 126 */ GetTargetId()127 inline const Aws::String& GetTargetId() const{ return m_targetId; } 128 129 /** 130 * <p>Target ID is the name of the public document.</p> 131 */ TargetIdHasBeenSet()132 inline bool TargetIdHasBeenSet() const { return m_targetIdHasBeenSet; } 133 134 /** 135 * <p>Target ID is the name of the public document.</p> 136 */ SetTargetId(const Aws::String & value)137 inline void SetTargetId(const Aws::String& value) { m_targetIdHasBeenSet = true; m_targetId = value; } 138 139 /** 140 * <p>Target ID is the name of the public document.</p> 141 */ SetTargetId(Aws::String && value)142 inline void SetTargetId(Aws::String&& value) { m_targetIdHasBeenSet = true; m_targetId = std::move(value); } 143 144 /** 145 * <p>Target ID is the name of the public document.</p> 146 */ SetTargetId(const char * value)147 inline void SetTargetId(const char* value) { m_targetIdHasBeenSet = true; m_targetId.assign(value); } 148 149 /** 150 * <p>Target ID is the name of the public document.</p> 151 */ WithTargetId(const Aws::String & value)152 inline RemediationConfiguration& WithTargetId(const Aws::String& value) { SetTargetId(value); return *this;} 153 154 /** 155 * <p>Target ID is the name of the public document.</p> 156 */ WithTargetId(Aws::String && value)157 inline RemediationConfiguration& WithTargetId(Aws::String&& value) { SetTargetId(std::move(value)); return *this;} 158 159 /** 160 * <p>Target ID is the name of the public document.</p> 161 */ WithTargetId(const char * value)162 inline RemediationConfiguration& WithTargetId(const char* value) { SetTargetId(value); return *this;} 163 164 165 /** 166 * <p>Version of the target. For example, version of the SSM document.</p> 167 * <p>If you make backward incompatible changes to the SSM document, you must call 168 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 169 * 170 */ GetTargetVersion()171 inline const Aws::String& GetTargetVersion() const{ return m_targetVersion; } 172 173 /** 174 * <p>Version of the target. For example, version of the SSM document.</p> 175 * <p>If you make backward incompatible changes to the SSM document, you must call 176 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 177 * 178 */ TargetVersionHasBeenSet()179 inline bool TargetVersionHasBeenSet() const { return m_targetVersionHasBeenSet; } 180 181 /** 182 * <p>Version of the target. For example, version of the SSM document.</p> 183 * <p>If you make backward incompatible changes to the SSM document, you must call 184 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 185 * 186 */ SetTargetVersion(const Aws::String & value)187 inline void SetTargetVersion(const Aws::String& value) { m_targetVersionHasBeenSet = true; m_targetVersion = value; } 188 189 /** 190 * <p>Version of the target. For example, version of the SSM document.</p> 191 * <p>If you make backward incompatible changes to the SSM document, you must call 192 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 193 * 194 */ SetTargetVersion(Aws::String && value)195 inline void SetTargetVersion(Aws::String&& value) { m_targetVersionHasBeenSet = true; m_targetVersion = std::move(value); } 196 197 /** 198 * <p>Version of the target. For example, version of the SSM document.</p> 199 * <p>If you make backward incompatible changes to the SSM document, you must call 200 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 201 * 202 */ SetTargetVersion(const char * value)203 inline void SetTargetVersion(const char* value) { m_targetVersionHasBeenSet = true; m_targetVersion.assign(value); } 204 205 /** 206 * <p>Version of the target. For example, version of the SSM document.</p> 207 * <p>If you make backward incompatible changes to the SSM document, you must call 208 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 209 * 210 */ WithTargetVersion(const Aws::String & value)211 inline RemediationConfiguration& WithTargetVersion(const Aws::String& value) { SetTargetVersion(value); return *this;} 212 213 /** 214 * <p>Version of the target. For example, version of the SSM document.</p> 215 * <p>If you make backward incompatible changes to the SSM document, you must call 216 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 217 * 218 */ WithTargetVersion(Aws::String && value)219 inline RemediationConfiguration& WithTargetVersion(Aws::String&& value) { SetTargetVersion(std::move(value)); return *this;} 220 221 /** 222 * <p>Version of the target. For example, version of the SSM document.</p> 223 * <p>If you make backward incompatible changes to the SSM document, you must call 224 * PutRemediationConfiguration API again to ensure the remediations can run.</p> 225 * 226 */ WithTargetVersion(const char * value)227 inline RemediationConfiguration& WithTargetVersion(const char* value) { SetTargetVersion(value); return *this;} 228 229 230 /** 231 * <p>An object of the RemediationParameterValue.</p> 232 */ GetParameters()233 inline const Aws::Map<Aws::String, RemediationParameterValue>& GetParameters() const{ return m_parameters; } 234 235 /** 236 * <p>An object of the RemediationParameterValue.</p> 237 */ ParametersHasBeenSet()238 inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } 239 240 /** 241 * <p>An object of the RemediationParameterValue.</p> 242 */ SetParameters(const Aws::Map<Aws::String,RemediationParameterValue> & value)243 inline void SetParameters(const Aws::Map<Aws::String, RemediationParameterValue>& value) { m_parametersHasBeenSet = true; m_parameters = value; } 244 245 /** 246 * <p>An object of the RemediationParameterValue.</p> 247 */ SetParameters(Aws::Map<Aws::String,RemediationParameterValue> && value)248 inline void SetParameters(Aws::Map<Aws::String, RemediationParameterValue>&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } 249 250 /** 251 * <p>An object of the RemediationParameterValue.</p> 252 */ WithParameters(const Aws::Map<Aws::String,RemediationParameterValue> & value)253 inline RemediationConfiguration& WithParameters(const Aws::Map<Aws::String, RemediationParameterValue>& value) { SetParameters(value); return *this;} 254 255 /** 256 * <p>An object of the RemediationParameterValue.</p> 257 */ WithParameters(Aws::Map<Aws::String,RemediationParameterValue> && value)258 inline RemediationConfiguration& WithParameters(Aws::Map<Aws::String, RemediationParameterValue>&& value) { SetParameters(std::move(value)); return *this;} 259 260 /** 261 * <p>An object of the RemediationParameterValue.</p> 262 */ AddParameters(const Aws::String & key,const RemediationParameterValue & value)263 inline RemediationConfiguration& AddParameters(const Aws::String& key, const RemediationParameterValue& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } 264 265 /** 266 * <p>An object of the RemediationParameterValue.</p> 267 */ AddParameters(Aws::String && key,const RemediationParameterValue & value)268 inline RemediationConfiguration& AddParameters(Aws::String&& key, const RemediationParameterValue& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), value); return *this; } 269 270 /** 271 * <p>An object of the RemediationParameterValue.</p> 272 */ AddParameters(const Aws::String & key,RemediationParameterValue && value)273 inline RemediationConfiguration& AddParameters(const Aws::String& key, RemediationParameterValue&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } 274 275 /** 276 * <p>An object of the RemediationParameterValue.</p> 277 */ AddParameters(Aws::String && key,RemediationParameterValue && value)278 inline RemediationConfiguration& AddParameters(Aws::String&& key, RemediationParameterValue&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), std::move(value)); return *this; } 279 280 /** 281 * <p>An object of the RemediationParameterValue.</p> 282 */ AddParameters(const char * key,RemediationParameterValue && value)283 inline RemediationConfiguration& AddParameters(const char* key, RemediationParameterValue&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } 284 285 /** 286 * <p>An object of the RemediationParameterValue.</p> 287 */ AddParameters(const char * key,const RemediationParameterValue & value)288 inline RemediationConfiguration& AddParameters(const char* key, const RemediationParameterValue& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } 289 290 291 /** 292 * <p>The type of a resource. </p> 293 */ GetResourceType()294 inline const Aws::String& GetResourceType() const{ return m_resourceType; } 295 296 /** 297 * <p>The type of a resource. </p> 298 */ ResourceTypeHasBeenSet()299 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } 300 301 /** 302 * <p>The type of a resource. </p> 303 */ SetResourceType(const Aws::String & value)304 inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } 305 306 /** 307 * <p>The type of a resource. </p> 308 */ SetResourceType(Aws::String && value)309 inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } 310 311 /** 312 * <p>The type of a resource. </p> 313 */ SetResourceType(const char * value)314 inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } 315 316 /** 317 * <p>The type of a resource. </p> 318 */ WithResourceType(const Aws::String & value)319 inline RemediationConfiguration& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} 320 321 /** 322 * <p>The type of a resource. </p> 323 */ WithResourceType(Aws::String && value)324 inline RemediationConfiguration& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} 325 326 /** 327 * <p>The type of a resource. </p> 328 */ WithResourceType(const char * value)329 inline RemediationConfiguration& WithResourceType(const char* value) { SetResourceType(value); return *this;} 330 331 332 /** 333 * <p>The remediation is triggered automatically.</p> 334 */ GetAutomatic()335 inline bool GetAutomatic() const{ return m_automatic; } 336 337 /** 338 * <p>The remediation is triggered automatically.</p> 339 */ AutomaticHasBeenSet()340 inline bool AutomaticHasBeenSet() const { return m_automaticHasBeenSet; } 341 342 /** 343 * <p>The remediation is triggered automatically.</p> 344 */ SetAutomatic(bool value)345 inline void SetAutomatic(bool value) { m_automaticHasBeenSet = true; m_automatic = value; } 346 347 /** 348 * <p>The remediation is triggered automatically.</p> 349 */ WithAutomatic(bool value)350 inline RemediationConfiguration& WithAutomatic(bool value) { SetAutomatic(value); return *this;} 351 352 353 /** 354 * <p>An ExecutionControls object.</p> 355 */ GetExecutionControls()356 inline const ExecutionControls& GetExecutionControls() const{ return m_executionControls; } 357 358 /** 359 * <p>An ExecutionControls object.</p> 360 */ ExecutionControlsHasBeenSet()361 inline bool ExecutionControlsHasBeenSet() const { return m_executionControlsHasBeenSet; } 362 363 /** 364 * <p>An ExecutionControls object.</p> 365 */ SetExecutionControls(const ExecutionControls & value)366 inline void SetExecutionControls(const ExecutionControls& value) { m_executionControlsHasBeenSet = true; m_executionControls = value; } 367 368 /** 369 * <p>An ExecutionControls object.</p> 370 */ SetExecutionControls(ExecutionControls && value)371 inline void SetExecutionControls(ExecutionControls&& value) { m_executionControlsHasBeenSet = true; m_executionControls = std::move(value); } 372 373 /** 374 * <p>An ExecutionControls object.</p> 375 */ WithExecutionControls(const ExecutionControls & value)376 inline RemediationConfiguration& WithExecutionControls(const ExecutionControls& value) { SetExecutionControls(value); return *this;} 377 378 /** 379 * <p>An ExecutionControls object.</p> 380 */ WithExecutionControls(ExecutionControls && value)381 inline RemediationConfiguration& WithExecutionControls(ExecutionControls&& value) { SetExecutionControls(std::move(value)); return *this;} 382 383 384 /** 385 * <p>The maximum number of failed attempts for auto-remediation. If you do not 386 * select a number, the default is 5.</p> <p>For example, if you specify 387 * MaximumAutomaticAttempts as 5 with RetryAttemptSeconds as 50 seconds, Config 388 * will put a RemediationException on your behalf for the failing resource after 389 * the 5th failed attempt within 50 seconds.</p> 390 */ GetMaximumAutomaticAttempts()391 inline int GetMaximumAutomaticAttempts() const{ return m_maximumAutomaticAttempts; } 392 393 /** 394 * <p>The maximum number of failed attempts for auto-remediation. If you do not 395 * select a number, the default is 5.</p> <p>For example, if you specify 396 * MaximumAutomaticAttempts as 5 with RetryAttemptSeconds as 50 seconds, Config 397 * will put a RemediationException on your behalf for the failing resource after 398 * the 5th failed attempt within 50 seconds.</p> 399 */ MaximumAutomaticAttemptsHasBeenSet()400 inline bool MaximumAutomaticAttemptsHasBeenSet() const { return m_maximumAutomaticAttemptsHasBeenSet; } 401 402 /** 403 * <p>The maximum number of failed attempts for auto-remediation. If you do not 404 * select a number, the default is 5.</p> <p>For example, if you specify 405 * MaximumAutomaticAttempts as 5 with RetryAttemptSeconds as 50 seconds, Config 406 * will put a RemediationException on your behalf for the failing resource after 407 * the 5th failed attempt within 50 seconds.</p> 408 */ SetMaximumAutomaticAttempts(int value)409 inline void SetMaximumAutomaticAttempts(int value) { m_maximumAutomaticAttemptsHasBeenSet = true; m_maximumAutomaticAttempts = value; } 410 411 /** 412 * <p>The maximum number of failed attempts for auto-remediation. If you do not 413 * select a number, the default is 5.</p> <p>For example, if you specify 414 * MaximumAutomaticAttempts as 5 with RetryAttemptSeconds as 50 seconds, Config 415 * will put a RemediationException on your behalf for the failing resource after 416 * the 5th failed attempt within 50 seconds.</p> 417 */ WithMaximumAutomaticAttempts(int value)418 inline RemediationConfiguration& WithMaximumAutomaticAttempts(int value) { SetMaximumAutomaticAttempts(value); return *this;} 419 420 421 /** 422 * <p>Maximum time in seconds that Config runs auto-remediation. If you do not 423 * select a number, the default is 60 seconds. </p> <p>For example, if you specify 424 * RetryAttemptSeconds as 50 seconds and MaximumAutomaticAttempts as 5, Config will 425 * run auto-remediations 5 times within 50 seconds before throwing an 426 * exception.</p> 427 */ GetRetryAttemptSeconds()428 inline long long GetRetryAttemptSeconds() const{ return m_retryAttemptSeconds; } 429 430 /** 431 * <p>Maximum time in seconds that Config runs auto-remediation. If you do not 432 * select a number, the default is 60 seconds. </p> <p>For example, if you specify 433 * RetryAttemptSeconds as 50 seconds and MaximumAutomaticAttempts as 5, Config will 434 * run auto-remediations 5 times within 50 seconds before throwing an 435 * exception.</p> 436 */ RetryAttemptSecondsHasBeenSet()437 inline bool RetryAttemptSecondsHasBeenSet() const { return m_retryAttemptSecondsHasBeenSet; } 438 439 /** 440 * <p>Maximum time in seconds that Config runs auto-remediation. If you do not 441 * select a number, the default is 60 seconds. </p> <p>For example, if you specify 442 * RetryAttemptSeconds as 50 seconds and MaximumAutomaticAttempts as 5, Config will 443 * run auto-remediations 5 times within 50 seconds before throwing an 444 * exception.</p> 445 */ SetRetryAttemptSeconds(long long value)446 inline void SetRetryAttemptSeconds(long long value) { m_retryAttemptSecondsHasBeenSet = true; m_retryAttemptSeconds = value; } 447 448 /** 449 * <p>Maximum time in seconds that Config runs auto-remediation. If you do not 450 * select a number, the default is 60 seconds. </p> <p>For example, if you specify 451 * RetryAttemptSeconds as 50 seconds and MaximumAutomaticAttempts as 5, Config will 452 * run auto-remediations 5 times within 50 seconds before throwing an 453 * exception.</p> 454 */ WithRetryAttemptSeconds(long long value)455 inline RemediationConfiguration& WithRetryAttemptSeconds(long long value) { SetRetryAttemptSeconds(value); return *this;} 456 457 458 /** 459 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 460 */ GetArn()461 inline const Aws::String& GetArn() const{ return m_arn; } 462 463 /** 464 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 465 */ ArnHasBeenSet()466 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } 467 468 /** 469 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 470 */ SetArn(const Aws::String & value)471 inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } 472 473 /** 474 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 475 */ SetArn(Aws::String && value)476 inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } 477 478 /** 479 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 480 */ SetArn(const char * value)481 inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } 482 483 /** 484 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 485 */ WithArn(const Aws::String & value)486 inline RemediationConfiguration& WithArn(const Aws::String& value) { SetArn(value); return *this;} 487 488 /** 489 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 490 */ WithArn(Aws::String && value)491 inline RemediationConfiguration& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} 492 493 /** 494 * <p>Amazon Resource Name (ARN) of remediation configuration.</p> 495 */ WithArn(const char * value)496 inline RemediationConfiguration& WithArn(const char* value) { SetArn(value); return *this;} 497 498 499 /** 500 * <p>Name of the service that owns the service linked rule, if applicable.</p> 501 */ GetCreatedByService()502 inline const Aws::String& GetCreatedByService() const{ return m_createdByService; } 503 504 /** 505 * <p>Name of the service that owns the service linked rule, if applicable.</p> 506 */ CreatedByServiceHasBeenSet()507 inline bool CreatedByServiceHasBeenSet() const { return m_createdByServiceHasBeenSet; } 508 509 /** 510 * <p>Name of the service that owns the service linked rule, if applicable.</p> 511 */ SetCreatedByService(const Aws::String & value)512 inline void SetCreatedByService(const Aws::String& value) { m_createdByServiceHasBeenSet = true; m_createdByService = value; } 513 514 /** 515 * <p>Name of the service that owns the service linked rule, if applicable.</p> 516 */ SetCreatedByService(Aws::String && value)517 inline void SetCreatedByService(Aws::String&& value) { m_createdByServiceHasBeenSet = true; m_createdByService = std::move(value); } 518 519 /** 520 * <p>Name of the service that owns the service linked rule, if applicable.</p> 521 */ SetCreatedByService(const char * value)522 inline void SetCreatedByService(const char* value) { m_createdByServiceHasBeenSet = true; m_createdByService.assign(value); } 523 524 /** 525 * <p>Name of the service that owns the service linked rule, if applicable.</p> 526 */ WithCreatedByService(const Aws::String & value)527 inline RemediationConfiguration& WithCreatedByService(const Aws::String& value) { SetCreatedByService(value); return *this;} 528 529 /** 530 * <p>Name of the service that owns the service linked rule, if applicable.</p> 531 */ WithCreatedByService(Aws::String && value)532 inline RemediationConfiguration& WithCreatedByService(Aws::String&& value) { SetCreatedByService(std::move(value)); return *this;} 533 534 /** 535 * <p>Name of the service that owns the service linked rule, if applicable.</p> 536 */ WithCreatedByService(const char * value)537 inline RemediationConfiguration& WithCreatedByService(const char* value) { SetCreatedByService(value); return *this;} 538 539 private: 540 541 Aws::String m_configRuleName; 542 bool m_configRuleNameHasBeenSet; 543 544 RemediationTargetType m_targetType; 545 bool m_targetTypeHasBeenSet; 546 547 Aws::String m_targetId; 548 bool m_targetIdHasBeenSet; 549 550 Aws::String m_targetVersion; 551 bool m_targetVersionHasBeenSet; 552 553 Aws::Map<Aws::String, RemediationParameterValue> m_parameters; 554 bool m_parametersHasBeenSet; 555 556 Aws::String m_resourceType; 557 bool m_resourceTypeHasBeenSet; 558 559 bool m_automatic; 560 bool m_automaticHasBeenSet; 561 562 ExecutionControls m_executionControls; 563 bool m_executionControlsHasBeenSet; 564 565 int m_maximumAutomaticAttempts; 566 bool m_maximumAutomaticAttemptsHasBeenSet; 567 568 long long m_retryAttemptSeconds; 569 bool m_retryAttemptSecondsHasBeenSet; 570 571 Aws::String m_arn; 572 bool m_arnHasBeenSet; 573 574 Aws::String m_createdByService; 575 bool m_createdByServiceHasBeenSet; 576 }; 577 578 } // namespace Model 579 } // namespace ConfigService 580 } // namespace Aws 581