-
Notifications
You must be signed in to change notification settings - Fork 602
/
api_op_RemoveTags.go
140 lines (116 loc) · 3.65 KB
/
api_op_RemoveTags.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
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package elasticloadbalancing
import (
"context"
"fmt"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/internal/awsutil"
)
// Contains the parameters for RemoveTags.
// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancing-2012-06-01/RemoveTagsInput
type RemoveTagsInput struct {
_ struct{} `type:"structure"`
// The name of the load balancer. You can specify a maximum of one load balancer
// name.
//
// LoadBalancerNames is a required field
LoadBalancerNames []string `type:"list" required:"true"`
// The list of tag keys to remove.
//
// Tags is a required field
Tags []TagKeyOnly `min:"1" type:"list" required:"true"`
}
// String returns the string representation
func (s RemoveTagsInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *RemoveTagsInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "RemoveTagsInput"}
if s.LoadBalancerNames == nil {
invalidParams.Add(aws.NewErrParamRequired("LoadBalancerNames"))
}
if s.Tags == nil {
invalidParams.Add(aws.NewErrParamRequired("Tags"))
}
if s.Tags != nil && len(s.Tags) < 1 {
invalidParams.Add(aws.NewErrParamMinLen("Tags", 1))
}
if s.Tags != nil {
for i, v := range s.Tags {
if err := v.Validate(); err != nil {
invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(aws.ErrInvalidParams))
}
}
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
// Contains the output of RemoveTags.
// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancing-2012-06-01/RemoveTagsOutput
type RemoveTagsOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s RemoveTagsOutput) String() string {
return awsutil.Prettify(s)
}
const opRemoveTags = "RemoveTags"
// RemoveTagsRequest returns a request value for making API operation for
// Elastic Load Balancing.
//
// Removes one or more tags from the specified load balancer.
//
// // Example sending a request using RemoveTagsRequest.
// req := client.RemoveTagsRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancing-2012-06-01/RemoveTags
func (c *Client) RemoveTagsRequest(input *RemoveTagsInput) RemoveTagsRequest {
op := &aws.Operation{
Name: opRemoveTags,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &RemoveTagsInput{}
}
req := c.newRequest(op, input, &RemoveTagsOutput{})
return RemoveTagsRequest{Request: req, Input: input, Copy: c.RemoveTagsRequest}
}
// RemoveTagsRequest is the request type for the
// RemoveTags API operation.
type RemoveTagsRequest struct {
*aws.Request
Input *RemoveTagsInput
Copy func(*RemoveTagsInput) RemoveTagsRequest
}
// Send marshals and sends the RemoveTags API request.
func (r RemoveTagsRequest) Send(ctx context.Context) (*RemoveTagsResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &RemoveTagsResponse{
RemoveTagsOutput: r.Request.Data.(*RemoveTagsOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// RemoveTagsResponse is the response type for the
// RemoveTags API operation.
type RemoveTagsResponse struct {
*RemoveTagsOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// RemoveTags request.
func (r *RemoveTagsResponse) SDKResponseMetdata() *aws.Response {
return r.response
}