/
api_op_ListRateBasedRules.go
141 lines (116 loc) · 4.48 KB
/
api_op_ListRateBasedRules.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package waf
import (
"context"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/internal/awsutil"
)
type ListRateBasedRulesInput struct {
_ struct{} `type:"structure"`
// Specifies the number of Rules that you want AWS WAF to return for this request.
// If you have more Rules than the number that you specify for Limit, the response
// includes a NextMarker value that you can use to get another batch of Rules.
Limit *int64 `type:"integer"`
// If you specify a value for Limit and you have more Rules than the value of
// Limit, AWS WAF returns a NextMarker value in the response that allows you
// to list another group of Rules. For the second and subsequent ListRateBasedRules
// requests, specify the value of NextMarker from the previous response to get
// information about another batch of Rules.
NextMarker *string `min:"1" type:"string"`
}
// String returns the string representation
func (s ListRateBasedRulesInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *ListRateBasedRulesInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "ListRateBasedRulesInput"}
if s.NextMarker != nil && len(*s.NextMarker) < 1 {
invalidParams.Add(aws.NewErrParamMinLen("NextMarker", 1))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
type ListRateBasedRulesOutput struct {
_ struct{} `type:"structure"`
// If you have more Rules than the number that you specified for Limit in the
// request, the response includes a NextMarker value. To list more Rules, submit
// another ListRateBasedRules request, and specify the NextMarker value from
// the response in the NextMarker value in the next request.
NextMarker *string `min:"1" type:"string"`
// An array of RuleSummary objects.
Rules []RuleSummary `type:"list"`
}
// String returns the string representation
func (s ListRateBasedRulesOutput) String() string {
return awsutil.Prettify(s)
}
const opListRateBasedRules = "ListRateBasedRules"
// ListRateBasedRulesRequest returns a request value for making API operation for
// AWS WAF.
//
//
// This is AWS WAF Classic documentation. For more information, see AWS WAF
// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html)
// in the developer guide.
//
// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS
// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
// With the latest version, AWS WAF has a single set of endpoints for regional
// and global use.
//
// Returns an array of RuleSummary objects.
//
// // Example sending a request using ListRateBasedRulesRequest.
// req := client.ListRateBasedRulesRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRateBasedRules
func (c *Client) ListRateBasedRulesRequest(input *ListRateBasedRulesInput) ListRateBasedRulesRequest {
op := &aws.Operation{
Name: opListRateBasedRules,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &ListRateBasedRulesInput{}
}
req := c.newRequest(op, input, &ListRateBasedRulesOutput{})
return ListRateBasedRulesRequest{Request: req, Input: input, Copy: c.ListRateBasedRulesRequest}
}
// ListRateBasedRulesRequest is the request type for the
// ListRateBasedRules API operation.
type ListRateBasedRulesRequest struct {
*aws.Request
Input *ListRateBasedRulesInput
Copy func(*ListRateBasedRulesInput) ListRateBasedRulesRequest
}
// Send marshals and sends the ListRateBasedRules API request.
func (r ListRateBasedRulesRequest) Send(ctx context.Context) (*ListRateBasedRulesResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &ListRateBasedRulesResponse{
ListRateBasedRulesOutput: r.Request.Data.(*ListRateBasedRulesOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// ListRateBasedRulesResponse is the response type for the
// ListRateBasedRules API operation.
type ListRateBasedRulesResponse struct {
*ListRateBasedRulesOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// ListRateBasedRules request.
func (r *ListRateBasedRulesResponse) SDKResponseMetdata() *aws.Response {
return r.response
}