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/wafv2/model/Scope.h> 10 #include <aws/core/utils/memory/stl/AWSString.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 ListWebACLsRequest : public WAFV2Request 23 { 24 public: 25 ListWebACLsRequest(); 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 "ListWebACLs"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 40 * regional application. A regional application can be an Application Load Balancer 41 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 42 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 43 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 44 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 45 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 46 * </ul> 47 */ GetScope()48 inline const Scope& GetScope() const{ return m_scope; } 49 50 /** 51 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 52 * regional application. A regional application can be an Application Load Balancer 53 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 54 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 55 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 56 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 57 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 58 * </ul> 59 */ ScopeHasBeenSet()60 inline bool ScopeHasBeenSet() const { return m_scopeHasBeenSet; } 61 62 /** 63 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 64 * regional application. A regional application can be an Application Load Balancer 65 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 66 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 67 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 68 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 69 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 70 * </ul> 71 */ SetScope(const Scope & value)72 inline void SetScope(const Scope& value) { m_scopeHasBeenSet = true; m_scope = value; } 73 74 /** 75 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 76 * regional application. A regional application can be an Application Load Balancer 77 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 78 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 79 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 80 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 81 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 82 * </ul> 83 */ SetScope(Scope && value)84 inline void SetScope(Scope&& value) { m_scopeHasBeenSet = true; m_scope = std::move(value); } 85 86 /** 87 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 88 * regional application. A regional application can be an Application Load Balancer 89 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 90 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 91 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 92 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 93 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 94 * </ul> 95 */ WithScope(const Scope & value)96 inline ListWebACLsRequest& WithScope(const Scope& value) { SetScope(value); return *this;} 97 98 /** 99 * <p>Specifies whether this is for an Amazon CloudFront distribution or for a 100 * regional application. A regional application can be an Application Load Balancer 101 * (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. </p> <p>To 102 * work with CloudFront, you must also specify the Region US East (N. Virginia) as 103 * follows: </p> <ul> <li> <p>CLI - Specify the Region when you use the CloudFront 104 * scope: <code>--scope=CLOUDFRONT --region=us-east-1</code>. </p> </li> <li> 105 * <p>API and SDKs - For all calls, use the Region endpoint us-east-1. </p> </li> 106 * </ul> 107 */ WithScope(Scope && value)108 inline ListWebACLsRequest& WithScope(Scope&& value) { SetScope(std::move(value)); return *this;} 109 110 111 /** 112 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 113 * number of objects that are still available for retrieval exceeds the limit, WAF 114 * returns a <code>NextMarker</code> value in the response. To retrieve the next 115 * batch of objects, provide the marker from the prior call in your next 116 * request.</p> 117 */ GetNextMarker()118 inline const Aws::String& GetNextMarker() const{ return m_nextMarker; } 119 120 /** 121 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 122 * number of objects that are still available for retrieval exceeds the limit, WAF 123 * returns a <code>NextMarker</code> value in the response. To retrieve the next 124 * batch of objects, provide the marker from the prior call in your next 125 * request.</p> 126 */ NextMarkerHasBeenSet()127 inline bool NextMarkerHasBeenSet() const { return m_nextMarkerHasBeenSet; } 128 129 /** 130 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 131 * number of objects that are still available for retrieval exceeds the limit, WAF 132 * returns a <code>NextMarker</code> value in the response. To retrieve the next 133 * batch of objects, provide the marker from the prior call in your next 134 * request.</p> 135 */ SetNextMarker(const Aws::String & value)136 inline void SetNextMarker(const Aws::String& value) { m_nextMarkerHasBeenSet = true; m_nextMarker = value; } 137 138 /** 139 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 140 * number of objects that are still available for retrieval exceeds the limit, WAF 141 * returns a <code>NextMarker</code> value in the response. To retrieve the next 142 * batch of objects, provide the marker from the prior call in your next 143 * request.</p> 144 */ SetNextMarker(Aws::String && value)145 inline void SetNextMarker(Aws::String&& value) { m_nextMarkerHasBeenSet = true; m_nextMarker = std::move(value); } 146 147 /** 148 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 149 * number of objects that are still available for retrieval exceeds the limit, WAF 150 * returns a <code>NextMarker</code> value in the response. To retrieve the next 151 * batch of objects, provide the marker from the prior call in your next 152 * request.</p> 153 */ SetNextMarker(const char * value)154 inline void SetNextMarker(const char* value) { m_nextMarkerHasBeenSet = true; m_nextMarker.assign(value); } 155 156 /** 157 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 158 * number of objects that are still available for retrieval exceeds the limit, WAF 159 * returns a <code>NextMarker</code> value in the response. To retrieve the next 160 * batch of objects, provide the marker from the prior call in your next 161 * request.</p> 162 */ WithNextMarker(const Aws::String & value)163 inline ListWebACLsRequest& WithNextMarker(const Aws::String& value) { SetNextMarker(value); return *this;} 164 165 /** 166 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 167 * number of objects that are still available for retrieval exceeds the limit, WAF 168 * returns a <code>NextMarker</code> value in the response. To retrieve the next 169 * batch of objects, provide the marker from the prior call in your next 170 * request.</p> 171 */ WithNextMarker(Aws::String && value)172 inline ListWebACLsRequest& WithNextMarker(Aws::String&& value) { SetNextMarker(std::move(value)); return *this;} 173 174 /** 175 * <p>When you request a list of objects with a <code>Limit</code> setting, if the 176 * number of objects that are still available for retrieval exceeds the limit, WAF 177 * returns a <code>NextMarker</code> value in the response. To retrieve the next 178 * batch of objects, provide the marker from the prior call in your next 179 * request.</p> 180 */ WithNextMarker(const char * value)181 inline ListWebACLsRequest& WithNextMarker(const char* value) { SetNextMarker(value); return *this;} 182 183 184 /** 185 * <p>The maximum number of objects that you want WAF to return for this request. 186 * If more objects are available, in the response, WAF provides a 187 * <code>NextMarker</code> value that you can use in a subsequent call to get the 188 * next batch of objects.</p> 189 */ GetLimit()190 inline int GetLimit() const{ return m_limit; } 191 192 /** 193 * <p>The maximum number of objects that you want WAF to return for this request. 194 * If more objects are available, in the response, WAF provides a 195 * <code>NextMarker</code> value that you can use in a subsequent call to get the 196 * next batch of objects.</p> 197 */ LimitHasBeenSet()198 inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; } 199 200 /** 201 * <p>The maximum number of objects that you want WAF to return for this request. 202 * If more objects are available, in the response, WAF provides a 203 * <code>NextMarker</code> value that you can use in a subsequent call to get the 204 * next batch of objects.</p> 205 */ SetLimit(int value)206 inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; } 207 208 /** 209 * <p>The maximum number of objects that you want WAF to return for this request. 210 * If more objects are available, in the response, WAF provides a 211 * <code>NextMarker</code> value that you can use in a subsequent call to get the 212 * next batch of objects.</p> 213 */ WithLimit(int value)214 inline ListWebACLsRequest& WithLimit(int value) { SetLimit(value); return *this;} 215 216 private: 217 218 Scope m_scope; 219 bool m_scopeHasBeenSet; 220 221 Aws::String m_nextMarker; 222 bool m_nextMarkerHasBeenSet; 223 224 int m_limit; 225 bool m_limitHasBeenSet; 226 }; 227 228 } // namespace Model 229 } // namespace WAFV2 230 } // namespace Aws 231