google-cloud-compute-v1 0.2.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (257) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/AUTHENTICATION.md +19 -37
  4. data/README.md +4 -30
  5. data/lib/google/cloud/compute/v1/accelerator_types/rest/client.rb +127 -90
  6. data/lib/google/cloud/compute/v1/accelerator_types/rest/service_stub.rb +188 -0
  7. data/lib/google/cloud/compute/v1/accelerator_types/rest.rb +0 -2
  8. data/lib/google/cloud/compute/v1/addresses/rest/client.rb +172 -130
  9. data/lib/google/cloud/compute/v1/addresses/rest/service_stub.rb +279 -0
  10. data/lib/google/cloud/compute/v1/addresses/rest.rb +0 -2
  11. data/lib/google/cloud/compute/v1/autoscalers/rest/client.rb +218 -172
  12. data/lib/google/cloud/compute/v1/autoscalers/rest/service_stub.rb +373 -0
  13. data/lib/google/cloud/compute/v1/autoscalers/rest.rb +0 -2
  14. data/lib/google/cloud/compute/v1/backend_buckets/rest/client.rb +236 -185
  15. data/lib/google/cloud/compute/v1/backend_buckets/rest/service_stub.rb +413 -0
  16. data/lib/google/cloud/compute/v1/backend_buckets/rest.rb +0 -2
  17. data/lib/google/cloud/compute/v1/backend_services/rest/client.rb +308 -253
  18. data/lib/google/cloud/compute/v1/backend_services/rest/service_stub.rb +553 -0
  19. data/lib/google/cloud/compute/v1/backend_services/rest.rb +0 -2
  20. data/lib/google/cloud/compute/v1/compute_pb.rb +8507 -7466
  21. data/lib/google/cloud/compute/v1/disk_types/rest/client.rb +127 -90
  22. data/lib/google/cloud/compute/v1/disk_types/rest/service_stub.rb +188 -0
  23. data/lib/google/cloud/compute/v1/disk_types/rest.rb +0 -2
  24. data/lib/google/cloud/compute/v1/disks/rest/client.rb +345 -272
  25. data/lib/google/cloud/compute/v1/disks/rest/service_stub.rb +644 -0
  26. data/lib/google/cloud/compute/v1/disks/rest.rb +0 -2
  27. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/client.rb +184 -129
  28. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest/service_stub.rb +317 -0
  29. data/lib/google/cloud/compute/v1/external_vpn_gateways/rest.rb +0 -2
  30. data/lib/google/cloud/compute/v1/firewall_policies/rest/client.rb +476 -343
  31. data/lib/google/cloud/compute/v1/firewall_policies/rest/service_stub.rb +869 -0
  32. data/lib/google/cloud/compute/v1/firewall_policies/rest.rb +0 -2
  33. data/lib/google/cloud/compute/v1/firewalls/rest/client.rb +191 -145
  34. data/lib/google/cloud/compute/v1/firewalls/rest/service_stub.rb +321 -0
  35. data/lib/google/cloud/compute/v1/firewalls/rest.rb +0 -2
  36. data/lib/google/cloud/compute/v1/forwarding_rules/rest/client.rb +296 -171
  37. data/lib/google/cloud/compute/v1/forwarding_rules/rest/service_stub.rb +417 -0
  38. data/lib/google/cloud/compute/v1/forwarding_rules/rest.rb +0 -2
  39. data/lib/google/cloud/compute/v1/global_addresses/rest/client.rb +145 -103
  40. data/lib/google/cloud/compute/v1/global_addresses/rest/service_stub.rb +229 -0
  41. data/lib/google/cloud/compute/v1/global_addresses/rest.rb +0 -2
  42. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/client.rb +265 -144
  43. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest/service_stub.rb +365 -0
  44. data/lib/google/cloud/compute/v1/global_forwarding_rules/rest.rb +0 -2
  45. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/client.rb +215 -172
  46. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest/service_stub.rb +370 -0
  47. data/lib/google/cloud/compute/v1/global_network_endpoint_groups/rest.rb +0 -2
  48. data/lib/google/cloud/compute/v1/global_operations/rest/client.rb +165 -118
  49. data/lib/google/cloud/compute/v1/global_operations/rest/service_stub.rb +274 -0
  50. data/lib/google/cloud/compute/v1/global_operations/rest.rb +0 -2
  51. data/lib/google/cloud/compute/v1/global_organization_operations/rest/client.rb +118 -76
  52. data/lib/google/cloud/compute/v1/global_organization_operations/rest/service_stub.rb +186 -0
  53. data/lib/google/cloud/compute/v1/global_organization_operations/rest.rb +0 -2
  54. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/client.rb +175 -124
  55. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest/service_stub.rb +275 -0
  56. data/lib/google/cloud/compute/v1/global_public_delegated_prefixes/rest.rb +0 -2
  57. data/lib/google/cloud/compute/v1/health_checks/rest/client.rb +218 -172
  58. data/lib/google/cloud/compute/v1/health_checks/rest/service_stub.rb +371 -0
  59. data/lib/google/cloud/compute/v1/health_checks/rest.rb +0 -2
  60. data/lib/google/cloud/compute/v1/image_family_views/credentials.rb +53 -0
  61. data/lib/google/cloud/compute/v1/image_family_views/rest/client.rb +318 -0
  62. data/lib/google/cloud/compute/v1/image_family_views/rest/service_stub.rb +89 -0
  63. data/lib/google/cloud/compute/v1/image_family_views/rest.rb +33 -0
  64. data/lib/google/cloud/compute/v1/image_family_views.rb +44 -0
  65. data/lib/google/cloud/compute/v1/images/rest/client.rb +291 -209
  66. data/lib/google/cloud/compute/v1/images/rest/service_stub.rb +542 -0
  67. data/lib/google/cloud/compute/v1/images/rest.rb +0 -2
  68. data/lib/google/cloud/compute/v1/instance_group_managers/rest/client.rb +526 -477
  69. data/lib/google/cloud/compute/v1/instance_group_managers/rest/service_stub.rb +974 -0
  70. data/lib/google/cloud/compute/v1/instance_group_managers/rest.rb +0 -2
  71. data/lib/google/cloud/compute/v1/instance_groups/rest/client.rb +271 -233
  72. data/lib/google/cloud/compute/v1/instance_groups/rest/service_stub.rb +467 -0
  73. data/lib/google/cloud/compute/v1/instance_groups/rest.rb +0 -2
  74. data/lib/google/cloud/compute/v1/instance_templates/rest/client.rb +202 -139
  75. data/lib/google/cloud/compute/v1/instance_templates/rest/service_stub.rb +362 -0
  76. data/lib/google/cloud/compute/v1/instance_templates/rest.rb +0 -2
  77. data/lib/google/cloud/compute/v1/instances/rest/client.rb +1186 -797
  78. data/lib/google/cloud/compute/v1/instances/rest/service_stub.rb +2018 -0
  79. data/lib/google/cloud/compute/v1/instances/rest.rb +0 -2
  80. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/client.rb +195 -151
  81. data/lib/google/cloud/compute/v1/interconnect_attachments/rest/service_stub.rb +326 -0
  82. data/lib/google/cloud/compute/v1/interconnect_attachments/rest.rb +0 -2
  83. data/lib/google/cloud/compute/v1/interconnect_locations/rest/client.rb +100 -63
  84. data/lib/google/cloud/compute/v1/interconnect_locations/rest/service_stub.rb +138 -0
  85. data/lib/google/cloud/compute/v1/interconnect_locations/rest.rb +0 -2
  86. data/lib/google/cloud/compute/v1/interconnects/rest/client.rb +189 -135
  87. data/lib/google/cloud/compute/v1/interconnects/rest/service_stub.rb +318 -0
  88. data/lib/google/cloud/compute/v1/interconnects/rest.rb +0 -2
  89. data/lib/google/cloud/compute/v1/license_codes/rest/client.rb +93 -50
  90. data/lib/google/cloud/compute/v1/license_codes/rest/service_stub.rb +133 -0
  91. data/lib/google/cloud/compute/v1/license_codes/rest.rb +0 -2
  92. data/lib/google/cloud/compute/v1/licenses/rest/client.rb +209 -146
  93. data/lib/google/cloud/compute/v1/licenses/rest/service_stub.rb +362 -0
  94. data/lib/google/cloud/compute/v1/licenses/rest.rb +0 -2
  95. data/lib/google/cloud/compute/v1/machine_types/rest/client.rb +127 -90
  96. data/lib/google/cloud/compute/v1/machine_types/rest/service_stub.rb +188 -0
  97. data/lib/google/cloud/compute/v1/machine_types/rest.rb +0 -2
  98. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/client.rb +261 -213
  99. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest/service_stub.rb +465 -0
  100. data/lib/google/cloud/compute/v1/network_endpoint_groups/rest.rb +0 -2
  101. data/lib/google/cloud/compute/v1/networks/rest/client.rb +363 -234
  102. data/lib/google/cloud/compute/v1/networks/rest/service_stub.rb +553 -0
  103. data/lib/google/cloud/compute/v1/networks/rest.rb +0 -2
  104. data/lib/google/cloud/compute/v1/node_groups/rest/client.rb +345 -277
  105. data/lib/google/cloud/compute/v1/node_groups/rest/service_stub.rb +646 -0
  106. data/lib/google/cloud/compute/v1/node_groups/rest.rb +0 -2
  107. data/lib/google/cloud/compute/v1/node_templates/rest/client.rb +229 -166
  108. data/lib/google/cloud/compute/v1/node_templates/rest/service_stub.rb +412 -0
  109. data/lib/google/cloud/compute/v1/node_templates/rest.rb +0 -2
  110. data/lib/google/cloud/compute/v1/node_types/rest/client.rb +127 -90
  111. data/lib/google/cloud/compute/v1/node_types/rest/service_stub.rb +188 -0
  112. data/lib/google/cloud/compute/v1/node_types/rest.rb +0 -2
  113. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/client.rb +213 -163
  114. data/lib/google/cloud/compute/v1/packet_mirrorings/rest/service_stub.rb +369 -0
  115. data/lib/google/cloud/compute/v1/packet_mirrorings/rest.rb +0 -2
  116. data/lib/google/cloud/compute/v1/projects/rest/client.rb +351 -288
  117. data/lib/google/cloud/compute/v1/projects/rest/service_stub.rb +643 -0
  118. data/lib/google/cloud/compute/v1/projects/rest.rb +0 -2
  119. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/client.rb +175 -124
  120. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest/service_stub.rb +275 -0
  121. data/lib/google/cloud/compute/v1/public_advertised_prefixes/rest.rb +0 -2
  122. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/client.rb +203 -151
  123. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest/service_stub.rb +325 -0
  124. data/lib/google/cloud/compute/v1/public_delegated_prefixes/rest.rb +0 -2
  125. data/lib/google/cloud/compute/v1/region_autoscalers/rest/client.rb +191 -145
  126. data/lib/google/cloud/compute/v1/region_autoscalers/rest/service_stub.rb +323 -0
  127. data/lib/google/cloud/compute/v1/region_autoscalers/rest.rb +0 -2
  128. data/lib/google/cloud/compute/v1/region_backend_services/rest/client.rb +212 -160
  129. data/lib/google/cloud/compute/v1/region_backend_services/rest/service_stub.rb +365 -0
  130. data/lib/google/cloud/compute/v1/region_backend_services/rest.rb +0 -2
  131. data/lib/google/cloud/compute/v1/region_commitments/rest/client.rb +151 -112
  132. data/lib/google/cloud/compute/v1/region_commitments/rest/service_stub.rb +234 -0
  133. data/lib/google/cloud/compute/v1/region_commitments/rest.rb +0 -2
  134. data/lib/google/cloud/compute/v1/region_disk_types/rest/client.rb +100 -63
  135. data/lib/google/cloud/compute/v1/region_disk_types/rest/service_stub.rb +138 -0
  136. data/lib/google/cloud/compute/v1/region_disk_types/rest.rb +0 -2
  137. data/lib/google/cloud/compute/v1/region_disks/rest/client.rb +318 -245
  138. data/lib/google/cloud/compute/v1/region_disks/rest/service_stub.rb +593 -0
  139. data/lib/google/cloud/compute/v1/region_disks/rest.rb +0 -2
  140. data/lib/google/cloud/compute/v1/region_health_check_services/rest/client.rb +168 -124
  141. data/lib/google/cloud/compute/v1/region_health_check_services/rest/service_stub.rb +275 -0
  142. data/lib/google/cloud/compute/v1/region_health_check_services/rest.rb +0 -2
  143. data/lib/google/cloud/compute/v1/region_health_checks/rest/client.rb +191 -145
  144. data/lib/google/cloud/compute/v1/region_health_checks/rest/service_stub.rb +321 -0
  145. data/lib/google/cloud/compute/v1/region_health_checks/rest.rb +0 -2
  146. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/client.rb +498 -445
  147. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest/service_stub.rb +924 -0
  148. data/lib/google/cloud/compute/v1/region_instance_group_managers/rest.rb +0 -2
  149. data/lib/google/cloud/compute/v1/region_instance_groups/rest/client.rb +148 -113
  150. data/lib/google/cloud/compute/v1/region_instance_groups/rest/service_stub.rb +234 -0
  151. data/lib/google/cloud/compute/v1/region_instance_groups/rest.rb +0 -2
  152. data/lib/google/cloud/compute/v1/region_instances/rest/client.rb +76 -45
  153. data/lib/google/cloud/compute/v1/region_instances/rest/service_stub.rb +92 -0
  154. data/lib/google/cloud/compute/v1/region_instances/rest.rb +0 -2
  155. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/client.rb +145 -103
  156. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest/service_stub.rb +229 -0
  157. data/lib/google/cloud/compute/v1/region_network_endpoint_groups/rest.rb +0 -2
  158. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/client.rb +145 -103
  159. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest/service_stub.rb +229 -0
  160. data/lib/google/cloud/compute/v1/region_notification_endpoints/rest.rb +0 -2
  161. data/lib/google/cloud/compute/v1/region_operations/rest/client.rb +137 -90
  162. data/lib/google/cloud/compute/v1/region_operations/rest/service_stub.rb +224 -0
  163. data/lib/google/cloud/compute/v1/region_operations/rest.rb +0 -2
  164. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/client.rb +145 -103
  165. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest/service_stub.rb +229 -0
  166. data/lib/google/cloud/compute/v1/region_ssl_certificates/rest.rb +0 -2
  167. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/client.rb +168 -124
  168. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest/service_stub.rb +275 -0
  169. data/lib/google/cloud/compute/v1/region_target_http_proxies/rest.rb +0 -2
  170. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/client.rb +191 -145
  171. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest/service_stub.rb +321 -0
  172. data/lib/google/cloud/compute/v1/region_target_https_proxies/rest.rb +0 -2
  173. data/lib/google/cloud/compute/v1/region_url_maps/rest/client.rb +205 -137
  174. data/lib/google/cloud/compute/v1/region_url_maps/rest/service_stub.rb +365 -0
  175. data/lib/google/cloud/compute/v1/region_url_maps/rest.rb +0 -2
  176. data/lib/google/cloud/compute/v1/regions/rest/client.rb +100 -63
  177. data/lib/google/cloud/compute/v1/regions/rest/service_stub.rb +138 -0
  178. data/lib/google/cloud/compute/v1/regions/rest.rb +0 -2
  179. data/lib/google/cloud/compute/v1/reservations/rest/client.rb +252 -187
  180. data/lib/google/cloud/compute/v1/reservations/rest/service_stub.rb +458 -0
  181. data/lib/google/cloud/compute/v1/reservations/rest.rb +0 -2
  182. data/lib/google/cloud/compute/v1/resource_policies/rest/client.rb +229 -166
  183. data/lib/google/cloud/compute/v1/resource_policies/rest/service_stub.rb +412 -0
  184. data/lib/google/cloud/compute/v1/resource_policies/rest.rb +0 -2
  185. data/lib/google/cloud/compute/v1/routers/rest/client.rb +284 -222
  186. data/lib/google/cloud/compute/v1/routers/rest/service_stub.rb +507 -0
  187. data/lib/google/cloud/compute/v1/routers/rest.rb +0 -2
  188. data/lib/google/cloud/compute/v1/routes/rest/client.rb +145 -103
  189. data/lib/google/cloud/compute/v1/routes/rest/service_stub.rb +229 -0
  190. data/lib/google/cloud/compute/v1/routes/rest.rb +0 -2
  191. data/lib/google/cloud/compute/v1/security_policies/rest/client.rb +277 -205
  192. data/lib/google/cloud/compute/v1/security_policies/rest/service_stub.rb +504 -0
  193. data/lib/google/cloud/compute/v1/security_policies/rest.rb +0 -2
  194. data/lib/google/cloud/compute/v1/service_attachments/credentials.rb +52 -0
  195. data/lib/google/cloud/compute/v1/service_attachments/rest/client.rb +954 -0
  196. data/lib/google/cloud/compute/v1/service_attachments/rest/service_stub.rb +458 -0
  197. data/lib/google/cloud/compute/v1/service_attachments/rest.rb +33 -0
  198. data/lib/google/cloud/compute/v1/service_attachments.rb +44 -0
  199. data/lib/google/cloud/compute/v1/snapshots/rest/client.rb +201 -135
  200. data/lib/google/cloud/compute/v1/snapshots/rest/service_stub.rb +360 -0
  201. data/lib/google/cloud/compute/v1/snapshots/rest.rb +0 -2
  202. data/lib/google/cloud/compute/v1/ssl_certificates/rest/client.rb +172 -130
  203. data/lib/google/cloud/compute/v1/ssl_certificates/rest/service_stub.rb +279 -0
  204. data/lib/google/cloud/compute/v1/ssl_certificates/rest.rb +0 -2
  205. data/lib/google/cloud/compute/v1/ssl_policies/rest/client.rb +192 -149
  206. data/lib/google/cloud/compute/v1/ssl_policies/rest/service_stub.rb +324 -0
  207. data/lib/google/cloud/compute/v1/ssl_policies/rest.rb +0 -2
  208. data/lib/google/cloud/compute/v1/subnetworks/rest/client.rb +325 -256
  209. data/lib/google/cloud/compute/v1/subnetworks/rest/service_stub.rb +600 -0
  210. data/lib/google/cloud/compute/v1/subnetworks/rest.rb +0 -2
  211. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/client.rb +168 -124
  212. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest/service_stub.rb +275 -0
  213. data/lib/google/cloud/compute/v1/target_grpc_proxies/rest.rb +0 -2
  214. data/lib/google/cloud/compute/v1/target_http_proxies/rest/client.rb +219 -173
  215. data/lib/google/cloud/compute/v1/target_http_proxies/rest/service_stub.rb +371 -0
  216. data/lib/google/cloud/compute/v1/target_http_proxies/rest.rb +0 -2
  217. data/lib/google/cloud/compute/v1/target_https_proxies/rest/client.rb +340 -213
  218. data/lib/google/cloud/compute/v1/target_https_proxies/rest/service_stub.rb +509 -0
  219. data/lib/google/cloud/compute/v1/target_https_proxies/rest.rb +0 -2
  220. data/lib/google/cloud/compute/v1/target_instances/rest/client.rb +172 -130
  221. data/lib/google/cloud/compute/v1/target_instances/rest/service_stub.rb +279 -0
  222. data/lib/google/cloud/compute/v1/target_instances/rest.rb +0 -2
  223. data/lib/google/cloud/compute/v1/target_pools/rest/client.rb +305 -247
  224. data/lib/google/cloud/compute/v1/target_pools/rest/service_stub.rb +554 -0
  225. data/lib/google/cloud/compute/v1/target_pools/rest.rb +0 -2
  226. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/client.rb +237 -187
  227. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest/service_stub.rb +413 -0
  228. data/lib/google/cloud/compute/v1/target_ssl_proxies/rest.rb +0 -2
  229. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/client.rb +191 -145
  230. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest/service_stub.rb +321 -0
  231. data/lib/google/cloud/compute/v1/target_tcp_proxies/rest.rb +0 -2
  232. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/client.rb +172 -130
  233. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest/service_stub.rb +279 -0
  234. data/lib/google/cloud/compute/v1/target_vpn_gateways/rest.rb +0 -2
  235. data/lib/google/cloud/compute/v1/url_maps/rest/client.rb +260 -208
  236. data/lib/google/cloud/compute/v1/url_maps/rest/service_stub.rb +461 -0
  237. data/lib/google/cloud/compute/v1/url_maps/rest.rb +0 -2
  238. data/lib/google/cloud/compute/v1/version.rb +1 -1
  239. data/lib/google/cloud/compute/v1/vpn_gateways/rest/client.rb +234 -174
  240. data/lib/google/cloud/compute/v1/vpn_gateways/rest/service_stub.rb +412 -0
  241. data/lib/google/cloud/compute/v1/vpn_gateways/rest.rb +0 -2
  242. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/client.rb +172 -130
  243. data/lib/google/cloud/compute/v1/vpn_tunnels/rest/service_stub.rb +279 -0
  244. data/lib/google/cloud/compute/v1/vpn_tunnels/rest.rb +0 -2
  245. data/lib/google/cloud/compute/v1/zone_operations/rest/client.rb +137 -90
  246. data/lib/google/cloud/compute/v1/zone_operations/rest/service_stub.rb +224 -0
  247. data/lib/google/cloud/compute/v1/zone_operations/rest.rb +0 -2
  248. data/lib/google/cloud/compute/v1/zones/rest/client.rb +100 -63
  249. data/lib/google/cloud/compute/v1/zones/rest/service_stub.rb +138 -0
  250. data/lib/google/cloud/compute/v1/zones/rest.rb +0 -2
  251. data/lib/google/cloud/compute/v1.rb +7 -0
  252. data/proto_docs/README.md +1 -1
  253. data/proto_docs/google/api/field_behavior.rb +6 -0
  254. data/proto_docs/google/api/resource.rb +10 -71
  255. data/proto_docs/google/cloud/compute/v1/compute.rb +18964 -19481
  256. data/proto_docs/google/cloud/extended_operations.rb +51 -0
  257. metadata +110 -9
