-
Notifications
You must be signed in to change notification settings - Fork 623
/
api_op_AddTagsToResource.go
133 lines (109 loc) · 3.87 KB
/
api_op_AddTagsToResource.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
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package docdb
import (
"context"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/internal/awsutil"
"github.com/aws/aws-sdk-go-v2/private/protocol"
"github.com/aws/aws-sdk-go-v2/private/protocol/query"
)
// Represents the input to AddTagsToResource.
type AddTagsToResourceInput struct {
_ struct{} `type:"structure"`
// The Amazon DocumentDB resource that the tags are added to. This value is
// an Amazon Resource Name (ARN).
//
// ResourceName is a required field
ResourceName *string `type:"string" required:"true"`
// The tags to be assigned to the Amazon DocumentDB resource.
//
// Tags is a required field
Tags []Tag `locationNameList:"Tag" type:"list" required:"true"`
}
// String returns the string representation
func (s AddTagsToResourceInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *AddTagsToResourceInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "AddTagsToResourceInput"}
if s.ResourceName == nil {
invalidParams.Add(aws.NewErrParamRequired("ResourceName"))
}
if s.Tags == nil {
invalidParams.Add(aws.NewErrParamRequired("Tags"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
type AddTagsToResourceOutput struct {
_ struct{} `type:"structure"`
}
// String returns the string representation
func (s AddTagsToResourceOutput) String() string {
return awsutil.Prettify(s)
}
const opAddTagsToResource = "AddTagsToResource"
// AddTagsToResourceRequest returns a request value for making API operation for
// Amazon DocumentDB with MongoDB compatibility.
//
// Adds metadata tags to an Amazon DocumentDB resource. You can use these tags
// with cost allocation reporting to track costs that are associated with Amazon
// DocumentDB resources. or in a Condition statement in an AWS Identity and
// Access Management (IAM) policy for Amazon DocumentDB.
//
// // Example sending a request using AddTagsToResourceRequest.
// req := client.AddTagsToResourceRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/AddTagsToResource
func (c *Client) AddTagsToResourceRequest(input *AddTagsToResourceInput) AddTagsToResourceRequest {
op := &aws.Operation{
Name: opAddTagsToResource,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &AddTagsToResourceInput{}
}
req := c.newRequest(op, input, &AddTagsToResourceOutput{})
req.Handlers.Unmarshal.Remove(query.UnmarshalHandler)
req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler)
return AddTagsToResourceRequest{Request: req, Input: input, Copy: c.AddTagsToResourceRequest}
}
// AddTagsToResourceRequest is the request type for the
// AddTagsToResource API operation.
type AddTagsToResourceRequest struct {
*aws.Request
Input *AddTagsToResourceInput
Copy func(*AddTagsToResourceInput) AddTagsToResourceRequest
}
// Send marshals and sends the AddTagsToResource API request.
func (r AddTagsToResourceRequest) Send(ctx context.Context) (*AddTagsToResourceResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &AddTagsToResourceResponse{
AddTagsToResourceOutput: r.Request.Data.(*AddTagsToResourceOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// AddTagsToResourceResponse is the response type for the
// AddTagsToResource API operation.
type AddTagsToResourceResponse struct {
*AddTagsToResourceOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// AddTagsToResource request.
func (r *AddTagsToResourceResponse) SDKResponseMetdata() *aws.Response {
return r.response
}