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/wafv2/WAFV2_EXPORTS.h> 8 #include <aws/wafv2/WAFV2Request.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/wafv2/model/Scope.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace WAFV2 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_WAFV2_API GetManagedRuleSetRequest : public WAFV2Request 23 { 24 public: 25 GetManagedRuleSetRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "GetManagedRuleSet"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>The name of the managed rule set. You use this, along with the rule set ID, 40 * to identify the rule set.</p> <p>This name is assigned to the corresponding 41 * managed rule group, which your customers can access and use. </p> 42 */ GetName()43 inline const Aws::String& GetName() const{ return m_name; } 44 45 /** 46 * <p>The name of the managed rule set. You use this, along with the rule set ID, 47 * to identify the rule set.</p> <p>This name is assigned to the corresponding 48 * managed rule group, which your customers can access and use. </p> 49 */ NameHasBeenSet()50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 51 52 /** 53 * <p>The name of the managed rule set. You use this, along with the rule set ID, 54 * to identify the rule set.</p> <p>This name is assigned to the corresponding 55 * managed rule group, which your customers can access and use. </p> 56 */ SetName(const Aws::String & value)57 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 58 59 /** 60 * <p>The name of the managed rule set. You use this, along with the rule set ID, 61 * to identify the rule set.</p> <p>This name is assigned to the corresponding 62 * managed rule group, which your customers can access and use. </p> 63 */ SetName(Aws::String && value)64 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 65 66 /** 67 * <p>The name of the managed rule set. You use this, along with the rule set ID, 68 * to identify the rule set.</p> <p>This name is assigned to the corresponding 69 * managed rule group, which your customers can access and use. </p> 70 */ SetName(const char * value)71 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 72 73 /** 74 * <p>The name of the managed rule set. You use this, along with the rule set ID, 75 * to identify the rule set.</p> <p>This name is assigned to the corresponding 76 * managed rule group, which your customers can access and use. </p> 77 */ WithName(const Aws::String & value)78 inline GetManagedRuleSetRequest& WithName(const Aws::String& value) { SetName(value); return *this;} 79 80 /** 81 * <p>The name of the managed rule set. You use this, along with the rule set ID, 82 * to identify the rule set.</p> <p>This name is assigned to the corresponding 83 * managed rule group, which your customers can access and use. </p> 84 */ WithName(Aws::String && value)85 inline GetManagedRuleSetRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 86 87 /** 88 * <p>The name of the managed rule set. You use this, along with the rule set ID, 89 * to identify the rule set.</p> <p>This name is assigned to the corresponding 90 * managed rule group, which your customers can access and use. </p> 91 */ WithName(const char * value)92 inline GetManagedRuleSetRequest& WithName(const char* value) { SetName(value); return *this;} 93 94 95 /** 96 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 97 * regional application. A regional application can be an Application Load Balancer 98 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 99 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 100 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 101 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 102 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 103 * </ul> 104 */ GetScope()105 inline const Scope& GetScope() const{ return m_scope; } 106 107 /** 108 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 109 * regional application. A regional application can be an Application Load Balancer 110 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 111 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 112 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 113 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 114 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 115 * </ul> 116 */ ScopeHasBeenSet()117 inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; } 118 119 /** 120 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 121 * regional application. A regional application can be an Application Load Balancer 122 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 123 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 124 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 125 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 126 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 127 * </ul> 128 */ SetScope(const Scope & value)129 inline void SetScope(const Scope& value) { m_scopeHasBeenSet = true; m_scope = value; } 130 131 /** 132 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 133 * regional application. A regional application can be an Application Load Balancer 134 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 135 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 136 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 137 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 138 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 139 * </ul> 140 */ SetScope(Scope && value)141 inline void SetScope(Scope&& value) { m_scopeHasBeenSet = true; m_scope = std::move(value); } 142 143 /** 144 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 145 * regional application. A regional application can be an Application Load Balancer 146 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 147 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 148 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 149 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 150 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 151 * </ul> 152 */ WithScope(const Scope & value)153 inline GetManagedRuleSetRequest& WithScope(const Scope& value) { SetScope(value); return *this;} 154 155 /** 156 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 157 * regional application. A regional application can be an Application Load Balancer 158 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 159 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 160 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 161 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 162 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 163 * </ul> 164 */ WithScope(Scope && value)165 inline GetManagedRuleSetRequest& WithScope(Scope&& value) { SetScope(std::move(value)); return *this;} 166 167 168 /** 169 * <p>A unique identifier for the managed rule set. The ID is returned in the 170 * responses to commands like <code>list</code>. You provide it to operations like 171 * <code>get</code> and <code>update</code>.</p> 172 */ GetId()173 inline const Aws::String& GetId() const{ return m_id; } 174 175 /** 176 * <p>A unique identifier for the managed rule set. The ID is returned in the 177 * responses to commands like <code>list</code>. You provide it to operations like 178 * <code>get</code> and <code>update</code>.</p> 179 */ IdHasBeenSet()180 inline bool IdHasBeenSet() const { return m_idHasBeenSet; } 181 182 /** 183 * <p>A unique identifier for the managed rule set. The ID is returned in the 184 * responses to commands like <code>list</code>. You provide it to operations like 185 * <code>get</code> and <code>update</code>.</p> 186 */ SetId(const Aws::String & value)187 inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } 188 189 /** 190 * <p>A unique identifier for the managed rule set. The ID is returned in the 191 * responses to commands like <code>list</code>. You provide it to operations like 192 * <code>get</code> and <code>update</code>.</p> 193 */ SetId(Aws::String && value)194 inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } 195 196 /** 197 * <p>A unique identifier for the managed rule set. The ID is returned in the 198 * responses to commands like <code>list</code>. You provide it to operations like 199 * <code>get</code> and <code>update</code>.</p> 200 */ SetId(const char * value)201 inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } 202 203 /** 204 * <p>A unique identifier for the managed rule set. The ID is returned in the 205 * responses to commands like <code>list</code>. You provide it to operations like 206 * <code>get</code> and <code>update</code>.</p> 207 */ WithId(const Aws::String & value)208 inline GetManagedRuleSetRequest& WithId(const Aws::String& value) { SetId(value); return *this;} 209 210 /** 211 * <p>A unique identifier for the managed rule set. The ID is returned in the 212 * responses to commands like <code>list</code>. You provide it to operations like 213 * <code>get</code> and <code>update</code>.</p> 214 */ WithId(Aws::String && value)215 inline GetManagedRuleSetRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} 216 217 /** 218 * <p>A unique identifier for the managed rule set. The ID is returned in the 219 * responses to commands like <code>list</code>. You provide it to operations like 220 * <code>get</code> and <code>update</code>.</p> 221 */ WithId(const char * value)222 inline GetManagedRuleSetRequest& WithId(const char* value) { SetId(value); return *this;} 223 224 private: 225 226 Aws::String m_name; 227 bool m_nameHasBeenSet; 228 229 Scope m_scope; 230 bool m_scopeHasBeenSet; 231 232 Aws::String m_id; 233 bool m_idHasBeenSet; 234 }; 235 236 } // namespace Model 237 } // namespace WAFV2 238 } // namespace Aws 239