@@ -0,0 +1,365 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/compute/v1/compute_pb"
20
+
21
+ module Google
22
+ module Cloud
23
+ module Compute
24
+ module V1
25
+ module RegionUrlMaps
26
+ module Rest
27
+ ##
28
+ # REST service stub for the RegionUrlMaps service.
29
+ # service stub contains baseline method implementations
30
+ # including transcoding, making the REST call and deserialing the response
31
+ #
32
+ class ServiceStub
33
+ def initialize endpoint:, credentials:
34
+ # These require statements are intentionally placed here to initialize
35
+ # the REST modules only when it's required.
36
+ require "gapic/rest"
37
+
38
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials
39
+ end
40
+
41
+ ##
42
+ # Baseline implementation for the delete REST call
43
+ #
44
+ # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionUrlMapRequest]
45
+ # A request object representing the call parameters. Required.
46
+ # @param options [::Gapic::CallOptions]
47
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
48
+ #
49
+ # @yield [result, response] Access the result along with the Faraday response object
50
+ # @yieldparam result [::Google::Cloud::Compute::V1::Operation]
51
+ # @yieldparam response [::Faraday::Response]
52
+ #
53
+ # @return [::Google::Cloud::Compute::V1::Operation]
54
+ # A result object deserialized from the server's reply
55
+ def delete request_pb, options = nil
56
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
57
+
58
+ uri, _body, query_string_params = transcode_delete_request request_pb
59
+ response = @client_stub.make_delete_request(
60
+ uri: uri,
61
+ params: query_string_params,
62
+ options: options
63
+ )
64
+ result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
65
+
66
+ yield result, response if block_given?
67
+ result
68
+ end
69
+
70
+ ##
71
+ # GRPC transcoding helper method for the delete REST call
72
+ #
73
+ # @param request_pb [::Google::Cloud::Compute::V1::DeleteRegionUrlMapRequest]
74
+ # A request object representing the call parameters. Required.
75
+ # @return [Array(String, [String, nil], Hash{String => String})]
76
+ # Uri, Body, Query string parameters
77
+ def transcode_delete_request request_pb
78
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps/#{request_pb.url_map}"
79
+ body = nil
80
+ query_string_params = {}
81
+ query_string_params["requestId"] = request_pb.request_id.to_s if request_pb.has_request_id?
82
+
83
+ [uri, body, query_string_params]
84
+ end
85
+
86
+ ##
87
+ # Baseline implementation for the get REST call
88
+ #
89
+ # @param request_pb [::Google::Cloud::Compute::V1::GetRegionUrlMapRequest]
90
+ # A request object representing the call parameters. Required.
91
+ # @param options [::Gapic::CallOptions]
92
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
93
+ #
94
+ # @yield [result, response] Access the result along with the Faraday response object
95
+ # @yieldparam result [::Google::Cloud::Compute::V1::UrlMap]
96
+ # @yieldparam response [::Faraday::Response]
97
+ #
98
+ # @return [::Google::Cloud::Compute::V1::UrlMap]
99
+ # A result object deserialized from the server's reply
100
+ def get request_pb, options = nil
101
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
102
+
103
+ uri, _body, _query_string_params = transcode_get_request request_pb
104
+ response = @client_stub.make_get_request(
105
+ uri: uri,
106
+ options: options
107
+ )
108
+ result = ::Google::Cloud::Compute::V1::UrlMap.decode_json response.body, ignore_unknown_fields: true
109
+
110
+ yield result, response if block_given?
111
+ result
112
+ end
113
+
114
+ ##
115
+ # GRPC transcoding helper method for the get REST call
116
+ #
117
+ # @param request_pb [::Google::Cloud::Compute::V1::GetRegionUrlMapRequest]
118
+ # A request object representing the call parameters. Required.
119
+ # @return [Array(String, [String, nil], Hash{String => String})]
120
+ # Uri, Body, Query string parameters
121
+ def transcode_get_request request_pb
122
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps/#{request_pb.url_map}"
123
+ body = nil
124
+ query_string_params = {}
125
+
126
+ [uri, body, query_string_params]
127
+ end
128
+
129
+ ##
130
+ # Baseline implementation for the insert REST call
131
+ #
132
+ # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionUrlMapRequest]
133
+ # A request object representing the call parameters. Required.
134
+ # @param options [::Gapic::CallOptions]
135
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
136
+ #
137
+ # @yield [result, response] Access the result along with the Faraday response object
138
+ # @yieldparam result [::Google::Cloud::Compute::V1::Operation]
139
+ # @yieldparam response [::Faraday::Response]
140
+ #
141
+ # @return [::Google::Cloud::Compute::V1::Operation]
142
+ # A result object deserialized from the server's reply
143
+ def insert request_pb, options = nil
144
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
145
+
146
+ uri, body, query_string_params = transcode_insert_request request_pb
147
+ response = @client_stub.make_post_request(
148
+ uri: uri,
149
+ body: body,
150
+ params: query_string_params,
151
+ options: options
152
+ )
153
+ result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
154
+
155
+ yield result, response if block_given?
156
+ result
157
+ end
158
+
159
+ ##
160
+ # GRPC transcoding helper method for the insert REST call
161
+ #
162
+ # @param request_pb [::Google::Cloud::Compute::V1::InsertRegionUrlMapRequest]
163
+ # A request object representing the call parameters. Required.
164
+ # @return [Array(String, [String, nil], Hash{String => String})]
165
+ # Uri, Body, Query string parameters
166
+ def transcode_insert_request request_pb
167
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps"
168
+ body = request_pb.url_map_resource.to_json
169
+ query_string_params = {}
170
+ query_string_params["requestId"] = request_pb.request_id.to_s if request_pb.has_request_id?
171
+
172
+ [uri, body, query_string_params]
173
+ end
174
+
175
+ ##
176
+ # Baseline implementation for the list REST call
177
+ #
178
+ # @param request_pb [::Google::Cloud::Compute::V1::ListRegionUrlMapsRequest]
179
+ # A request object representing the call parameters. Required.
180
+ # @param options [::Gapic::CallOptions]
181
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
182
+ #
183
+ # @yield [result, response] Access the result along with the Faraday response object
184
+ # @yieldparam result [::Google::Cloud::Compute::V1::UrlMapList]
185
+ # @yieldparam response [::Faraday::Response]
186
+ #
187
+ # @return [::Google::Cloud::Compute::V1::UrlMapList]
188
+ # A result object deserialized from the server's reply
189
+ def list request_pb, options = nil
190
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
191
+
192
+ uri, _body, query_string_params = transcode_list_request request_pb
193
+ response = @client_stub.make_get_request(
194
+ uri: uri,
195
+ params: query_string_params,
196
+ options: options
197
+ )
198
+ result = ::Google::Cloud::Compute::V1::UrlMapList.decode_json response.body, ignore_unknown_fields: true
199
+
200
+ yield result, response if block_given?
201
+ result
202
+ end
203
+
204
+ ##
205
+ # GRPC transcoding helper method for the list REST call
206
+ #
207
+ # @param request_pb [::Google::Cloud::Compute::V1::ListRegionUrlMapsRequest]
208
+ # A request object representing the call parameters. Required.
209
+ # @return [Array(String, [String, nil], Hash{String => String})]
210
+ # Uri, Body, Query string parameters
211
+ def transcode_list_request request_pb
212
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps"
213
+ body = nil
214
+ query_string_params = {}
215
+ query_string_params["filter"] = request_pb.filter.to_s if request_pb.has_filter?
216
+ query_string_params["maxResults"] = request_pb.max_results.to_s if request_pb.has_max_results?
217
+ query_string_params["orderBy"] = request_pb.order_by.to_s if request_pb.has_order_by?
218
+ query_string_params["pageToken"] = request_pb.page_token.to_s if request_pb.has_page_token?
219
+ query_string_params["returnPartialSuccess"] = request_pb.return_partial_success.to_s if request_pb.has_return_partial_success?
220
+
221
+ [uri, body, query_string_params]
222
+ end
223
+
224
+ ##
225
+ # Baseline implementation for the patch REST call
226
+ #
227
+ # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionUrlMapRequest]
228
+ # A request object representing the call parameters. Required.
229
+ # @param options [::Gapic::CallOptions]
230
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
231
+ #
232
+ # @yield [result, response] Access the result along with the Faraday response object
233
+ # @yieldparam result [::Google::Cloud::Compute::V1::Operation]
234
+ # @yieldparam response [::Faraday::Response]
235
+ #
236
+ # @return [::Google::Cloud::Compute::V1::Operation]
237
+ # A result object deserialized from the server's reply
238
+ def patch request_pb, options = nil
239
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
240
+
241
+ uri, body, query_string_params = transcode_patch_request request_pb
242
+ response = @client_stub.make_patch_request(
243
+ uri: uri,
244
+ body: body,
245
+ params: query_string_params,
246
+ options: options
247
+ )
248
+ result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
249
+
250
+ yield result, response if block_given?
251
+ result
252
+ end
253
+
254
+ ##
255
+ # GRPC transcoding helper method for the patch REST call
256
+ #
257
+ # @param request_pb [::Google::Cloud::Compute::V1::PatchRegionUrlMapRequest]
258
+ # A request object representing the call parameters. Required.
259
+ # @return [Array(String, [String, nil], Hash{String => String})]
260
+ # Uri, Body, Query string parameters
261
+ def transcode_patch_request request_pb
262
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps/#{request_pb.url_map}"
263
+ body = request_pb.url_map_resource.to_json
264
+ query_string_params = {}
265
+ query_string_params["requestId"] = request_pb.request_id.to_s if request_pb.has_request_id?
266
+
267
+ [uri, body, query_string_params]
268
+ end
269
+
270
+ ##
271
+ # Baseline implementation for the update REST call
272
+ #
273
+ # @param request_pb [::Google::Cloud::Compute::V1::UpdateRegionUrlMapRequest]
274
+ # A request object representing the call parameters. Required.
275
+ # @param options [::Gapic::CallOptions]
276
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
277
+ #
278
+ # @yield [result, response] Access the result along with the Faraday response object
279
+ # @yieldparam result [::Google::Cloud::Compute::V1::Operation]
280
+ # @yieldparam response [::Faraday::Response]
281
+ #
282
+ # @return [::Google::Cloud::Compute::V1::Operation]
283
+ # A result object deserialized from the server's reply
284
+ def update request_pb, options = nil
285
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
286
+
287
+ uri, body, query_string_params = transcode_update_request request_pb
288
+ response = @client_stub.make_put_request(
289
+ uri: uri,
290
+ body: body,
291
+ params: query_string_params,
292
+ options: options
293
+ )
294
+ result = ::Google::Cloud::Compute::V1::Operation.decode_json response.body, ignore_unknown_fields: true
295
+
296
+ yield result, response if block_given?
297
+ result
298
+ end
299
+
300
+ ##
301
+ # GRPC transcoding helper method for the update REST call
302
+ #
303
+ # @param request_pb [::Google::Cloud::Compute::V1::UpdateRegionUrlMapRequest]
304
+ # A request object representing the call parameters. Required.
305
+ # @return [Array(String, [String, nil], Hash{String => String})]
306
+ # Uri, Body, Query string parameters
307
+ def transcode_update_request request_pb
308
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps/#{request_pb.url_map}"
309
+ body = request_pb.url_map_resource.to_json
310
+ query_string_params = {}
311
+ query_string_params["requestId"] = request_pb.request_id.to_s if request_pb.has_request_id?
312
+
313
+ [uri, body, query_string_params]
314
+ end
315
+
316
+ ##
317
+ # Baseline implementation for the validate REST call
318
+ #
319
+ # @param request_pb [::Google::Cloud::Compute::V1::ValidateRegionUrlMapRequest]
320
+ # A request object representing the call parameters. Required.
321
+ # @param options [::Gapic::CallOptions]
322
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
323
+ #
324
+ # @yield [result, response] Access the result along with the Faraday response object
325
+ # @yieldparam result [::Google::Cloud::Compute::V1::UrlMapsValidateResponse]
326
+ # @yieldparam response [::Faraday::Response]
327
+ #
328
+ # @return [::Google::Cloud::Compute::V1::UrlMapsValidateResponse]
329
+ # A result object deserialized from the server's reply
330
+ def validate request_pb, options = nil
331
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
332
+
333
+ uri, body, _query_string_params = transcode_validate_request request_pb
334
+ response = @client_stub.make_post_request(
335
+ uri: uri,
336
+ body: body,
337
+ options: options
338
+ )
339
+ result = ::Google::Cloud::Compute::V1::UrlMapsValidateResponse.decode_json response.body, ignore_unknown_fields: true
340
+
341
+ yield result, response if block_given?
342
+ result
343
+ end
344
+
345
+ ##
346
+ # GRPC transcoding helper method for the validate REST call
347
+ #
348
+ # @param request_pb [::Google::Cloud::Compute::V1::ValidateRegionUrlMapRequest]
349
+ # A request object representing the call parameters. Required.
350
+ # @return [Array(String, [String, nil], Hash{String => String})]
351
+ # Uri, Body, Query string parameters
352
+ def transcode_validate_request request_pb
353
+ uri = "/compute/v1/projects/#{request_pb.project}/regions/#{request_pb.region}/urlMaps/#{request_pb.url_map}/validate"
354
+ body = request_pb.region_url_maps_validate_request_resource.to_json
355
+ query_string_params = {}
356
+
357
+ [uri, body, query_string_params]
358
+ end
359
+ end
360
+ end
361
+ end
362
+ end
363
+ end
364
+ end
365
+ end
@@ -16,8 +16,6 @@
16
16
 
