-
Notifications
You must be signed in to change notification settings - Fork 271
/
set_load_balancer_udp_listener_attribute.go
150 lines (140 loc) · 9.42 KB
/
set_load_balancer_udp_listener_attribute.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
142
143
144
145
146
147
148
149
150
package slb
//Licensed under the Apache License, Version 2.0 (the "License");
//you may not use this file except in compliance with the License.
//You may obtain a copy of the License at
//
//http://www.apache.org/licenses/LICENSE-2.0
//
//Unless required by applicable law or agreed to in writing, software
//distributed under the License is distributed on an "AS IS" BASIS,
//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//See the License for the specific language governing permissions and
//limitations under the License.
//
// Code generated by Alibaba Cloud SDK Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
import (
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
)
// SetLoadBalancerUDPListenerAttribute invokes the slb.SetLoadBalancerUDPListenerAttribute API synchronously
func (client *Client) SetLoadBalancerUDPListenerAttribute(request *SetLoadBalancerUDPListenerAttributeRequest) (response *SetLoadBalancerUDPListenerAttributeResponse, err error) {
response = CreateSetLoadBalancerUDPListenerAttributeResponse()
err = client.DoAction(request, response)
return
}
// SetLoadBalancerUDPListenerAttributeWithChan invokes the slb.SetLoadBalancerUDPListenerAttribute API asynchronously
func (client *Client) SetLoadBalancerUDPListenerAttributeWithChan(request *SetLoadBalancerUDPListenerAttributeRequest) (<-chan *SetLoadBalancerUDPListenerAttributeResponse, <-chan error) {
responseChan := make(chan *SetLoadBalancerUDPListenerAttributeResponse, 1)
errChan := make(chan error, 1)
err := client.AddAsyncTask(func() {
defer close(responseChan)
defer close(errChan)
response, err := client.SetLoadBalancerUDPListenerAttribute(request)
if err != nil {
errChan <- err
} else {
responseChan <- response
}
})
if err != nil {
errChan <- err
close(responseChan)
close(errChan)
}
return responseChan, errChan
}
// SetLoadBalancerUDPListenerAttributeWithCallback invokes the slb.SetLoadBalancerUDPListenerAttribute API asynchronously
func (client *Client) SetLoadBalancerUDPListenerAttributeWithCallback(request *SetLoadBalancerUDPListenerAttributeRequest, callback func(response *SetLoadBalancerUDPListenerAttributeResponse, err error)) <-chan int {
result := make(chan int, 1)
err := client.AddAsyncTask(func() {
var response *SetLoadBalancerUDPListenerAttributeResponse
var err error
defer close(result)
response, err = client.SetLoadBalancerUDPListenerAttribute(request)
callback(response, err)
result <- 1
})
if err != nil {
defer close(result)
callback(nil, err)
result <- 0
}
return result
}
// SetLoadBalancerUDPListenerAttributeRequest is the request struct for api SetLoadBalancerUDPListenerAttribute
type SetLoadBalancerUDPListenerAttributeRequest struct {
*requests.RpcRequest
ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
HealthCheckURI string `position:"Query" name:"HealthCheckURI"`
AclStatus string `position:"Query" name:"AclStatus"`
FullNatEnabled requests.Boolean `position:"Query" name:"FullNatEnabled"`
AclType string `position:"Query" name:"AclType"`
MasterSlaveServerGroup string `position:"Query" name:"MasterSlaveServerGroup"`
FailoverStrategy string `position:"Query" name:"FailoverStrategy"`
PersistenceTimeout requests.Integer `position:"Query" name:"PersistenceTimeout"`
VpcIds string `position:"Query" name:"VpcIds"`
MasterSlaveModeEnabled requests.Boolean `position:"Query" name:"MasterSlaveModeEnabled"`
VServerGroupId string `position:"Query" name:"VServerGroupId"`
AclId string `position:"Query" name:"AclId"`
PortRange *[]SetLoadBalancerUDPListenerAttributePortRange `position:"Query" name:"PortRange" type:"Repeated"`
HealthCheckMethod string `position:"Query" name:"HealthCheckMethod"`
HealthCheckDomain string `position:"Query" name:"HealthCheckDomain"`
OwnerId requests.Integer `position:"Query" name:"OwnerId"`
ProxyProtocolVpcIdEnabled requests.Boolean `position:"Query" name:"ProxyProtocolVpcIdEnabled"`
Tags string `position:"Query" name:"Tags"`
LoadBalancerId string `position:"Query" name:"LoadBalancerId"`
MasterSlaveServerGroupId string `position:"Query" name:"MasterSlaveServerGroupId"`
HealthCheckReq string `position:"Query" name:"healthCheckReq"`
HealthCheckInterval requests.Integer `position:"Query" name:"HealthCheckInterval"`
HealthCheckExp string `position:"Query" name:"healthCheckExp"`
FailoverThreshold requests.Integer `position:"Query" name:"FailoverThreshold"`
ProxyProtocolV2Enabled requests.Boolean `position:"Query" name:"ProxyProtocolV2Enabled"`
ConnectionDrain string `position:"Query" name:"ConnectionDrain"`
HealthCheckSwitch string `position:"Query" name:"HealthCheckSwitch"`
AccessKeyId string `position:"Query" name:"access_key_id"`
HealthCheckConnectTimeout requests.Integer `position:"Query" name:"HealthCheckConnectTimeout"`
SlaveServerGroupId string `position:"Query" name:"SlaveServerGroupId"`
QuicVersion string `position:"Query" name:"QuicVersion"`
Description string `position:"Query" name:"Description"`
UnhealthyThreshold requests.Integer `position:"Query" name:"UnhealthyThreshold"`
HealthyThreshold requests.Integer `position:"Query" name:"HealthyThreshold"`
Scheduler string `position:"Query" name:"Scheduler"`
MaxConnection requests.Integer `position:"Query" name:"MaxConnection"`
MasterServerGroupId string `position:"Query" name:"MasterServerGroupId"`
ListenerPort requests.Integer `position:"Query" name:"ListenerPort"`
HealthCheckType string `position:"Query" name:"HealthCheckType"`
ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
Bandwidth requests.Integer `position:"Query" name:"Bandwidth"`
OwnerAccount string `position:"Query" name:"OwnerAccount"`
ConnectionDrainTimeout requests.Integer `position:"Query" name:"ConnectionDrainTimeout"`
HealthCheckConnectPort requests.Integer `position:"Query" name:"HealthCheckConnectPort"`
HealthCheckHttpCode string `position:"Query" name:"HealthCheckHttpCode"`
VServerGroup string `position:"Query" name:"VServerGroup"`
}
// SetLoadBalancerUDPListenerAttributePortRange is a repeated param struct in SetLoadBalancerUDPListenerAttributeRequest
type SetLoadBalancerUDPListenerAttributePortRange struct {
StartPort string `name:"StartPort"`
EndPort string `name:"EndPort"`
}
// SetLoadBalancerUDPListenerAttributeResponse is the response struct for api SetLoadBalancerUDPListenerAttribute
type SetLoadBalancerUDPListenerAttributeResponse struct {
*responses.BaseResponse
RequestId string `json:"RequestId" xml:"RequestId"`
}
// CreateSetLoadBalancerUDPListenerAttributeRequest creates a request to invoke SetLoadBalancerUDPListenerAttribute API
func CreateSetLoadBalancerUDPListenerAttributeRequest() (request *SetLoadBalancerUDPListenerAttributeRequest) {
request = &SetLoadBalancerUDPListenerAttributeRequest{
RpcRequest: &requests.RpcRequest{},
}
request.InitWithApiInfo("Slb", "2014-05-15", "SetLoadBalancerUDPListenerAttribute", "slb", "openAPI")
request.Method = requests.POST
return
}
// CreateSetLoadBalancerUDPListenerAttributeResponse creates a response to parse from SetLoadBalancerUDPListenerAttribute response
func CreateSetLoadBalancerUDPListenerAttributeResponse() (response *SetLoadBalancerUDPListenerAttributeResponse) {
response = &SetLoadBalancerUDPListenerAttributeResponse{
BaseResponse: &responses.BaseResponse{},
}
return
}