/
api_op_DeleteHsm.go
133 lines (106 loc) · 3.4 KB
/
api_op_DeleteHsm.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 cloudhsmv2
import (
"context"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/aws/aws-sdk-go-v2/internal/awsutil"
)
type DeleteHsmInput struct {
_ struct{} `type:"structure"`
// The identifier (ID) of the cluster that contains the HSM that you are deleting.
//
// ClusterId is a required field
ClusterId *string `type:"string" required:"true"`
// The identifier (ID) of the elastic network interface (ENI) of the HSM that
// you are deleting.
EniId *string `type:"string"`
// The IP address of the elastic network interface (ENI) of the HSM that you
// are deleting.
EniIp *string `type:"string"`
// The identifier (ID) of the HSM that you are deleting.
HsmId *string `type:"string"`
}
// String returns the string representation
func (s DeleteHsmInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *DeleteHsmInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "DeleteHsmInput"}
if s.ClusterId == nil {
invalidParams.Add(aws.NewErrParamRequired("ClusterId"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
type DeleteHsmOutput struct {
_ struct{} `type:"structure"`
// The identifier (ID) of the HSM that was deleted.
HsmId *string `type:"string"`
}
// String returns the string representation
func (s DeleteHsmOutput) String() string {
return awsutil.Prettify(s)
}
const opDeleteHsm = "DeleteHsm"
// DeleteHsmRequest returns a request value for making API operation for
// AWS CloudHSM V2.
//
// Deletes the specified HSM. To specify an HSM, you can use its identifier
// (ID), the IP address of the HSM's elastic network interface (ENI), or the
// ID of the HSM's ENI. You need to specify only one of these values. To find
// these values, use DescribeClusters.
//
// // Example sending a request using DeleteHsmRequest.
// req := client.DeleteHsmRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/cloudhsmv2-2017-04-28/DeleteHsm
func (c *Client) DeleteHsmRequest(input *DeleteHsmInput) DeleteHsmRequest {
op := &aws.Operation{
Name: opDeleteHsm,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &DeleteHsmInput{}
}
req := c.newRequest(op, input, &DeleteHsmOutput{})
return DeleteHsmRequest{Request: req, Input: input, Copy: c.DeleteHsmRequest}
}
// DeleteHsmRequest is the request type for the
// DeleteHsm API operation.
type DeleteHsmRequest struct {
*aws.Request
Input *DeleteHsmInput
Copy func(*DeleteHsmInput) DeleteHsmRequest
}
// Send marshals and sends the DeleteHsm API request.
func (r DeleteHsmRequest) Send(ctx context.Context) (*DeleteHsmResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &DeleteHsmResponse{
DeleteHsmOutput: r.Request.Data.(*DeleteHsmOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// DeleteHsmResponse is the response type for the
// DeleteHsm API operation.
type DeleteHsmResponse struct {
*DeleteHsmOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// DeleteHsm request.
func (r *DeleteHsmResponse) SDKResponseMetdata() *aws.Response {
return r.response
}