17
17
  # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
18
 
19
- require "gapic/rest"
20
- require "google/cloud/compute/v1/region_url_maps/rest/grpc_transcoding"
21
19
  require "google/cloud/compute/v1/region_url_maps/rest/client"
22
20
 
23
21
  module Google
@@ -18,6 +18,7 @@
18
18
 
19
19
  require "google/cloud/errors"
20
20
  require "google/cloud/compute/v1/compute_pb"
21
+ require "google/cloud/compute/v1/regions/rest/service_stub"
21
22
 
22
23
  module Google
23
24
  module Cloud
@@ -31,8 +32,6 @@ module Google
31
32
  # The Regions API.
32
33
  #
33
34
  class Client
34
- include GrpcTranscoding
35
-
36
35
  # @private
37
36
  attr_reader :regions_stub
38
37
 
@@ -42,13 +41,12 @@ module Google
42
41
  # See {::Google::Cloud::Compute::V1::Regions::Rest::Client::Configuration}
43
42
  # for a description of the configuration fields.
44
43
  #
45
- # ## Example
46
- #
47
- # To modify the configuration for all Regions clients:
44
+ # @example
48
45
  #
49
- # ::Google::Cloud::Compute::V1::Regions::Rest::Client.configure do |config|
50
- # config.timeout = 10.0
51
- # end
46
+ # # Modify the configuration for all Regions clients
47
+ # ::Google::Cloud::Compute::V1::Regions::Rest::Client.configure do |config|
48
+ # config.timeout = 10.0
49
+ # end
52
50
  #
