DescribeInstances.go 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. // Copyright 2018 JDCLOUD.COM
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. //
  15. // NOTE: This class is auto generated by the jdcloud code generator program.
  16. package apis
  17. import (
  18. "github.com/jdcloud-api/jdcloud-sdk-go/core"
  19. rds "github.com/jdcloud-api/jdcloud-sdk-go/services/rds/models"
  20. common "github.com/jdcloud-api/jdcloud-sdk-go/services/common/models"
  21. )
  22. type DescribeInstancesRequest struct {
  23. core.JDCloudRequest
  24. /* 地域代码,取值范围参见[《各地域及可用区对照表》](../Enum-Definitions/Regions-AZ.md) */
  25. RegionId string `json:"regionId"`
  26. /* 显示数据的页码,默认为1,取值范围:[-1,∞)。pageNumber为-1时,返回所有数据页码;超过总页数时,显示最后一页; (Optional) */
  27. PageNumber *int `json:"pageNumber"`
  28. /* 每页显示的数据条数,默认为10,取值范围:[10,100],且为10的整数倍 (Optional) */
  29. PageSize *int `json:"pageSize"`
  30. /* 过滤参数,多个过滤参数之间的关系为“与”(and)
  31. 支持以下属性的过滤:
  32. instanceId, 支持operator选项:eq
  33. instanceName, 支持operator选项:eq, like
  34. engine, 支持operator选项:eq
  35. engineVersion, 支持operator选项:eq
  36. instanceStatus, 支持operator选项:eq
  37. vpcId, 支持operator选项:eq
  38. instanceType, 支持operator选项:eq
  39. internalDomainName, 支持operator选项:eq
  40. publicDomainName, 支持operator选项:eq
  41. (Optional) */
  42. Filters []common.Filter `json:"filters"`
  43. /* 资源标签 (Optional) */
  44. TagFilters []common.TagFilter `json:"tagFilters"`
  45. }
  46. /*
  47. * param regionId: 地域代码,取值范围参见[《各地域及可用区对照表》](../Enum-Definitions/Regions-AZ.md) (Required)
  48. *
  49. * @Deprecated, not compatible when mandatory parameters changed
  50. */
  51. func NewDescribeInstancesRequest(
  52. regionId string,
  53. ) *DescribeInstancesRequest {
  54. return &DescribeInstancesRequest{
  55. JDCloudRequest: core.JDCloudRequest{
  56. URL: "/regions/{regionId}/instances",
  57. Method: "GET",
  58. Header: nil,
  59. Version: "v1",
  60. },
  61. RegionId: regionId,
  62. }
  63. }
  64. /*
  65. * param regionId: 地域代码,取值范围参见[《各地域及可用区对照表》](../Enum-Definitions/Regions-AZ.md) (Required)
  66. * param pageNumber: 显示数据的页码,默认为1,取值范围:[-1,∞)。pageNumber为-1时,返回所有数据页码;超过总页数时,显示最后一页; (Optional)
  67. * param pageSize: 每页显示的数据条数,默认为10,取值范围:[10,100],且为10的整数倍 (Optional)
  68. * param filters: 过滤参数,多个过滤参数之间的关系为“与”(and)
  69. 支持以下属性的过滤:
  70. instanceId, 支持operator选项:eq
  71. instanceName, 支持operator选项:eq, like
  72. engine, 支持operator选项:eq
  73. engineVersion, 支持operator选项:eq
  74. instanceStatus, 支持operator选项:eq
  75. vpcId, 支持operator选项:eq
  76. instanceType, 支持operator选项:eq
  77. internalDomainName, 支持operator选项:eq
  78. publicDomainName, 支持operator选项:eq
  79. (Optional)
  80. * param tagFilters: 资源标签 (Optional)
  81. */
  82. func NewDescribeInstancesRequestWithAllParams(
  83. regionId string,
  84. pageNumber *int,
  85. pageSize *int,
  86. filters []common.Filter,
  87. tagFilters []common.TagFilter,
  88. ) *DescribeInstancesRequest {
  89. return &DescribeInstancesRequest{
  90. JDCloudRequest: core.JDCloudRequest{
  91. URL: "/regions/{regionId}/instances",
  92. Method: "GET",
  93. Header: nil,
  94. Version: "v1",
  95. },
  96. RegionId: regionId,
  97. PageNumber: pageNumber,
  98. PageSize: pageSize,
  99. Filters: filters,
  100. TagFilters: tagFilters,
  101. }
  102. }
  103. /* This constructor has better compatible ability when API parameters changed */
  104. func NewDescribeInstancesRequestWithoutParam() *DescribeInstancesRequest {
  105. return &DescribeInstancesRequest{
  106. JDCloudRequest: core.JDCloudRequest{
  107. URL: "/regions/{regionId}/instances",
  108. Method: "GET",
  109. Header: nil,
  110. Version: "v1",
  111. },
  112. }
  113. }
  114. /* param regionId: 地域代码,取值范围参见[《各地域及可用区对照表》](../Enum-Definitions/Regions-AZ.md)(Required) */
  115. func (r *DescribeInstancesRequest) SetRegionId(regionId string) {
  116. r.RegionId = regionId
  117. }
  118. /* param pageNumber: 显示数据的页码,默认为1,取值范围:[-1,∞)。pageNumber为-1时,返回所有数据页码;超过总页数时,显示最后一页;(Optional) */
  119. func (r *DescribeInstancesRequest) SetPageNumber(pageNumber int) {
  120. r.PageNumber = &pageNumber
  121. }
  122. /* param pageSize: 每页显示的数据条数,默认为10,取值范围:[10,100],且为10的整数倍(Optional) */
  123. func (r *DescribeInstancesRequest) SetPageSize(pageSize int) {
  124. r.PageSize = &pageSize
  125. }
  126. /* param filters: 过滤参数,多个过滤参数之间的关系为“与”(and)
  127. 支持以下属性的过滤:
  128. instanceId, 支持operator选项:eq
  129. instanceName, 支持operator选项:eq, like
  130. engine, 支持operator选项:eq
  131. engineVersion, 支持operator选项:eq
  132. instanceStatus, 支持operator选项:eq
  133. vpcId, 支持operator选项:eq
  134. instanceType, 支持operator选项:eq
  135. internalDomainName, 支持operator选项:eq
  136. publicDomainName, 支持operator选项:eq
  137. (Optional) */
  138. func (r *DescribeInstancesRequest) SetFilters(filters []common.Filter) {
  139. r.Filters = filters
  140. }
  141. /* param tagFilters: 资源标签(Optional) */
  142. func (r *DescribeInstancesRequest) SetTagFilters(tagFilters []common.TagFilter) {
  143. r.TagFilters = tagFilters
  144. }
  145. // GetRegionId returns path parameter 'regionId' if exist,
  146. // otherwise return empty string
  147. func (r DescribeInstancesRequest) GetRegionId() string {
  148. return r.RegionId
  149. }
  150. type DescribeInstancesResponse struct {
  151. RequestID string `json:"requestId"`
  152. Error core.ErrorResponse `json:"error"`
  153. Result DescribeInstancesResult `json:"result"`
  154. }
  155. type DescribeInstancesResult struct {
  156. DbInstances []rds.DBInstance `json:"dbInstances"`
  157. TotalCount int `json:"totalCount"`
  158. }