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/autoscaling/AutoScaling_EXPORTS.h> 8 #include <aws/autoscaling/AutoScalingRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace AutoScaling 15 { 16 namespace Model 17 { 18 19 /** 20 */ 21 class AWS_AUTOSCALING_API DeletePolicyRequest : public AutoScalingRequest 22 { 23 public: 24 DeletePolicyRequest(); 25 26 // Service request name is the Operation name which will send this request out, 27 // each operation should has unique request name, so that we can get operation's name from this request. 28 // Note: this is not true for response, multiple operations may have the same response name, 29 // so we can not get operation's name from response. GetServiceRequestName()30 inline virtual const char* GetServiceRequestName() const override { return "DeletePolicy"; } 31 32 Aws::String SerializePayload() const override; 33 34 protected: 35 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 36 37 public: 38 39 /** 40 * <p>The name of the Auto Scaling group.</p> 41 */ GetAutoScalingGroupName()42 inline const Aws::String& GetAutoScalingGroupName() const{ return m_autoScalingGroupName; } 43 44 /** 45 * <p>The name of the Auto Scaling group.</p> 46 */ AutoScalingGroupNameHasBeenSet()47 inline bool AutoScalingGroupNameHasBeenSet() const { return m_autoScalingGroupNameHasBeenSet; } 48 49 /** 50 * <p>The name of the Auto Scaling group.</p> 51 */ SetAutoScalingGroupName(const Aws::String & value)52 inline void SetAutoScalingGroupName(const Aws::String& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = value; } 53 54 /** 55 * <p>The name of the Auto Scaling group.</p> 56 */ SetAutoScalingGroupName(Aws::String && value)57 inline void SetAutoScalingGroupName(Aws::String&& value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName = std::move(value); } 58 59 /** 60 * <p>The name of the Auto Scaling group.</p> 61 */ SetAutoScalingGroupName(const char * value)62 inline void SetAutoScalingGroupName(const char* value) { m_autoScalingGroupNameHasBeenSet = true; m_autoScalingGroupName.assign(value); } 63 64 /** 65 * <p>The name of the Auto Scaling group.</p> 66 */ WithAutoScalingGroupName(const Aws::String & value)67 inline DeletePolicyRequest& WithAutoScalingGroupName(const Aws::String& value) { SetAutoScalingGroupName(value); return *this;} 68 69 /** 70 * <p>The name of the Auto Scaling group.</p> 71 */ WithAutoScalingGroupName(Aws::String && value)72 inline DeletePolicyRequest& WithAutoScalingGroupName(Aws::String&& value) { SetAutoScalingGroupName(std::move(value)); return *this;} 73 74 /** 75 * <p>The name of the Auto Scaling group.</p> 76 */ WithAutoScalingGroupName(const char * value)77 inline DeletePolicyRequest& WithAutoScalingGroupName(const char* value) { SetAutoScalingGroupName(value); return *this;} 78 79 80 /** 81 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 82 */ GetPolicyName()83 inline const Aws::String& GetPolicyName() const{ return m_policyName; } 84 85 /** 86 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 87 */ PolicyNameHasBeenSet()88 inline bool PolicyNameHasBeenSet() const { return m_policyNameHasBeenSet; } 89 90 /** 91 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 92 */ SetPolicyName(const Aws::String & value)93 inline void SetPolicyName(const Aws::String& value) { m_policyNameHasBeenSet = true; m_policyName = value; } 94 95 /** 96 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 97 */ SetPolicyName(Aws::String && value)98 inline void SetPolicyName(Aws::String&& value) { m_policyNameHasBeenSet = true; m_policyName = std::move(value); } 99 100 /** 101 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 102 */ SetPolicyName(const char * value)103 inline void SetPolicyName(const char* value) { m_policyNameHasBeenSet = true; m_policyName.assign(value); } 104 105 /** 106 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 107 */ WithPolicyName(const Aws::String & value)108 inline DeletePolicyRequest& WithPolicyName(const Aws::String& value) { SetPolicyName(value); return *this;} 109 110 /** 111 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 112 */ WithPolicyName(Aws::String && value)113 inline DeletePolicyRequest& WithPolicyName(Aws::String&& value) { SetPolicyName(std::move(value)); return *this;} 114 115 /** 116 * <p>The name or Amazon Resource Name (ARN) of the policy.</p> 117 */ WithPolicyName(const char * value)118 inline DeletePolicyRequest& WithPolicyName(const char* value) { SetPolicyName(value); return *this;} 119 120 private: 121 122 Aws::String m_autoScalingGroupName; 123 bool m_autoScalingGroupNameHasBeenSet; 124 125 Aws::String m_policyName; 126 bool m_policyNameHasBeenSet; 127 }; 128 129 } // namespace Model 130 } // namespace AutoScaling 131 } // namespace Aws 132