53
51
  # @yield [config] Configure the Client client.
54
52
  # @yieldparam config [Client::Configuration]
@@ -66,6 +64,16 @@ module Google
66
64
  end
67
65
  default_config = Client::Configuration.new parent_config
68
66
 
67
+ default_config.rpcs.get.timeout = 600.0
68
+ default_config.rpcs.get.retry_policy = {
69
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
70
+ }
71
+
72
+ default_config.rpcs.list.timeout = 600.0
73
+ default_config.rpcs.list.retry_policy = {
74
+ initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [4, 14]
75
+ }
76
+
69
77
  default_config
70
78
  end
71
79
  yield @configure if block_given?
@@ -95,28 +103,20 @@ module Google
95
103
  ##
96
104
  # Create a new Regions REST client object.
97
105
  #
98
- # ## Examples
99
- #
100
- # To create a new Regions REST client with the default
101
- # configuration:
106
+ # @example
102
107
  #
103
- # client = ::Google::Cloud::Compute::V1::Regions::Rest::Client.new
108
+ # # Create a client using the default configuration
109
+ # client = ::Google::Cloud::Compute::V1::Regions::Rest::Client.new
104
110
  #
105
- # To create a new Regions REST client with a custom
106
- # configuration:
107
- #
108
- # client = ::Google::Cloud::Compute::V1::Regions::Rest::Client.new do |config|
109
- # config.timeout = 10.0
110
- # end
111
+ # # Create a client using a custom configuration
112
+ # client = ::Google::Cloud::Compute::V1::Regions::Rest::Client.new do |config|
113
+ # config.timeout = 10.0
114
+ # end
111
115
  #
