/
api_op_RegisterService.go
138 lines (107 loc) · 3.69 KB
/
api_op_RegisterService.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
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package euserv
import (
"context"
"github.com/aws/aws-sdk-go-v2/aws"
"github.com/sjones4/eucalyptus-sdk-go/internal/awsutil"
)
type RegisterServiceInput struct {
_ struct{} `type:"structure"`
// Host is a required field
Host *string `locationName:"Host" type:"string" required:"true"`
// Name is a required field
Name *string `locationName:"Name" type:"string" required:"true"`
Partition *string `locationName:"Partition" type:"string"`
// Port is a required field
Port *int64 `locationName:"Port" type:"integer" required:"true"`
// Type is a required field
Type *string `locationName:"Type" type:"string" required:"true"`
}
// String returns the string representation
func (s RegisterServiceInput) String() string {
return awsutil.Prettify(s)
}
// Validate inspects the fields of the type to determine if they are valid.
func (s *RegisterServiceInput) Validate() error {
invalidParams := aws.ErrInvalidParams{Context: "RegisterServiceInput"}
if s.Host == nil {
invalidParams.Add(aws.NewErrParamRequired("Host"))
}
if s.Name == nil {
invalidParams.Add(aws.NewErrParamRequired("Name"))
}
if s.Port == nil {
invalidParams.Add(aws.NewErrParamRequired("Port"))
}
if s.Type == nil {
invalidParams.Add(aws.NewErrParamRequired("Type"))
}
if invalidParams.Len() > 0 {
return invalidParams
}
return nil
}
type RegisterServiceOutput struct {
_ struct{} `locationName:"RegisterServiceResponseType" type:"structure"`
RegisteredServices []ServiceId `locationName:"registeredServices" locationNameList:"item" type:"list"`
RegistrationMetadata *RegistrationMetadata `locationName:"ServiceRegistrationMessage" type:"structure"`
}
// String returns the string representation
func (s RegisterServiceOutput) String() string {
return awsutil.Prettify(s)
}
const opRegisterService = "RegisterService"
// RegisterServiceRequest returns a request value for making API operation for
// Eucalyptus Cloud Service Management Service.
//
// // Example sending a request using RegisterServiceRequest.
// req := client.RegisterServiceRequest(params)
// resp, err := req.Send(context.TODO())
// if err == nil {
// fmt.Println(resp)
// }
//
// Please also see https://docs.aws.amazon.com/goto/WebAPI/euserv-2010-01-01/RegisterService
func (c *Client) RegisterServiceRequest(input *RegisterServiceInput) RegisterServiceRequest {
op := &aws.Operation{
Name: opRegisterService,
HTTPMethod: "POST",
HTTPPath: "/",
}
if input == nil {
input = &RegisterServiceInput{}
}
req := c.newRequest(op, input, &RegisterServiceOutput{})
return RegisterServiceRequest{Request: req, Input: input, Copy: c.RegisterServiceRequest}
}
// RegisterServiceRequest is the request type for the
// RegisterService API operation.
type RegisterServiceRequest struct {
*aws.Request
Input *RegisterServiceInput
Copy func(*RegisterServiceInput) RegisterServiceRequest
}
// Send marshals and sends the RegisterService API request.
func (r RegisterServiceRequest) Send(ctx context.Context) (*RegisterServiceResponse, error) {
r.Request.SetContext(ctx)
err := r.Request.Send()
if err != nil {
return nil, err
}
resp := &RegisterServiceResponse{
RegisterServiceOutput: r.Request.Data.(*RegisterServiceOutput),
response: &aws.Response{Request: r.Request},
}
return resp, nil
}
// RegisterServiceResponse is the response type for the
// RegisterService API operation.
type RegisterServiceResponse struct {
*RegisterServiceOutput
response *aws.Response
}
// SDKResponseMetdata returns the response metadata for the
// RegisterService request.
func (r *RegisterServiceResponse) SDKResponseMetdata() *aws.Response {
return r.response
}