DescribeQuotas.go 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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. vm "github.com/jdcloud-api/jdcloud-sdk-go/services/vm/models"
  20. common "github.com/jdcloud-api/jdcloud-sdk-go/services/common/models"
  21. )
  22. type DescribeQuotasRequest struct {
  23. core.JDCloudRequest
  24. /* 地域ID */
  25. RegionId string `json:"regionId"`
  26. /* resourceTypes - 资源类型,支持多个[instance,keypair,image,instanceTemplate,imageShare]
  27. (Optional) */
  28. Filters []common.Filter `json:"filters"`
  29. /* 私有镜像Id,查询镜像共享(imageShare)配额时,此参数必传 (Optional) */
  30. ImageId *string `json:"imageId"`
  31. }
  32. /*
  33. * param regionId: 地域ID (Required)
  34. *
  35. * @Deprecated, not compatible when mandatory parameters changed
  36. */
  37. func NewDescribeQuotasRequest(
  38. regionId string,
  39. ) *DescribeQuotasRequest {
  40. return &DescribeQuotasRequest{
  41. JDCloudRequest: core.JDCloudRequest{
  42. URL: "/regions/{regionId}/quotas",
  43. Method: "GET",
  44. Header: nil,
  45. Version: "v1",
  46. },
  47. RegionId: regionId,
  48. }
  49. }
  50. /*
  51. * param regionId: 地域ID (Required)
  52. * param filters: resourceTypes - 资源类型,支持多个[instance,keypair,image,instanceTemplate,imageShare]
  53. (Optional)
  54. * param imageId: 私有镜像Id,查询镜像共享(imageShare)配额时,此参数必传 (Optional)
  55. */
  56. func NewDescribeQuotasRequestWithAllParams(
  57. regionId string,
  58. filters []common.Filter,
  59. imageId *string,
  60. ) *DescribeQuotasRequest {
  61. return &DescribeQuotasRequest{
  62. JDCloudRequest: core.JDCloudRequest{
  63. URL: "/regions/{regionId}/quotas",
  64. Method: "GET",
  65. Header: nil,
  66. Version: "v1",
  67. },
  68. RegionId: regionId,
  69. Filters: filters,
  70. ImageId: imageId,
  71. }
  72. }
  73. /* This constructor has better compatible ability when API parameters changed */
  74. func NewDescribeQuotasRequestWithoutParam() *DescribeQuotasRequest {
  75. return &DescribeQuotasRequest{
  76. JDCloudRequest: core.JDCloudRequest{
  77. URL: "/regions/{regionId}/quotas",
  78. Method: "GET",
  79. Header: nil,
  80. Version: "v1",
  81. },
  82. }
  83. }
  84. /* param regionId: 地域ID(Required) */
  85. func (r *DescribeQuotasRequest) SetRegionId(regionId string) {
  86. r.RegionId = regionId
  87. }
  88. /* param filters: resourceTypes - 资源类型,支持多个[instance,keypair,image,instanceTemplate,imageShare]
  89. (Optional) */
  90. func (r *DescribeQuotasRequest) SetFilters(filters []common.Filter) {
  91. r.Filters = filters
  92. }
  93. /* param imageId: 私有镜像Id,查询镜像共享(imageShare)配额时,此参数必传(Optional) */
  94. func (r *DescribeQuotasRequest) SetImageId(imageId string) {
  95. r.ImageId = &imageId
  96. }
  97. // GetRegionId returns path parameter 'regionId' if exist,
  98. // otherwise return empty string
  99. func (r DescribeQuotasRequest) GetRegionId() string {
  100. return r.RegionId
  101. }
  102. type DescribeQuotasResponse struct {
  103. RequestID string `json:"requestId"`
  104. Error core.ErrorResponse `json:"error"`
  105. Result DescribeQuotasResult `json:"result"`
  106. }
  107. type DescribeQuotasResult struct {
  108. Quotas []vm.Quota `json:"quotas"`
  109. }