112
116
  # @yield [config] Configure the Regions client.
113
117
  # @yieldparam config [Client::Configuration]
114
118
  #
115
119
  def initialize
116
- # These require statements are intentionally placed here to initialize
117
- # the REST modules only when it's required.
118
- require "gapic/rest"
119
-
120
120
  # Create the configuration object
121
121
  @config = Configuration.new Client.configure
122
122
 
@@ -126,11 +126,11 @@ module Google
126
126
  # Create credentials
127
127
  credentials = @config.credentials
128
128
  credentials ||= Credentials.default scope: @config.scope
129
- if credentials.is_a?(String) || credentials.is_a?(Hash)
129
+ if credentials.is_a?(::String) || credentials.is_a?(::Hash)
130
130
  credentials = Credentials.new credentials, scope: @config.scope
131
131
  end
132
132
 
133
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: @config.endpoint, credentials: credentials
133
+ @regions_stub = ::Google::Cloud::Compute::V1::Regions::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
134
134
  end
135
135
 
136
136
  # Service calls
@@ -159,7 +159,7 @@ module Google
159
159
  # Project ID for this request.
160
160
  # @param region [::String]
161
161
  # Name of the region resource to return.
162
- # @yield [result, env] Access the result along with the Faraday environment object
162
+ # @yield [result, response] Access the result along with the Faraday response object
163
163
  # @yieldparam result [::Google::Cloud::Compute::V1::Region]
