/
DescribeEdgeIpProviders.go
150 lines (131 loc) · 6.15 KB
/
DescribeEdgeIpProviders.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
// Copyright 2018 JDCLOUD.COM
//
// 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.
//
// NOTE: This class is auto generated by the jdcloud code generator program.
package apis
import (
"github.com/jdcloud-api/jdcloud-sdk-go/core"
vpc "github.com/jdcloud-api/jdcloud-sdk-go/services/vpc/models"
common "github.com/jdcloud-api/jdcloud-sdk-go/services/common/models"
)
type DescribeEdgeIpProvidersRequest struct {
core.JDCloudRequest
/* Region ID */
RegionId string `json:"regionId"`
/* 页码, 默认为1, 取值范围:[1,∞), 页码超过总页数时, 显示最后一页 (Optional) */
PageNumber *int `json:"pageNumber"`
/* 分页大小,默认为20,取值范围:[10,100] (Optional) */
PageSize *int `json:"pageSize"`
/* providers - 边缘公网IP的线路,命名规则:[线路接入区].[资源关联范围].[服务类型],示例如cn-n1-jinan1.ez.bgp,支持多个
pointsOfAccess - 边缘公网IP的线路接入区,提供线路接入区具体位置信息,支持多个
associationScope - 边缘公网IP的资源关联范围,取值ez(边缘可用区)和az(中心可用区,暂不支持),支持单个
serviceTypes - 边缘公网IP的服务类型,取值:bgp(动态),unicom(联通),telecom(电信),mobile(移动),支持多个
azs - 边缘公网IP的可用区,分为全可用区(暂不支持)和边缘可用区ID(同线路接入区]),示例如cn-n1-sqxx1,支持多个
(Optional) */
Filters []common.Filter `json:"filters"`
}
/*
* param regionId: Region ID (Required)
*
* @Deprecated, not compatible when mandatory parameters changed
*/
func NewDescribeEdgeIpProvidersRequest(
regionId string,
) *DescribeEdgeIpProvidersRequest {
return &DescribeEdgeIpProvidersRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/edgeIpProviders/",
Method: "GET",
Header: nil,
Version: "v1",
},
RegionId: regionId,
}
}
/*
* param regionId: Region ID (Required)
* param pageNumber: 页码, 默认为1, 取值范围:[1,∞), 页码超过总页数时, 显示最后一页 (Optional)
* param pageSize: 分页大小,默认为20,取值范围:[10,100] (Optional)
* param filters: providers - 边缘公网IP的线路,命名规则:[线路接入区].[资源关联范围].[服务类型],示例如cn-n1-jinan1.ez.bgp,支持多个
pointsOfAccess - 边缘公网IP的线路接入区,提供线路接入区具体位置信息,支持多个
associationScope - 边缘公网IP的资源关联范围,取值ez(边缘可用区)和az(中心可用区,暂不支持),支持单个
serviceTypes - 边缘公网IP的服务类型,取值:bgp(动态),unicom(联通),telecom(电信),mobile(移动),支持多个
azs - 边缘公网IP的可用区,分为全可用区(暂不支持)和边缘可用区ID(同线路接入区]),示例如cn-n1-sqxx1,支持多个
(Optional)
*/
func NewDescribeEdgeIpProvidersRequestWithAllParams(
regionId string,
pageNumber *int,
pageSize *int,
filters []common.Filter,
) *DescribeEdgeIpProvidersRequest {
return &DescribeEdgeIpProvidersRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/edgeIpProviders/",
Method: "GET",
Header: nil,
Version: "v1",
},
RegionId: regionId,
PageNumber: pageNumber,
PageSize: pageSize,
Filters: filters,
}
}
/* This constructor has better compatible ability when API parameters changed */
func NewDescribeEdgeIpProvidersRequestWithoutParam() *DescribeEdgeIpProvidersRequest {
return &DescribeEdgeIpProvidersRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/edgeIpProviders/",
Method: "GET",
Header: nil,
Version: "v1",
},
}
}
/* param regionId: Region ID(Required) */
func (r *DescribeEdgeIpProvidersRequest) SetRegionId(regionId string) {
r.RegionId = regionId
}
/* param pageNumber: 页码, 默认为1, 取值范围:[1,∞), 页码超过总页数时, 显示最后一页(Optional) */
func (r *DescribeEdgeIpProvidersRequest) SetPageNumber(pageNumber int) {
r.PageNumber = &pageNumber
}
/* param pageSize: 分页大小,默认为20,取值范围:[10,100](Optional) */
func (r *DescribeEdgeIpProvidersRequest) SetPageSize(pageSize int) {
r.PageSize = &pageSize
}
/* param filters: providers - 边缘公网IP的线路,命名规则:[线路接入区].[资源关联范围].[服务类型],示例如cn-n1-jinan1.ez.bgp,支持多个
pointsOfAccess - 边缘公网IP的线路接入区,提供线路接入区具体位置信息,支持多个
associationScope - 边缘公网IP的资源关联范围,取值ez(边缘可用区)和az(中心可用区,暂不支持),支持单个
serviceTypes - 边缘公网IP的服务类型,取值:bgp(动态),unicom(联通),telecom(电信),mobile(移动),支持多个
azs - 边缘公网IP的可用区,分为全可用区(暂不支持)和边缘可用区ID(同线路接入区]),示例如cn-n1-sqxx1,支持多个
(Optional) */
func (r *DescribeEdgeIpProvidersRequest) SetFilters(filters []common.Filter) {
r.Filters = filters
}
// GetRegionId returns path parameter 'regionId' if exist,
// otherwise return empty string
func (r DescribeEdgeIpProvidersRequest) GetRegionId() string {
return r.RegionId
}
type DescribeEdgeIpProvidersResponse struct {
RequestID string `json:"requestId"`
Error core.ErrorResponse `json:"error"`
Result DescribeEdgeIpProvidersResult `json:"result"`
}
type DescribeEdgeIpProvidersResult struct {
EdgeIpProviders []vpc.EdgeIpProvider `json:"edgeIpProviders"`
TotalCount int `json:"totalCount"`
}