164
164
  # @yieldparam response [::Faraday::Response]
165
165
  #
@@ -175,7 +175,7 @@ module Google
175
175
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
176
176
 
177
177
  # Customize the options with defaults
178
- call_metadata = {}
178
+ call_metadata = @config.rpcs.get.metadata.to_h
179
179
 
180
180
  # Set x-goog-api-client header
181
181
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
@@ -183,18 +183,16 @@ module Google
183
183
  gapic_version: ::Google::Cloud::Compute::V1::VERSION,
184
184
  transports_version_send: [:rest]
185
185
 
186
- options.apply_defaults timeout: @config.timeout,
186
+ options.apply_defaults timeout: @config.rpcs.get.timeout,
187
187
  metadata: call_metadata
188
188
 
189
- uri, _body, _query_string_params = transcode_get request
190
- response = @client_stub.make_get_request(
191
- uri: uri,
192
- options: options
193
- )
194
- result = ::Google::Cloud::Compute::V1::Region.decode_json response.body, ignore_unknown_fields: true
189
+ options.apply_defaults timeout: @config.timeout,
190
+ metadata: @config.metadata
195
191
 
196
- yield result, response if block_given?
197
- result
192
+ @regions_stub.get request, options do |result, response|
193
+ yield result, response if block_given?
194
+ return result
195
+ end
198
196
  rescue ::Faraday::Error => e
199
197
  gapic_error = ::Gapic::Rest::Error.wrap_faraday_error e
200
198
  raise ::Google::Cloud::Error.from_error(gapic_error)
@@ -221,32 +219,22 @@ module Google
221
219
  # the default parameter values, pass an empty Hash as a request object (see above).
222
220
  #
223
221
  # @param filter [::String]
224
- # A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`.
225
- #
226
- # For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`.
227
- #
228
- # You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.
229
- #
230
- # To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ```
222
+ # A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ```
231
223
  # @param max_results [::Integer]
232
224
  # The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)
233
225
  # @param order_by [::String]
234
- # Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.
235
- #
236
- # You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.
237
- #
238
- # Currently, only sorting by `name` or `creationTimestamp desc` is supported.
226
+ # Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.
239
227
  # @param page_token [::String]
240
228
  # Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.
241
229
  # @param project [::String]
242
230
  # Project ID for this request.
243
231
  # @param return_partial_success [::Boolean]
244
- # Opt-in for partial success behavior which provides partial results in case of failure. The default value is false and the logic is the same as today.
245
- # @yield [result, env] Access the result along with the Faraday environment object
246
- # @yieldparam result [::Google::Cloud::Compute::V1::RegionList]
232
+ # Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.
233
+ # @yield [result, response] Access the result along with the Faraday response object
234
+ # @yieldparam result [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::Region>]
247
235
  # @yieldparam response [::Faraday::Response]
248
236
  #
249
- # @return [::Google::Cloud::Compute::V1::RegionList]
237
+ # @return [::Gapic::Rest::PagedEnumerable<::Google::Cloud::Compute::V1::Region>]
250
238
  #
251
239
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
252
240
  def list request, options = nil
@@ -258,7 +246,7 @@ module Google
258
246
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
259
247
 
260
248
  # Customize the options with defaults
261
- call_metadata = {}
249
+ call_metadata = @config.rpcs.list.metadata.to_h
262
250
 
263
251
  # Set x-goog-api-client header
264
252
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
@@ -266,19 +254,17 @@ module Google
266
254
  gapic_version: ::Google::Cloud::Compute::V1::VERSION,
267
255
  transports_version_send: [:rest]
268
256
 
269
- options.apply_defaults timeout: @config.timeout,
257
+ options.apply_defaults timeout: @config.rpcs.list.timeout,
270
258
  metadata: call_metadata
271
259
 
272
- uri, _body, query_string_params = transcode_list request
273
- response = @client_stub.make_get_request(
274
- uri: uri,
275
- params: query_string_params,
276
- options: options
277
- )
278
- result = ::Google::Cloud::Compute::V1::RegionList.decode_json response.body, ignore_unknown_fields: true
260
+ options.apply_defaults timeout: @config.timeout,
261
+ metadata: @config.metadata
279
262
 
280
- yield result, response if block_given?
281
- result
263
+ @regions_stub.list request, options do |result, response|
264
+ result = ::Gapic::Rest::PagedEnumerable.new @regions_stub, :list, "items", request, result, options
265
+ yield result, response if block_given?
266
+ return result
267
+ end
282
268
  rescue ::Faraday::Error => e
283
269
  gapic_error = ::Gapic::Rest::Error.wrap_faraday_error e
284
270
  raise ::Google::Cloud::Error.from_error(gapic_error)
@@ -333,6 +319,9 @@ module Google
333
319
  # @!attribute [rw] timeout
334
320
  # The call timeout in seconds.
335
321
  # @return [::Numeric]
322
+ # @!attribute [rw] metadata
323
+ # Additional REST headers to be sent with the call.
324
+ # @return [::Hash{::Symbol=>::String}]
336
325
  #
337
326
  class Configuration
338
327
  extend ::Gapic::Config
@@ -346,6 +335,7 @@ module Google
346
335
  config_attr :lib_name, nil, ::String, nil
347
336
  config_attr :lib_version, nil, ::String, nil
348
337
  config_attr :timeout, nil, ::Numeric, nil
338
+ config_attr :metadata, nil, ::Hash, nil
349
339
 
350
340
  # @private
351
341
  def initialize parent_config = nil
@@ -353,6 +343,53 @@ module Google
353
343
 
354
344
  yield self if block_given?
355
345
  end
346
+
347
+ ##
348
+ # Configurations for individual RPCs
349
+ # @return [Rpcs]
350
+ #
351
+ def rpcs
352
+ @rpcs ||= begin
353
+ parent_rpcs = nil
354
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config.respond_to?(:rpcs)
355
+ Rpcs.new parent_rpcs
356
+ end
357
+ end
358
+
359
+ ##
360
+ # Configuration RPC class for the Regions API.
361
+ #
362
+ # Includes fields providing the configuration for each RPC in this service.
363
+ # Each configuration object is of type `Gapic::Config::Method` and includes
364
+ # the following configuration fields:
365
+ #
366
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
367
+ #
368
+ # there is one other field (`retry_policy`) that can be set
369
+ # but is currently not supported for REST Gapic libraries.
370
+ #
371
+ class Rpcs
372
+ ##
373
+ # RPC-specific configuration for `get`
374
+ # @return [::Gapic::Config::Method]
375
+ #
376
+ attr_reader :get
377
+ ##
378
+ # RPC-specific configuration for `list`
379
+ # @return [::Gapic::Config::Method]
380
+ #
381
+ attr_reader :list
382
+
383
+ # @private
384
+ def initialize parent_rpcs = nil
385
+ get_config = parent_rpcs.get if parent_rpcs.respond_to? :get
386
+ @get = ::Gapic::Config::Method.new get_config
387
+ list_config = parent_rpcs.list if parent_rpcs.respond_to? :list
388
+ @list = ::Gapic::Config::Method.new list_config
389
+
390
+ yield self if block_given?
391
+ end
392
+ end
356
393
  end
357
394
  end
358
395
  end