google-api-client 0.8.7 → 0.9.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,37 @@
1
+ # Copyright 2015 Google Inc.
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
+ require 'google/apis/sqladmin_v1beta4/service.rb'
16
+ require 'google/apis/sqladmin_v1beta4/classes.rb'
17
+ require 'google/apis/sqladmin_v1beta4/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud SQL Administration API
22
+ #
23
+ # API for Cloud SQL database instance management.
24
+ #
25
+ # @see https://cloud.google.com/sql/docs/reference/latest
26
+ module SqladminV1beta4
27
+ VERSION = 'V1beta4'
28
+ REVISION = '20150305'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+
33
+ # Manage your Google SQL Service instances
34
+ AUTH_SQLSERVICE_ADMIN = 'https://www.googleapis.com/auth/sqlservice.admin'
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,1817 @@
1
+ # Copyright 2015 Google Inc.
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
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module SqladminV1beta4
24
+
25
+ # An entry for an Access Control list.
26
+ class AclEntry
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The time when this access control entry expires in RFC 3339 format, for
30
+ # example 2012-11-15T16:19:00.094Z.
31
+ # Corresponds to the JSON property `expirationTime`
32
+ # @return [DateTime]
33
+ attr_accessor :expiration_time
34
+
35
+ # This is always sql#aclEntry.
36
+ # Corresponds to the JSON property `kind`
37
+ # @return [String]
38
+ attr_accessor :kind
39
+
40
+ # An optional label to identify this entry.
41
+ # Corresponds to the JSON property `name`
42
+ # @return [String]
43
+ attr_accessor :name
44
+
45
+ # The whitelisted value for the access control list.
46
+ # Corresponds to the JSON property `value`
47
+ # @return [String]
48
+ attr_accessor :value
49
+
50
+ def initialize(**args)
51
+ update!(**args)
52
+ end
53
+
54
+ # Update properties of this object
55
+ def update!(**args)
56
+ @expiration_time = args[:expiration_time] unless args[:expiration_time].nil?
57
+ @kind = args[:kind] unless args[:kind].nil?
58
+ @name = args[:name] unless args[:name].nil?
59
+ @value = args[:value] unless args[:value].nil?
60
+ end
61
+ end
62
+
63
+ # Database instance backup configuration.
64
+ class BackupConfiguration
65
+ include Google::Apis::Core::Hashable
66
+
67
+ # Whether binary log is enabled. If backup configuration is disabled, binary log
68
+ # must be disabled as well.
69
+ # Corresponds to the JSON property `binaryLogEnabled`
70
+ # @return [Boolean]
71
+ attr_accessor :binary_log_enabled
72
+ alias_method :binary_log_enabled?, :binary_log_enabled
73
+
74
+ # Whether this configuration is enabled.
75
+ # Corresponds to the JSON property `enabled`
76
+ # @return [Boolean]
77
+ attr_accessor :enabled
78
+ alias_method :enabled?, :enabled
79
+
80
+ # This is always sql#backupConfiguration.
81
+ # Corresponds to the JSON property `kind`
82
+ # @return [String]
83
+ attr_accessor :kind
84
+
85
+ # Start time for the daily backup configuration in UTC timezone in the 24 hour
86
+ # format - HH:MM.
87
+ # Corresponds to the JSON property `startTime`
88
+ # @return [String]
89
+ attr_accessor :start_time
90
+
91
+ def initialize(**args)
92
+ update!(**args)
93
+ end
94
+
95
+ # Update properties of this object
96
+ def update!(**args)
97
+ @binary_log_enabled = args[:binary_log_enabled] unless args[:binary_log_enabled].nil?
98
+ @enabled = args[:enabled] unless args[:enabled].nil?
99
+ @kind = args[:kind] unless args[:kind].nil?
100
+ @start_time = args[:start_time] unless args[:start_time].nil?
101
+ end
102
+ end
103
+
104
+ # A database instance backup run resource.
105
+ class BackupRun
106
+ include Google::Apis::Core::Hashable
107
+
108
+ # The time the backup operation completed in UTC timezone in RFC 3339 format,
109
+ # for example 2012-11-15T16:19:00.094Z.
110
+ # Corresponds to the JSON property `endTime`
111
+ # @return [DateTime]
112
+ attr_accessor :end_time
113
+
114
+ # The time the run was enqueued in UTC timezone in RFC 3339 format, for example
115
+ # 2012-11-15T16:19:00.094Z.
116
+ # Corresponds to the JSON property `enqueuedTime`
117
+ # @return [DateTime]
118
+ attr_accessor :enqueued_time
119
+
120
+ # Database instance operation error.
121
+ # Corresponds to the JSON property `error`
122
+ # @return [Google::Apis::SqladminV1beta4::OperationError]
123
+ attr_accessor :error
124
+
125
+ # A unique identifier for this backup run. Note that this is unique only within
126
+ # the scope of a particular Cloud SQL instance.
127
+ # Corresponds to the JSON property `id`
128
+ # @return [String]
129
+ attr_accessor :id
130
+
131
+ # Name of the database instance.
132
+ # Corresponds to the JSON property `instance`
133
+ # @return [String]
134
+ attr_accessor :instance
135
+
136
+ # This is always sql#backupRun.
137
+ # Corresponds to the JSON property `kind`
138
+ # @return [String]
139
+ attr_accessor :kind
140
+
141
+ # The URI of this resource.
142
+ # Corresponds to the JSON property `selfLink`
143
+ # @return [String]
144
+ attr_accessor :self_link
145
+
146
+ # The time the backup operation actually started in UTC timezone in RFC 3339
147
+ # format, for example 2012-11-15T16:19:00.094Z.
148
+ # Corresponds to the JSON property `startTime`
149
+ # @return [DateTime]
150
+ attr_accessor :start_time
151
+
152
+ # The status of this run.
153
+ # Corresponds to the JSON property `status`
154
+ # @return [String]
155
+ attr_accessor :status
156
+
157
+ # The start time of the backup window during which this the backup was attempted
158
+ # in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.
159
+ # Corresponds to the JSON property `windowStartTime`
160
+ # @return [DateTime]
161
+ attr_accessor :window_start_time
162
+
163
+ def initialize(**args)
164
+ update!(**args)
165
+ end
166
+
167
+ # Update properties of this object
168
+ def update!(**args)
169
+ @end_time = args[:end_time] unless args[:end_time].nil?
170
+ @enqueued_time = args[:enqueued_time] unless args[:enqueued_time].nil?
171
+ @error = args[:error] unless args[:error].nil?
172
+ @id = args[:id] unless args[:id].nil?
173
+ @instance = args[:instance] unless args[:instance].nil?
174
+ @kind = args[:kind] unless args[:kind].nil?
175
+ @self_link = args[:self_link] unless args[:self_link].nil?
176
+ @start_time = args[:start_time] unless args[:start_time].nil?
177
+ @status = args[:status] unless args[:status].nil?
178
+ @window_start_time = args[:window_start_time] unless args[:window_start_time].nil?
179
+ end
180
+ end
181
+
182
+ # Backup run list results.
183
+ class ListBackupRunsResponse
184
+ include Google::Apis::Core::Hashable
185
+
186
+ # A list of backup runs in reverse chronological order of the enqueued time.
187
+ # Corresponds to the JSON property `items`
188
+ # @return [Array<Google::Apis::SqladminV1beta4::BackupRun>]
189
+ attr_accessor :items
190
+
191
+ # This is always sql#backupRunsList.
192
+ # Corresponds to the JSON property `kind`
193
+ # @return [String]
194
+ attr_accessor :kind
195
+
196
+ # The continuation token, used to page through large result sets. Provide this
197
+ # value in a subsequent request to return the next page of results.
198
+ # Corresponds to the JSON property `nextPageToken`
199
+ # @return [String]
200
+ attr_accessor :next_page_token
201
+
202
+ def initialize(**args)
203
+ update!(**args)
204
+ end
205
+
206
+ # Update properties of this object
207
+ def update!(**args)
208
+ @items = args[:items] unless args[:items].nil?
209
+ @kind = args[:kind] unless args[:kind].nil?
210
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
211
+ end
212
+ end
213
+
214
+ # Binary log coordinates.
215
+ class BinLogCoordinates
216
+ include Google::Apis::Core::Hashable
217
+
218
+ # Name of the binary log file for a Cloud SQL instance.
219
+ # Corresponds to the JSON property `binLogFileName`
220
+ # @return [String]
221
+ attr_accessor :bin_log_file_name
222
+
223
+ # Position (offset) within the binary log file.
224
+ # Corresponds to the JSON property `binLogPosition`
225
+ # @return [String]
226
+ attr_accessor :bin_log_position
227
+
228
+ # This is always sql#binLogCoordinates.
229
+ # Corresponds to the JSON property `kind`
230
+ # @return [String]
231
+ attr_accessor :kind
232
+
233
+ def initialize(**args)
234
+ update!(**args)
235
+ end
236
+
237
+ # Update properties of this object
238
+ def update!(**args)
239
+ @bin_log_file_name = args[:bin_log_file_name] unless args[:bin_log_file_name].nil?
240
+ @bin_log_position = args[:bin_log_position] unless args[:bin_log_position].nil?
241
+ @kind = args[:kind] unless args[:kind].nil?
242
+ end
243
+ end
244
+
245
+ # Database instance clone context.
246
+ class CloneContext
247
+ include Google::Apis::Core::Hashable
248
+
249
+ # Binary log coordinates.
250
+ # Corresponds to the JSON property `binLogCoordinates`
251
+ # @return [Google::Apis::SqladminV1beta4::BinLogCoordinates]
252
+ attr_accessor :bin_log_coordinates
253
+
254
+ # Name of the Cloud SQL instance to be created as a clone.
255
+ # Corresponds to the JSON property `destinationInstanceName`
256
+ # @return [String]
257
+ attr_accessor :destination_instance_name
258
+
259
+ # This is always sql#cloneContext.
260
+ # Corresponds to the JSON property `kind`
261
+ # @return [String]
262
+ attr_accessor :kind
263
+
264
+ def initialize(**args)
265
+ update!(**args)
266
+ end
267
+
268
+ # Update properties of this object
269
+ def update!(**args)
270
+ @bin_log_coordinates = args[:bin_log_coordinates] unless args[:bin_log_coordinates].nil?
271
+ @destination_instance_name = args[:destination_instance_name] unless args[:destination_instance_name].nil?
272
+ @kind = args[:kind] unless args[:kind].nil?
273
+ end
274
+ end
275
+
276
+ # A database resource inside a Cloud SQL instance.
277
+ class Database
278
+ include Google::Apis::Core::Hashable
279
+
280
+ # The MySQL charset value.
281
+ # Corresponds to the JSON property `charset`
282
+ # @return [String]
283
+ attr_accessor :charset
284
+
285
+ # The MySQL collation value.
286
+ # Corresponds to the JSON property `collation`
287
+ # @return [String]
288
+ attr_accessor :collation
289
+
290
+ # HTTP 1.1 Entity tag for the resource.
291
+ # Corresponds to the JSON property `etag`
292
+ # @return [String]
293
+ attr_accessor :etag
294
+
295
+ # The name of the Cloud SQL instance. This does not include the project ID.
296
+ # Corresponds to the JSON property `instance`
297
+ # @return [String]
298
+ attr_accessor :instance
299
+
300
+ # This is always sql#database.
301
+ # Corresponds to the JSON property `kind`
302
+ # @return [String]
303
+ attr_accessor :kind
304
+
305
+ # The name of the database in the Cloud SQL instance. This does not include the
306
+ # project ID or instance name.
307
+ # Corresponds to the JSON property `name`
308
+ # @return [String]
309
+ attr_accessor :name
310
+
311
+ # The project ID of the project containing the Cloud SQL database. The Google
312
+ # apps domain is prefixed if applicable.
313
+ # Corresponds to the JSON property `project`
314
+ # @return [String]
315
+ attr_accessor :project
316
+
317
+ # The URI of this resource.
318
+ # Corresponds to the JSON property `selfLink`
319
+ # @return [String]
320
+ attr_accessor :self_link
321
+
322
+ def initialize(**args)
323
+ update!(**args)
324
+ end
325
+
326
+ # Update properties of this object
327
+ def update!(**args)
328
+ @charset = args[:charset] unless args[:charset].nil?
329
+ @collation = args[:collation] unless args[:collation].nil?
330
+ @etag = args[:etag] unless args[:etag].nil?
331
+ @instance = args[:instance] unless args[:instance].nil?
332
+ @kind = args[:kind] unless args[:kind].nil?
333
+ @name = args[:name] unless args[:name].nil?
334
+ @project = args[:project] unless args[:project].nil?
335
+ @self_link = args[:self_link] unless args[:self_link].nil?
336
+ end
337
+ end
338
+
339
+ # MySQL flags for Cloud SQL instances.
340
+ class DatabaseFlags
341
+ include Google::Apis::Core::Hashable
342
+
343
+ # The name of the flag. These flags are passed at instance startup, so include
344
+ # both MySQL server options and MySQL system variables. Flags should be
345
+ # specified with underscores, not hyphens. For more information, see Configuring
346
+ # MySQL Flags in the Google Cloud SQL documentation, as well as the official
347
+ # MySQL documentation for server options and system variables.
348
+ # Corresponds to the JSON property `name`
349
+ # @return [String]
350
+ attr_accessor :name
351
+
352
+ # The value of the flag. Booleans should be set to on for true and off for false.
353
+ # This field must be omitted if the flag doesn't take a value.
354
+ # Corresponds to the JSON property `value`
355
+ # @return [String]
356
+ attr_accessor :value
357
+
358
+ def initialize(**args)
359
+ update!(**args)
360
+ end
361
+
362
+ # Update properties of this object
363
+ def update!(**args)
364
+ @name = args[:name] unless args[:name].nil?
365
+ @value = args[:value] unless args[:value].nil?
366
+ end
367
+ end
368
+
369
+ # A Cloud SQL instance resource.
370
+ class DatabaseInstance
371
+ include Google::Apis::Core::Hashable
372
+
373
+ # The current disk usage of the instance in bytes.
374
+ # Corresponds to the JSON property `currentDiskSize`
375
+ # @return [String]
376
+ attr_accessor :current_disk_size
377
+
378
+ # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults
379
+ # to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
380
+ # Corresponds to the JSON property `databaseVersion`
381
+ # @return [String]
382
+ attr_accessor :database_version
383
+
384
+ # HTTP 1.1 Entity tag for the resource.
385
+ # Corresponds to the JSON property `etag`
386
+ # @return [String]
387
+ attr_accessor :etag
388
+
389
+ # The instance type. This can be one of the following.
390
+ # CLOUD_SQL_INSTANCE: A Cloud SQL instance that is not replicating from a master.
391
+ # ON_PREMISES_INSTANCE: An instance running on the customer's premises.
392
+ # READ_REPLICA_INSTANCE: A Cloud SQL instance configured as a read-replica.
393
+ # Corresponds to the JSON property `instanceType`
394
+ # @return [String]
395
+ attr_accessor :instance_type
396
+
397
+ # The assigned IP addresses for the instance.
398
+ # Corresponds to the JSON property `ipAddresses`
399
+ # @return [Array<Google::Apis::SqladminV1beta4::IpMapping>]
400
+ attr_accessor :ip_addresses
401
+
402
+ # The IPv6 address assigned to the instance.
403
+ # Corresponds to the JSON property `ipv6Address`
404
+ # @return [String]
405
+ attr_accessor :ipv6_address
406
+
407
+ # This is always sql#instance.
408
+ # Corresponds to the JSON property `kind`
409
+ # @return [String]
410
+ attr_accessor :kind
411
+
412
+ # The name of the instance which will act as master in the replication setup.
413
+ # Corresponds to the JSON property `masterInstanceName`
414
+ # @return [String]
415
+ attr_accessor :master_instance_name
416
+
417
+ # The maximum disk size of the instance in bytes.
418
+ # Corresponds to the JSON property `maxDiskSize`
419
+ # @return [String]
420
+ attr_accessor :max_disk_size
421
+
422
+ # Name of the Cloud SQL instance. This does not include the project ID.
423
+ # Corresponds to the JSON property `name`
424
+ # @return [String]
425
+ attr_accessor :name
426
+
427
+ # On-premises instance configuration.
428
+ # Corresponds to the JSON property `onPremisesConfiguration`
429
+ # @return [Google::Apis::SqladminV1beta4::OnPremisesConfiguration]
430
+ attr_accessor :on_premises_configuration
431
+
432
+ # The project ID of the project containing the Cloud SQL instance. The Google
433
+ # apps domain is prefixed if applicable.
434
+ # Corresponds to the JSON property `project`
435
+ # @return [String]
436
+ attr_accessor :project
437
+
438
+ # The geographical region. Can be us-central, asia-east1 or europe-west1.
439
+ # Defaults to us-central. The region can not be changed after instance creation.
440
+ # Corresponds to the JSON property `region`
441
+ # @return [String]
442
+ attr_accessor :region
443
+
444
+ # Read-replica configuration for connecting to the master.
445
+ # Corresponds to the JSON property `replicaConfiguration`
446
+ # @return [Google::Apis::SqladminV1beta4::ReplicaConfiguration]
447
+ attr_accessor :replica_configuration
448
+
449
+ # The replicas of the instance.
450
+ # Corresponds to the JSON property `replicaNames`
451
+ # @return [Array<String>]
452
+ attr_accessor :replica_names
453
+
454
+ # The URI of this resource.
455
+ # Corresponds to the JSON property `selfLink`
456
+ # @return [String]
457
+ attr_accessor :self_link
458
+
459
+ # SslCerts Resource
460
+ # Corresponds to the JSON property `serverCaCert`
461
+ # @return [Google::Apis::SqladminV1beta4::SslCert]
462
+ attr_accessor :server_ca_cert
463
+
464
+ # The service account email address assigned to the instance.
465
+ # Corresponds to the JSON property `serviceAccountEmailAddress`
466
+ # @return [String]
467
+ attr_accessor :service_account_email_address
468
+
469
+ # Database instance settings.
470
+ # Corresponds to the JSON property `settings`
471
+ # @return [Google::Apis::SqladminV1beta4::Settings]
472
+ attr_accessor :settings
473
+
474
+ # The current serving state of the Cloud SQL instance. This can be one of the
475
+ # following.
476
+ # RUNNABLE: The instance is running, or is ready to run when accessed.
477
+ # SUSPENDED: The instance is not available, for example due to problems with
478
+ # billing.
479
+ # PENDING_CREATE: The instance is being created.
480
+ # MAINTENANCE: The instance is down for maintenance.
481
+ # FAILED: The instance creation failed.
482
+ # UNKNOWN_STATE: The state of the instance is unknown.
483
+ # Corresponds to the JSON property `state`
484
+ # @return [String]
485
+ attr_accessor :state
486
+
487
+ def initialize(**args)
488
+ update!(**args)
489
+ end
490
+
491
+ # Update properties of this object
492
+ def update!(**args)
493
+ @current_disk_size = args[:current_disk_size] unless args[:current_disk_size].nil?
494
+ @database_version = args[:database_version] unless args[:database_version].nil?
495
+ @etag = args[:etag] unless args[:etag].nil?
496
+ @instance_type = args[:instance_type] unless args[:instance_type].nil?
497
+ @ip_addresses = args[:ip_addresses] unless args[:ip_addresses].nil?
498
+ @ipv6_address = args[:ipv6_address] unless args[:ipv6_address].nil?
499
+ @kind = args[:kind] unless args[:kind].nil?
500
+ @master_instance_name = args[:master_instance_name] unless args[:master_instance_name].nil?
501
+ @max_disk_size = args[:max_disk_size] unless args[:max_disk_size].nil?
502
+ @name = args[:name] unless args[:name].nil?
503
+ @on_premises_configuration = args[:on_premises_configuration] unless args[:on_premises_configuration].nil?
504
+ @project = args[:project] unless args[:project].nil?
505
+ @region = args[:region] unless args[:region].nil?
506
+ @replica_configuration = args[:replica_configuration] unless args[:replica_configuration].nil?
507
+ @replica_names = args[:replica_names] unless args[:replica_names].nil?
508
+ @self_link = args[:self_link] unless args[:self_link].nil?
509
+ @server_ca_cert = args[:server_ca_cert] unless args[:server_ca_cert].nil?
510
+ @service_account_email_address = args[:service_account_email_address] unless args[:service_account_email_address].nil?
511
+ @settings = args[:settings] unless args[:settings].nil?
512
+ @state = args[:state] unless args[:state].nil?
513
+ end
514
+ end
515
+
516
+ # Database list response.
517
+ class ListDatabasesResponse
518
+ include Google::Apis::Core::Hashable
519
+
520
+ # List of database resources in the instance.
521
+ # Corresponds to the JSON property `items`
522
+ # @return [Array<Google::Apis::SqladminV1beta4::Database>]
523
+ attr_accessor :items
524
+
525
+ # This is always sql#databasesList.
526
+ # Corresponds to the JSON property `kind`
527
+ # @return [String]
528
+ attr_accessor :kind
529
+
530
+ def initialize(**args)
531
+ update!(**args)
532
+ end
533
+
534
+ # Update properties of this object
535
+ def update!(**args)
536
+ @items = args[:items] unless args[:items].nil?
537
+ @kind = args[:kind] unless args[:kind].nil?
538
+ end
539
+ end
540
+
541
+ # Database instance export context.
542
+ class ExportContext
543
+ include Google::Apis::Core::Hashable
544
+
545
+ # Options for exporting data as CSV.
546
+ # Corresponds to the JSON property `csvExportOptions`
547
+ # @return [Google::Apis::SqladminV1beta4::ExportContext::CsvExportOptions]
548
+ attr_accessor :csv_export_options
549
+
550
+ # Databases (for example, guestbook) from which the export is made. If fileType
551
+ # is SQL and no database is specified, all databases are exported. If fileType
552
+ # is CSV, you can optionally specify at most one database to export. If
553
+ # csvExportOptions.selectQuery also specifies the database, this field will be
554
+ # ignored.
555
+ # Corresponds to the JSON property `databases`
556
+ # @return [Array<String>]
557
+ attr_accessor :databases
558
+
559
+ # The file type for the specified uri.
560
+ # SQL: The file contains SQL statements.
561
+ # CSV: The file contains CSV data.
562
+ # Corresponds to the JSON property `fileType`
563
+ # @return [String]
564
+ attr_accessor :file_type
565
+
566
+ # This is always sql#exportContext.
567
+ # Corresponds to the JSON property `kind`
568
+ # @return [String]
569
+ attr_accessor :kind
570
+
571
+ # Options for exporting data as SQL statements.
572
+ # Corresponds to the JSON property `sqlExportOptions`
573
+ # @return [Google::Apis::SqladminV1beta4::ExportContext::SqlExportOptions]
574
+ attr_accessor :sql_export_options
575
+
576
+ # The path to the file in Google Cloud Storage where the export will be stored.
577
+ # The URI is in the form gs://bucketName/fileName. If the file already exists,
578
+ # the operation fails. If fileType is SQL and the filename ends with .gz, the
579
+ # contents are compressed.
580
+ # Corresponds to the JSON property `uri`
581
+ # @return [String]
582
+ attr_accessor :uri
583
+
584
+ def initialize(**args)
585
+ update!(**args)
586
+ end
587
+
588
+ # Update properties of this object
589
+ def update!(**args)
590
+ @csv_export_options = args[:csv_export_options] unless args[:csv_export_options].nil?
591
+ @databases = args[:databases] unless args[:databases].nil?
592
+ @file_type = args[:file_type] unless args[:file_type].nil?
593
+ @kind = args[:kind] unless args[:kind].nil?
594
+ @sql_export_options = args[:sql_export_options] unless args[:sql_export_options].nil?
595
+ @uri = args[:uri] unless args[:uri].nil?
596
+ end
597
+
598
+ # Options for exporting data as CSV.
599
+ class CsvExportOptions
600
+ include Google::Apis::Core::Hashable
601
+
602
+ # The select query used to extract the data.
603
+ # Corresponds to the JSON property `selectQuery`
604
+ # @return [String]
605
+ attr_accessor :select_query
606
+
607
+ def initialize(**args)
608
+ update!(**args)
609
+ end
610
+
611
+ # Update properties of this object
612
+ def update!(**args)
613
+ @select_query = args[:select_query] unless args[:select_query].nil?
614
+ end
615
+ end
616
+
617
+ # Options for exporting data as SQL statements.
618
+ class SqlExportOptions
619
+ include Google::Apis::Core::Hashable
620
+
621
+ # Tables to export, or that were exported, from the specified database. If you
622
+ # specify tables, specify one and only one database.
623
+ # Corresponds to the JSON property `tables`
624
+ # @return [Array<String>]
625
+ attr_accessor :tables
626
+
627
+ def initialize(**args)
628
+ update!(**args)
629
+ end
630
+
631
+ # Update properties of this object
632
+ def update!(**args)
633
+ @tables = args[:tables] unless args[:tables].nil?
634
+ end
635
+ end
636
+ end
637
+
638
+ # A Google Cloud SQL service flag resource.
639
+ class Flag
640
+ include Google::Apis::Core::Hashable
641
+
642
+ # For STRING flags, a list of strings that the value can be set to.
643
+ # Corresponds to the JSON property `allowedStringValues`
644
+ # @return [Array<String>]
645
+ attr_accessor :allowed_string_values
646
+
647
+ # The database version this flag applies to. Currently this can only be [
648
+ # MYSQL_5_5].
649
+ # Corresponds to the JSON property `appliesTo`
650
+ # @return [Array<String>]
651
+ attr_accessor :applies_to
652
+
653
+ # This is always sql#flag.
654
+ # Corresponds to the JSON property `kind`
655
+ # @return [String]
656
+ attr_accessor :kind
657
+
658
+ # For INTEGER flags, the maximum allowed value.
659
+ # Corresponds to the JSON property `maxValue`
660
+ # @return [String]
661
+ attr_accessor :max_value
662
+
663
+ # For INTEGER flags, the minimum allowed value.
664
+ # Corresponds to the JSON property `minValue`
665
+ # @return [String]
666
+ attr_accessor :min_value
667
+
668
+ # This is the name of the flag. Flag names always use underscores, not hyphens,
669
+ # e.g. max_allowed_packet
670
+ # Corresponds to the JSON property `name`
671
+ # @return [String]
672
+ attr_accessor :name
673
+
674
+ # The type of the flag. Flags are typed to being BOOLEAN, STRING, INTEGER or
675
+ # NONE. NONE is used for flags which do not take a value, such as
676
+ # skip_grant_tables.
677
+ # Corresponds to the JSON property `type`
678
+ # @return [String]
679
+ attr_accessor :type
680
+
681
+ def initialize(**args)
682
+ update!(**args)
683
+ end
684
+
685
+ # Update properties of this object
686
+ def update!(**args)
687
+ @allowed_string_values = args[:allowed_string_values] unless args[:allowed_string_values].nil?
688
+ @applies_to = args[:applies_to] unless args[:applies_to].nil?
689
+ @kind = args[:kind] unless args[:kind].nil?
690
+ @max_value = args[:max_value] unless args[:max_value].nil?
691
+ @min_value = args[:min_value] unless args[:min_value].nil?
692
+ @name = args[:name] unless args[:name].nil?
693
+ @type = args[:type] unless args[:type].nil?
694
+ end
695
+ end
696
+
697
+ # Flags list response.
698
+ class ListFlagsResponse
699
+ include Google::Apis::Core::Hashable
700
+
701
+ # List of flags.
702
+ # Corresponds to the JSON property `items`
703
+ # @return [Array<Google::Apis::SqladminV1beta4::Flag>]
704
+ attr_accessor :items
705
+
706
+ # This is always sql#flagsList.
707
+ # Corresponds to the JSON property `kind`
708
+ # @return [String]
709
+ attr_accessor :kind
710
+
711
+ def initialize(**args)
712
+ update!(**args)
713
+ end
714
+
715
+ # Update properties of this object
716
+ def update!(**args)
717
+ @items = args[:items] unless args[:items].nil?
718
+ @kind = args[:kind] unless args[:kind].nil?
719
+ end
720
+ end
721
+
722
+ # Database instance import context.
723
+ class ImportContext
724
+ include Google::Apis::Core::Hashable
725
+
726
+ # Options for importing data as CSV.
727
+ # Corresponds to the JSON property `csvImportOptions`
728
+ # @return [Google::Apis::SqladminV1beta4::ImportContext::CsvImportOptions]
729
+ attr_accessor :csv_import_options
730
+
731
+ # The database (for example, guestbook) to which the import is made. If fileType
732
+ # is SQL and no database is specified, it is assumed that the database is
733
+ # specified in the file to be imported. If fileType is CSV, it must be specified.
734
+ # Corresponds to the JSON property `database`
735
+ # @return [String]
736
+ attr_accessor :database
737
+
738
+ # The file type for the specified uri.
739
+ # SQL: The file contains SQL statements.
740
+ # CSV: The file contains CSV data.
741
+ # Corresponds to the JSON property `fileType`
742
+ # @return [String]
743
+ attr_accessor :file_type
744
+
745
+ # This is always sql#importContext.
746
+ # Corresponds to the JSON property `kind`
747
+ # @return [String]
748
+ attr_accessor :kind
749
+
750
+ # A path to the file in Google Cloud Storage from which the import is made. The
751
+ # URI is in the form gs://bucketName/fileName. Compressed gzip files (.gz) are
752
+ # supported when fileType is SQL.
753
+ # Corresponds to the JSON property `uri`
754
+ # @return [String]
755
+ attr_accessor :uri
756
+
757
+ def initialize(**args)
758
+ update!(**args)
759
+ end
760
+
761
+ # Update properties of this object
762
+ def update!(**args)
763
+ @csv_import_options = args[:csv_import_options] unless args[:csv_import_options].nil?
764
+ @database = args[:database] unless args[:database].nil?
765
+ @file_type = args[:file_type] unless args[:file_type].nil?
766
+ @kind = args[:kind] unless args[:kind].nil?
767
+ @uri = args[:uri] unless args[:uri].nil?
768
+ end
769
+
770
+ # Options for importing data as CSV.
771
+ class CsvImportOptions
772
+ include Google::Apis::Core::Hashable
773
+
774
+ # The columns to which CSV data is imported. If not specified, all columns of
775
+ # the database table are loaded with CSV data.
776
+ # Corresponds to the JSON property `columns`
777
+ # @return [Array<String>]
778
+ attr_accessor :columns
779
+
780
+ # The table to which CSV data is imported.
781
+ # Corresponds to the JSON property `table`
782
+ # @return [String]
783
+ attr_accessor :table
784
+
785
+ def initialize(**args)
786
+ update!(**args)
787
+ end
788
+
789
+ # Update properties of this object
790
+ def update!(**args)
791
+ @columns = args[:columns] unless args[:columns].nil?
792
+ @table = args[:table] unless args[:table].nil?
793
+ end
794
+ end
795
+ end
796
+
797
+ # Database instance clone request.
798
+ class CloneInstancesRequest
799
+ include Google::Apis::Core::Hashable
800
+
801
+ # Database instance clone context.
802
+ # Corresponds to the JSON property `cloneContext`
803
+ # @return [Google::Apis::SqladminV1beta4::CloneContext]
804
+ attr_accessor :clone_context
805
+
806
+ def initialize(**args)
807
+ update!(**args)
808
+ end
809
+
810
+ # Update properties of this object
811
+ def update!(**args)
812
+ @clone_context = args[:clone_context] unless args[:clone_context].nil?
813
+ end
814
+ end
815
+
816
+ # Database instance export request.
817
+ class ExportInstancesRequest
818
+ include Google::Apis::Core::Hashable
819
+
820
+ # Database instance export context.
821
+ # Corresponds to the JSON property `exportContext`
822
+ # @return [Google::Apis::SqladminV1beta4::ExportContext]
823
+ attr_accessor :export_context
824
+
825
+ def initialize(**args)
826
+ update!(**args)
827
+ end
828
+
829
+ # Update properties of this object
830
+ def update!(**args)
831
+ @export_context = args[:export_context] unless args[:export_context].nil?
832
+ end
833
+ end
834
+
835
+ # Database instance import request.
836
+ class ImportInstancesRequest
837
+ include Google::Apis::Core::Hashable
838
+
839
+ # Database instance import context.
840
+ # Corresponds to the JSON property `importContext`
841
+ # @return [Google::Apis::SqladminV1beta4::ImportContext]
842
+ attr_accessor :import_context
843
+
844
+ def initialize(**args)
845
+ update!(**args)
846
+ end
847
+
848
+ # Update properties of this object
849
+ def update!(**args)
850
+ @import_context = args[:import_context] unless args[:import_context].nil?
851
+ end
852
+ end
853
+
854
+ # Database instances list response.
855
+ class ListInstancesResponse
856
+ include Google::Apis::Core::Hashable
857
+
858
+ # List of database instance resources.
859
+ # Corresponds to the JSON property `items`
860
+ # @return [Array<Google::Apis::SqladminV1beta4::DatabaseInstance>]
861
+ attr_accessor :items
862
+
863
+ # This is always sql#instancesList.
864
+ # Corresponds to the JSON property `kind`
865
+ # @return [String]
866
+ attr_accessor :kind
867
+
868
+ # The continuation token, used to page through large result sets. Provide this
869
+ # value in a subsequent request to return the next page of results.
870
+ # Corresponds to the JSON property `nextPageToken`
871
+ # @return [String]
872
+ attr_accessor :next_page_token
873
+
874
+ def initialize(**args)
875
+ update!(**args)
876
+ end
877
+
878
+ # Update properties of this object
879
+ def update!(**args)
880
+ @items = args[:items] unless args[:items].nil?
881
+ @kind = args[:kind] unless args[:kind].nil?
882
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
883
+ end
884
+ end
885
+
886
+ # Database instance restore backup request.
887
+ class RestoreInstancesBackupRequest
888
+ include Google::Apis::Core::Hashable
889
+
890
+ # Database instance restore from backup context.
891
+ # Corresponds to the JSON property `restoreBackupContext`
892
+ # @return [Google::Apis::SqladminV1beta4::RestoreBackupContext]
893
+ attr_accessor :restore_backup_context
894
+
895
+ def initialize(**args)
896
+ update!(**args)
897
+ end
898
+
899
+ # Update properties of this object
900
+ def update!(**args)
901
+ @restore_backup_context = args[:restore_backup_context] unless args[:restore_backup_context].nil?
902
+ end
903
+ end
904
+
905
+ # IP Management configuration.
906
+ class IpConfiguration
907
+ include Google::Apis::Core::Hashable
908
+
909
+ # The list of external networks that are allowed to connect to the instance
910
+ # using the IP. In CIDR notation, also known as 'slash' notation (e.g. 192.168.
911
+ # 100.0/24).
912
+ # Corresponds to the JSON property `authorizedNetworks`
913
+ # @return [Array<Google::Apis::SqladminV1beta4::AclEntry>]
914
+ attr_accessor :authorized_networks
915
+
916
+ # Whether the instance should be assigned an IP address or not.
917
+ # Corresponds to the JSON property `ipv4Enabled`
918
+ # @return [Boolean]
919
+ attr_accessor :ipv4_enabled
920
+ alias_method :ipv4_enabled?, :ipv4_enabled
921
+
922
+ # Whether the mysqld should default to 'REQUIRE X509' for users connecting over
923
+ # IP.
924
+ # Corresponds to the JSON property `requireSsl`
925
+ # @return [Boolean]
926
+ attr_accessor :require_ssl
927
+ alias_method :require_ssl?, :require_ssl
928
+
929
+ def initialize(**args)
930
+ update!(**args)
931
+ end
932
+
933
+ # Update properties of this object
934
+ def update!(**args)
935
+ @authorized_networks = args[:authorized_networks] unless args[:authorized_networks].nil?
936
+ @ipv4_enabled = args[:ipv4_enabled] unless args[:ipv4_enabled].nil?
937
+ @require_ssl = args[:require_ssl] unless args[:require_ssl].nil?
938
+ end
939
+ end
940
+
941
+ # Database instance IP Mapping.
942
+ class IpMapping
943
+ include Google::Apis::Core::Hashable
944
+
945
+ # The IP address assigned.
946
+ # Corresponds to the JSON property `ipAddress`
947
+ # @return [String]
948
+ attr_accessor :ip_address
949
+
950
+ # The due time for this IP to be retired in RFC 3339 format, for example 2012-11-
951
+ # 15T16:19:00.094Z. This field is only available when the IP is scheduled to be
952
+ # retired.
953
+ # Corresponds to the JSON property `timeToRetire`
954
+ # @return [DateTime]
955
+ attr_accessor :time_to_retire
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @ip_address = args[:ip_address] unless args[:ip_address].nil?
964
+ @time_to_retire = args[:time_to_retire] unless args[:time_to_retire].nil?
965
+ end
966
+ end
967
+
968
+ # Preferred location. This specifies where a Cloud SQL instance should
969
+ # preferably be located, either in a specific Compute Engine zone, or co-located
970
+ # with an App Engine application. Note that if the preferred location is not
971
+ # available, the instance will be located as close as possible within the region.
972
+ # Only one location may be specified.
973
+ class LocationPreference
974
+ include Google::Apis::Core::Hashable
975
+
976
+ # The AppEngine application to follow, it must be in the same region as the
977
+ # Cloud SQL instance.
978
+ # Corresponds to the JSON property `followGaeApplication`
979
+ # @return [String]
980
+ attr_accessor :follow_gae_application
981
+
982
+ # This is always sql#locationPreference.
983
+ # Corresponds to the JSON property `kind`
984
+ # @return [String]
985
+ attr_accessor :kind
986
+
987
+ # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
988
+ # Corresponds to the JSON property `zone`
989
+ # @return [String]
990
+ attr_accessor :zone
991
+
992
+ def initialize(**args)
993
+ update!(**args)
994
+ end
995
+
996
+ # Update properties of this object
997
+ def update!(**args)
998
+ @follow_gae_application = args[:follow_gae_application] unless args[:follow_gae_application].nil?
999
+ @kind = args[:kind] unless args[:kind].nil?
1000
+ @zone = args[:zone] unless args[:zone].nil?
1001
+ end
1002
+ end
1003
+
1004
+ # Read-replica configuration specific to MySQL databases.
1005
+ class MySqlReplicaConfiguration
1006
+ include Google::Apis::Core::Hashable
1007
+
1008
+ # PEM representation of the trusted CA's x509 certificate.
1009
+ # Corresponds to the JSON property `caCertificate`
1010
+ # @return [String]
1011
+ attr_accessor :ca_certificate
1012
+
1013
+ # PEM representation of the slave's x509 certificate.
1014
+ # Corresponds to the JSON property `clientCertificate`
1015
+ # @return [String]
1016
+ attr_accessor :client_certificate
1017
+
1018
+ # PEM representation of the slave's private key. The corresponsing public key is
1019
+ # encoded in the client's certificate.
1020
+ # Corresponds to the JSON property `clientKey`
1021
+ # @return [String]
1022
+ attr_accessor :client_key
1023
+
1024
+ # Seconds to wait between connect retries. MySQL's default is 60 seconds.
1025
+ # Corresponds to the JSON property `connectRetryInterval`
1026
+ # @return [Fixnum]
1027
+ attr_accessor :connect_retry_interval
1028
+
1029
+ # Path to a SQL dump file in Google Cloud Storage from which the slave instance
1030
+ # is to be created. The URI is in the form gs://bucketName/fileName. Compressed
1031
+ # gzip files (.gz) are also supported. Dumps should have the binlog co-ordinates
1032
+ # from which replication should begin. This can be accomplished by setting --
1033
+ # master-data to 1 when using mysqldump.
1034
+ # Corresponds to the JSON property `dumpFilePath`
1035
+ # @return [String]
1036
+ attr_accessor :dump_file_path
1037
+
1038
+ # This is always sql#mysqlReplicaConfiguration.
1039
+ # Corresponds to the JSON property `kind`
1040
+ # @return [String]
1041
+ attr_accessor :kind
1042
+
1043
+ # Interval in milliseconds between replication heartbeats.
1044
+ # Corresponds to the JSON property `masterHeartbeatPeriod`
1045
+ # @return [String]
1046
+ attr_accessor :master_heartbeat_period
1047
+
1048
+ # The password for the replication connection.
1049
+ # Corresponds to the JSON property `password`
1050
+ # @return [String]
1051
+ attr_accessor :password
1052
+
1053
+ # A list of permissible ciphers to use for SSL encryption.
1054
+ # Corresponds to the JSON property `sslCipher`
1055
+ # @return [String]
1056
+ attr_accessor :ssl_cipher
1057
+
1058
+ # The username for the replication connection.
1059
+ # Corresponds to the JSON property `username`
1060
+ # @return [String]
1061
+ attr_accessor :username
1062
+
1063
+ # Whether or not to check the master's Common Name value in the certificate that
1064
+ # it sends during the SSL handshake.
1065
+ # Corresponds to the JSON property `verifyServerCertificate`
1066
+ # @return [Boolean]
1067
+ attr_accessor :verify_server_certificate
1068
+ alias_method :verify_server_certificate?, :verify_server_certificate
1069
+
1070
+ def initialize(**args)
1071
+ update!(**args)
1072
+ end
1073
+
1074
+ # Update properties of this object
1075
+ def update!(**args)
1076
+ @ca_certificate = args[:ca_certificate] unless args[:ca_certificate].nil?
1077
+ @client_certificate = args[:client_certificate] unless args[:client_certificate].nil?
1078
+ @client_key = args[:client_key] unless args[:client_key].nil?
1079
+ @connect_retry_interval = args[:connect_retry_interval] unless args[:connect_retry_interval].nil?
1080
+ @dump_file_path = args[:dump_file_path] unless args[:dump_file_path].nil?
1081
+ @kind = args[:kind] unless args[:kind].nil?
1082
+ @master_heartbeat_period = args[:master_heartbeat_period] unless args[:master_heartbeat_period].nil?
1083
+ @password = args[:password] unless args[:password].nil?
1084
+ @ssl_cipher = args[:ssl_cipher] unless args[:ssl_cipher].nil?
1085
+ @username = args[:username] unless args[:username].nil?
1086
+ @verify_server_certificate = args[:verify_server_certificate] unless args[:verify_server_certificate].nil?
1087
+ end
1088
+ end
1089
+
1090
+ # On-premises instance configuration.
1091
+ class OnPremisesConfiguration
1092
+ include Google::Apis::Core::Hashable
1093
+
1094
+ # The host and port of the on-premises instance in host:port format
1095
+ # Corresponds to the JSON property `hostPort`
1096
+ # @return [String]
1097
+ attr_accessor :host_port
1098
+
1099
+ # This is always sql#onPremisesConfiguration.
1100
+ # Corresponds to the JSON property `kind`
1101
+ # @return [String]
1102
+ attr_accessor :kind
1103
+
1104
+ def initialize(**args)
1105
+ update!(**args)
1106
+ end
1107
+
1108
+ # Update properties of this object
1109
+ def update!(**args)
1110
+ @host_port = args[:host_port] unless args[:host_port].nil?
1111
+ @kind = args[:kind] unless args[:kind].nil?
1112
+ end
1113
+ end
1114
+
1115
+ # An Operations resource contains information about database instance operations
1116
+ # such as create, delete, and restart. Operations resources are created in
1117
+ # response to operations that were initiated; you never create them directly.
1118
+ class Operation
1119
+ include Google::Apis::Core::Hashable
1120
+
1121
+ # The time this operation finished in UTC timezone in RFC 3339 format, for
1122
+ # example 2012-11-15T16:19:00.094Z.
1123
+ # Corresponds to the JSON property `endTime`
1124
+ # @return [DateTime]
1125
+ attr_accessor :end_time
1126
+
1127
+ # Database instance operation errors list wrapper.
1128
+ # Corresponds to the JSON property `error`
1129
+ # @return [Google::Apis::SqladminV1beta4::OperationErrors]
1130
+ attr_accessor :error
1131
+
1132
+ # Database instance export context.
1133
+ # Corresponds to the JSON property `exportContext`
1134
+ # @return [Google::Apis::SqladminV1beta4::ExportContext]
1135
+ attr_accessor :export_context
1136
+
1137
+ # Database instance import context.
1138
+ # Corresponds to the JSON property `importContext`
1139
+ # @return [Google::Apis::SqladminV1beta4::ImportContext]
1140
+ attr_accessor :import_context
1141
+
1142
+ # The time this operation was enqueued in UTC timezone in RFC 3339 format, for
1143
+ # example 2012-11-15T16:19:00.094Z.
1144
+ # Corresponds to the JSON property `insertTime`
1145
+ # @return [DateTime]
1146
+ attr_accessor :insert_time
1147
+
1148
+ # This is always sql#operation.
1149
+ # Corresponds to the JSON property `kind`
1150
+ # @return [String]
1151
+ attr_accessor :kind
1152
+
1153
+ # An identifier that uniquely identifies the operation. You can use this
1154
+ # identifier to retrieve the Operations resource that has information about the
1155
+ # operation.
1156
+ # Corresponds to the JSON property `name`
1157
+ # @return [String]
1158
+ attr_accessor :name
1159
+
1160
+ # The type of the operation. Valid values are CREATE, DELETE, UPDATE, RESTART,
1161
+ # IMPORT, EXPORT, BACKUP_VOLUME, RESTORE_VOLUME, CREATE_USER, DELETE_USER,
1162
+ # CREATE_DATABASE, DELETE_DATABASE .
1163
+ # Corresponds to the JSON property `operationType`
1164
+ # @return [String]
1165
+ attr_accessor :operation_type
1166
+
1167
+ # The URI of this resource.
1168
+ # Corresponds to the JSON property `selfLink`
1169
+ # @return [String]
1170
+ attr_accessor :self_link
1171
+
1172
+ # The time this operation actually started in UTC timezone in RFC 3339 format,
1173
+ # for example 2012-11-15T16:19:00.094Z.
1174
+ # Corresponds to the JSON property `startTime`
1175
+ # @return [DateTime]
1176
+ attr_accessor :start_time
1177
+
1178
+ # The status of an operation. Valid values are PENDING, RUNNING, DONE, UNKNOWN.
1179
+ # Corresponds to the JSON property `status`
1180
+ # @return [String]
1181
+ attr_accessor :status
1182
+
1183
+ # Name of the database instance related to this operation.
1184
+ # Corresponds to the JSON property `targetId`
1185
+ # @return [String]
1186
+ attr_accessor :target_id
1187
+
1188
+ # The URI of the instance related to the operation.
1189
+ # Corresponds to the JSON property `targetLink`
1190
+ # @return [String]
1191
+ attr_accessor :target_link
1192
+
1193
+ # The project ID of the target instance related to this operation.
1194
+ # Corresponds to the JSON property `targetProject`
1195
+ # @return [String]
1196
+ attr_accessor :target_project
1197
+
1198
+ # The email address of the user who initiated this operation.
1199
+ # Corresponds to the JSON property `user`
1200
+ # @return [String]
1201
+ attr_accessor :user
1202
+
1203
+ def initialize(**args)
1204
+ update!(**args)
1205
+ end
1206
+
1207
+ # Update properties of this object
1208
+ def update!(**args)
1209
+ @end_time = args[:end_time] unless args[:end_time].nil?
1210
+ @error = args[:error] unless args[:error].nil?
1211
+ @export_context = args[:export_context] unless args[:export_context].nil?
1212
+ @import_context = args[:import_context] unless args[:import_context].nil?
1213
+ @insert_time = args[:insert_time] unless args[:insert_time].nil?
1214
+ @kind = args[:kind] unless args[:kind].nil?
1215
+ @name = args[:name] unless args[:name].nil?
1216
+ @operation_type = args[:operation_type] unless args[:operation_type].nil?
1217
+ @self_link = args[:self_link] unless args[:self_link].nil?
1218
+ @start_time = args[:start_time] unless args[:start_time].nil?
1219
+ @status = args[:status] unless args[:status].nil?
1220
+ @target_id = args[:target_id] unless args[:target_id].nil?
1221
+ @target_link = args[:target_link] unless args[:target_link].nil?
1222
+ @target_project = args[:target_project] unless args[:target_project].nil?
1223
+ @user = args[:user] unless args[:user].nil?
1224
+ end
1225
+ end
1226
+
1227
+ # Database instance operation error.
1228
+ class OperationError
1229
+ include Google::Apis::Core::Hashable
1230
+
1231
+ # Identifies the specific error that occurred.
1232
+ # Corresponds to the JSON property `code`
1233
+ # @return [String]
1234
+ attr_accessor :code
1235
+
1236
+ # This is always sql#operationError.
1237
+ # Corresponds to the JSON property `kind`
1238
+ # @return [String]
1239
+ attr_accessor :kind
1240
+
1241
+ # Additional information about the error encountered.
1242
+ # Corresponds to the JSON property `message`
1243
+ # @return [String]
1244
+ attr_accessor :message
1245
+
1246
+ def initialize(**args)
1247
+ update!(**args)
1248
+ end
1249
+
1250
+ # Update properties of this object
1251
+ def update!(**args)
1252
+ @code = args[:code] unless args[:code].nil?
1253
+ @kind = args[:kind] unless args[:kind].nil?
1254
+ @message = args[:message] unless args[:message].nil?
1255
+ end
1256
+ end
1257
+
1258
+ # Database instance operation errors list wrapper.
1259
+ class OperationErrors
1260
+ include Google::Apis::Core::Hashable
1261
+
1262
+ # The list of errors encountered while processing this operation.
1263
+ # Corresponds to the JSON property `errors`
1264
+ # @return [Array<Google::Apis::SqladminV1beta4::OperationError>]
1265
+ attr_accessor :errors
1266
+
1267
+ # This is always sql#operationErrors.
1268
+ # Corresponds to the JSON property `kind`
1269
+ # @return [String]
1270
+ attr_accessor :kind
1271
+
1272
+ def initialize(**args)
1273
+ update!(**args)
1274
+ end
1275
+
1276
+ # Update properties of this object
1277
+ def update!(**args)
1278
+ @errors = args[:errors] unless args[:errors].nil?
1279
+ @kind = args[:kind] unless args[:kind].nil?
1280
+ end
1281
+ end
1282
+
1283
+ # Database instance list operations response.
1284
+ class ListOperationsResponse
1285
+ include Google::Apis::Core::Hashable
1286
+
1287
+ # List of operation resources.
1288
+ # Corresponds to the JSON property `items`
1289
+ # @return [Array<Google::Apis::SqladminV1beta4::Operation>]
1290
+ attr_accessor :items
1291
+
1292
+ # This is always sql#operationsList.
1293
+ # Corresponds to the JSON property `kind`
1294
+ # @return [String]
1295
+ attr_accessor :kind
1296
+
1297
+ # The continuation token, used to page through large result sets. Provide this
1298
+ # value in a subsequent request to return the next page of results.
1299
+ # Corresponds to the JSON property `nextPageToken`
1300
+ # @return [String]
1301
+ attr_accessor :next_page_token
1302
+
1303
+ def initialize(**args)
1304
+ update!(**args)
1305
+ end
1306
+
1307
+ # Update properties of this object
1308
+ def update!(**args)
1309
+ @items = args[:items] unless args[:items].nil?
1310
+ @kind = args[:kind] unless args[:kind].nil?
1311
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1312
+ end
1313
+ end
1314
+
1315
+ # Read-replica configuration for connecting to the master.
1316
+ class ReplicaConfiguration
1317
+ include Google::Apis::Core::Hashable
1318
+
1319
+ # This is always sql#replicaConfiguration.
1320
+ # Corresponds to the JSON property `kind`
1321
+ # @return [String]
1322
+ attr_accessor :kind
1323
+
1324
+ # Read-replica configuration specific to MySQL databases.
1325
+ # Corresponds to the JSON property `mysqlReplicaConfiguration`
1326
+ # @return [Google::Apis::SqladminV1beta4::MySqlReplicaConfiguration]
1327
+ attr_accessor :mysql_replica_configuration
1328
+
1329
+ def initialize(**args)
1330
+ update!(**args)
1331
+ end
1332
+
1333
+ # Update properties of this object
1334
+ def update!(**args)
1335
+ @kind = args[:kind] unless args[:kind].nil?
1336
+ @mysql_replica_configuration = args[:mysql_replica_configuration] unless args[:mysql_replica_configuration].nil?
1337
+ end
1338
+ end
1339
+
1340
+ # Database instance restore from backup context.
1341
+ class RestoreBackupContext
1342
+ include Google::Apis::Core::Hashable
1343
+
1344
+ # The ID of the backup run to restore from.
1345
+ # Corresponds to the JSON property `backupRunId`
1346
+ # @return [String]
1347
+ attr_accessor :backup_run_id
1348
+
1349
+ # The ID of the instance that the backup was taken from.
1350
+ # Corresponds to the JSON property `instanceId`
1351
+ # @return [String]
1352
+ attr_accessor :instance_id
1353
+
1354
+ # This is always sql#restoreBackupContext.
1355
+ # Corresponds to the JSON property `kind`
1356
+ # @return [String]
1357
+ attr_accessor :kind
1358
+
1359
+ def initialize(**args)
1360
+ update!(**args)
1361
+ end
1362
+
1363
+ # Update properties of this object
1364
+ def update!(**args)
1365
+ @backup_run_id = args[:backup_run_id] unless args[:backup_run_id].nil?
1366
+ @instance_id = args[:instance_id] unless args[:instance_id].nil?
1367
+ @kind = args[:kind] unless args[:kind].nil?
1368
+ end
1369
+ end
1370
+
1371
+ # Database instance settings.
1372
+ class Settings
1373
+ include Google::Apis::Core::Hashable
1374
+
1375
+ # The activation policy for this instance. This specifies when the instance
1376
+ # should be activated and is applicable only when the instance state is RUNNABLE.
1377
+ # This can be one of the following.
1378
+ # ALWAYS: The instance should always be active.
1379
+ # NEVER: The instance should never be activated.
1380
+ # ON_DEMAND: The instance is activated upon receiving requests.
1381
+ # Corresponds to the JSON property `activationPolicy`
1382
+ # @return [String]
1383
+ attr_accessor :activation_policy
1384
+
1385
+ # The App Engine app IDs that can access this instance.
1386
+ # Corresponds to the JSON property `authorizedGaeApplications`
1387
+ # @return [Array<String>]
1388
+ attr_accessor :authorized_gae_applications
1389
+
1390
+ # Database instance backup configuration.
1391
+ # Corresponds to the JSON property `backupConfiguration`
1392
+ # @return [Google::Apis::SqladminV1beta4::BackupConfiguration]
1393
+ attr_accessor :backup_configuration
1394
+
1395
+ # Configuration specific to read replica instances. Indicates whether database
1396
+ # flags for crash-safe replication are enabled.
1397
+ # Corresponds to the JSON property `crashSafeReplicationEnabled`
1398
+ # @return [Boolean]
1399
+ attr_accessor :crash_safe_replication_enabled
1400
+ alias_method :crash_safe_replication_enabled?, :crash_safe_replication_enabled
1401
+
1402
+ # The database flags passed to the instance at startup.
1403
+ # Corresponds to the JSON property `databaseFlags`
1404
+ # @return [Array<Google::Apis::SqladminV1beta4::DatabaseFlags>]
1405
+ attr_accessor :database_flags
1406
+
1407
+ # Configuration specific to read replica instances. Indicates whether
1408
+ # replication is enabled or not.
1409
+ # Corresponds to the JSON property `databaseReplicationEnabled`
1410
+ # @return [Boolean]
1411
+ attr_accessor :database_replication_enabled
1412
+ alias_method :database_replication_enabled?, :database_replication_enabled
1413
+
1414
+ # IP Management configuration.
1415
+ # Corresponds to the JSON property `ipConfiguration`
1416
+ # @return [Google::Apis::SqladminV1beta4::IpConfiguration]
1417
+ attr_accessor :ip_configuration
1418
+
1419
+ # This is always sql#settings.
1420
+ # Corresponds to the JSON property `kind`
1421
+ # @return [String]
1422
+ attr_accessor :kind
1423
+
1424
+ # Preferred location. This specifies where a Cloud SQL instance should
1425
+ # preferably be located, either in a specific Compute Engine zone, or co-located
1426
+ # with an App Engine application. Note that if the preferred location is not
1427
+ # available, the instance will be located as close as possible within the region.
1428
+ # Only one location may be specified.
1429
+ # Corresponds to the JSON property `locationPreference`
1430
+ # @return [Google::Apis::SqladminV1beta4::LocationPreference]
1431
+ attr_accessor :location_preference
1432
+
1433
+ # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
1434
+ # Corresponds to the JSON property `pricingPlan`
1435
+ # @return [String]
1436
+ attr_accessor :pricing_plan
1437
+
1438
+ # The type of replication this instance uses. This can be either ASYNCHRONOUS or
1439
+ # SYNCHRONOUS.
1440
+ # Corresponds to the JSON property `replicationType`
1441
+ # @return [String]
1442
+ attr_accessor :replication_type
1443
+
1444
+ # The version of instance settings. This is a required field for update method
1445
+ # to make sure concurrent updates are handled properly. During update, use the
1446
+ # most recent settingsVersion value for this instance and do not try to update
1447
+ # this value.
1448
+ # Corresponds to the JSON property `settingsVersion`
1449
+ # @return [String]
1450
+ attr_accessor :settings_version
1451
+
1452
+ # The tier of service for this instance, for example D1, D2. For more
1453
+ # information, see pricing.
1454
+ # Corresponds to the JSON property `tier`
1455
+ # @return [String]
1456
+ attr_accessor :tier
1457
+
1458
+ def initialize(**args)
1459
+ update!(**args)
1460
+ end
1461
+
1462
+ # Update properties of this object
1463
+ def update!(**args)
1464
+ @activation_policy = args[:activation_policy] unless args[:activation_policy].nil?
1465
+ @authorized_gae_applications = args[:authorized_gae_applications] unless args[:authorized_gae_applications].nil?
1466
+ @backup_configuration = args[:backup_configuration] unless args[:backup_configuration].nil?
1467
+ @crash_safe_replication_enabled = args[:crash_safe_replication_enabled] unless args[:crash_safe_replication_enabled].nil?
1468
+ @database_flags = args[:database_flags] unless args[:database_flags].nil?
1469
+ @database_replication_enabled = args[:database_replication_enabled] unless args[:database_replication_enabled].nil?
1470
+ @ip_configuration = args[:ip_configuration] unless args[:ip_configuration].nil?
1471
+ @kind = args[:kind] unless args[:kind].nil?
1472
+ @location_preference = args[:location_preference] unless args[:location_preference].nil?
1473
+ @pricing_plan = args[:pricing_plan] unless args[:pricing_plan].nil?
1474
+ @replication_type = args[:replication_type] unless args[:replication_type].nil?
1475
+ @settings_version = args[:settings_version] unless args[:settings_version].nil?
1476
+ @tier = args[:tier] unless args[:tier].nil?
1477
+ end
1478
+ end
1479
+
1480
+ # SslCerts Resource
1481
+ class SslCert
1482
+ include Google::Apis::Core::Hashable
1483
+
1484
+ # PEM representation.
1485
+ # Corresponds to the JSON property `cert`
1486
+ # @return [String]
1487
+ attr_accessor :cert
1488
+
1489
+ # Serial number, as extracted from the certificate.
1490
+ # Corresponds to the JSON property `certSerialNumber`
1491
+ # @return [String]
1492
+ attr_accessor :cert_serial_number
1493
+
1494
+ # User supplied name. Constrained to [a-zA-Z.-_ ]+.
1495
+ # Corresponds to the JSON property `commonName`
1496
+ # @return [String]
1497
+ attr_accessor :common_name
1498
+
1499
+ # The time when the certificate was created in RFC 3339 format, for example 2012-
1500
+ # 11-15T16:19:00.094Z
1501
+ # Corresponds to the JSON property `createTime`
1502
+ # @return [DateTime]
1503
+ attr_accessor :create_time
1504
+
1505
+ # The time when the certificate expires in RFC 3339 format, for example 2012-11-
1506
+ # 15T16:19:00.094Z.
1507
+ # Corresponds to the JSON property `expirationTime`
1508
+ # @return [DateTime]
1509
+ attr_accessor :expiration_time
1510
+
1511
+ # Name of the database instance.
1512
+ # Corresponds to the JSON property `instance`
1513
+ # @return [String]
1514
+ attr_accessor :instance
1515
+
1516
+ # This is always sql#sslCert.
1517
+ # Corresponds to the JSON property `kind`
1518
+ # @return [String]
1519
+ attr_accessor :kind
1520
+
1521
+ # The URI of this resource.
1522
+ # Corresponds to the JSON property `selfLink`
1523
+ # @return [String]
1524
+ attr_accessor :self_link
1525
+
1526
+ # Sha1 Fingerprint.
1527
+ # Corresponds to the JSON property `sha1Fingerprint`
1528
+ # @return [String]
1529
+ attr_accessor :sha1_fingerprint
1530
+
1531
+ def initialize(**args)
1532
+ update!(**args)
1533
+ end
1534
+
1535
+ # Update properties of this object
1536
+ def update!(**args)
1537
+ @cert = args[:cert] unless args[:cert].nil?
1538
+ @cert_serial_number = args[:cert_serial_number] unless args[:cert_serial_number].nil?
1539
+ @common_name = args[:common_name] unless args[:common_name].nil?
1540
+ @create_time = args[:create_time] unless args[:create_time].nil?
1541
+ @expiration_time = args[:expiration_time] unless args[:expiration_time].nil?
1542
+ @instance = args[:instance] unless args[:instance].nil?
1543
+ @kind = args[:kind] unless args[:kind].nil?
1544
+ @self_link = args[:self_link] unless args[:self_link].nil?
1545
+ @sha1_fingerprint = args[:sha1_fingerprint] unless args[:sha1_fingerprint].nil?
1546
+ end
1547
+ end
1548
+
1549
+ # SslCertDetail.
1550
+ class SslCertDetail
1551
+ include Google::Apis::Core::Hashable
1552
+
1553
+ # SslCerts Resource
1554
+ # Corresponds to the JSON property `certInfo`
1555
+ # @return [Google::Apis::SqladminV1beta4::SslCert]
1556
+ attr_accessor :cert_info
1557
+
1558
+ # The private key for the client cert, in pem format. Keep private in order to
1559
+ # protect your security.
1560
+ # Corresponds to the JSON property `certPrivateKey`
1561
+ # @return [String]
1562
+ attr_accessor :cert_private_key
1563
+
1564
+ def initialize(**args)
1565
+ update!(**args)
1566
+ end
1567
+
1568
+ # Update properties of this object
1569
+ def update!(**args)
1570
+ @cert_info = args[:cert_info] unless args[:cert_info].nil?
1571
+ @cert_private_key = args[:cert_private_key] unless args[:cert_private_key].nil?
1572
+ end
1573
+ end
1574
+
1575
+ # SslCerts insert request.
1576
+ class InsertSslCertsRequest
1577
+ include Google::Apis::Core::Hashable
1578
+
1579
+ # User supplied name. Must be a distinct name from the other certificates for
1580
+ # this instance. New certificates will not be usable until the instance is
1581
+ # restarted.
1582
+ # Corresponds to the JSON property `commonName`
1583
+ # @return [String]
1584
+ attr_accessor :common_name
1585
+
1586
+ def initialize(**args)
1587
+ update!(**args)
1588
+ end
1589
+
1590
+ # Update properties of this object
1591
+ def update!(**args)
1592
+ @common_name = args[:common_name] unless args[:common_name].nil?
1593
+ end
1594
+ end
1595
+
1596
+ # SslCert insert response.
1597
+ class InsertSslCertsResponse
1598
+ include Google::Apis::Core::Hashable
1599
+
1600
+ # SslCertDetail.
1601
+ # Corresponds to the JSON property `clientCert`
1602
+ # @return [Google::Apis::SqladminV1beta4::SslCertDetail]
1603
+ attr_accessor :client_cert
1604
+
1605
+ # This is always sql#sslCertsInsert.
1606
+ # Corresponds to the JSON property `kind`
1607
+ # @return [String]
1608
+ attr_accessor :kind
1609
+
1610
+ # SslCerts Resource
1611
+ # Corresponds to the JSON property `serverCaCert`
1612
+ # @return [Google::Apis::SqladminV1beta4::SslCert]
1613
+ attr_accessor :server_ca_cert
1614
+
1615
+ def initialize(**args)
1616
+ update!(**args)
1617
+ end
1618
+
1619
+ # Update properties of this object
1620
+ def update!(**args)
1621
+ @client_cert = args[:client_cert] unless args[:client_cert].nil?
1622
+ @kind = args[:kind] unless args[:kind].nil?
1623
+ @server_ca_cert = args[:server_ca_cert] unless args[:server_ca_cert].nil?
1624
+ end
1625
+ end
1626
+
1627
+ # SslCerts list response.
1628
+ class ListSslCertsResponse
1629
+ include Google::Apis::Core::Hashable
1630
+
1631
+ # List of client certificates for the instance.
1632
+ # Corresponds to the JSON property `items`
1633
+ # @return [Array<Google::Apis::SqladminV1beta4::SslCert>]
1634
+ attr_accessor :items
1635
+
1636
+ # This is always sql#sslCertsList.
1637
+ # Corresponds to the JSON property `kind`
1638
+ # @return [String]
1639
+ attr_accessor :kind
1640
+
1641
+ def initialize(**args)
1642
+ update!(**args)
1643
+ end
1644
+
1645
+ # Update properties of this object
1646
+ def update!(**args)
1647
+ @items = args[:items] unless args[:items].nil?
1648
+ @kind = args[:kind] unless args[:kind].nil?
1649
+ end
1650
+ end
1651
+
1652
+ # A Google Cloud SQL service tier resource.
1653
+ class Tier
1654
+ include Google::Apis::Core::Hashable
1655
+
1656
+ # The maximum disk size of this tier in bytes.
1657
+ # Corresponds to the JSON property `DiskQuota`
1658
+ # @return [String]
1659
+ attr_accessor :disk_quota
1660
+
1661
+ # The maximum RAM usage of this tier in bytes.
1662
+ # Corresponds to the JSON property `RAM`
1663
+ # @return [String]
1664
+ attr_accessor :ram
1665
+
1666
+ # This is always sql#tier.
1667
+ # Corresponds to the JSON property `kind`
1668
+ # @return [String]
1669
+ attr_accessor :kind
1670
+
1671
+ # The applicable regions for this tier. Can be us-east1, europe-west1 or asia-
1672
+ # east1.
1673
+ # Corresponds to the JSON property `region`
1674
+ # @return [Array<String>]
1675
+ attr_accessor :region
1676
+
1677
+ # An identifier for the service tier, for example D1, D2 etc. For related
1678
+ # information, see Pricing.
1679
+ # Corresponds to the JSON property `tier`
1680
+ # @return [String]
1681
+ attr_accessor :tier
1682
+
1683
+ def initialize(**args)
1684
+ update!(**args)
1685
+ end
1686
+
1687
+ # Update properties of this object
1688
+ def update!(**args)
1689
+ @disk_quota = args[:disk_quota] unless args[:disk_quota].nil?
1690
+ @ram = args[:ram] unless args[:ram].nil?
1691
+ @kind = args[:kind] unless args[:kind].nil?
1692
+ @region = args[:region] unless args[:region].nil?
1693
+ @tier = args[:tier] unless args[:tier].nil?
1694
+ end
1695
+ end
1696
+
1697
+ # Tiers list response.
1698
+ class ListTiersResponse
1699
+ include Google::Apis::Core::Hashable
1700
+
1701
+ # List of tiers.
1702
+ # Corresponds to the JSON property `items`
1703
+ # @return [Array<Google::Apis::SqladminV1beta4::Tier>]
1704
+ attr_accessor :items
1705
+
1706
+ # This is always sql#tiersList.
1707
+ # Corresponds to the JSON property `kind`
1708
+ # @return [String]
1709
+ attr_accessor :kind
1710
+
1711
+ def initialize(**args)
1712
+ update!(**args)
1713
+ end
1714
+
1715
+ # Update properties of this object
1716
+ def update!(**args)
1717
+ @items = args[:items] unless args[:items].nil?
1718
+ @kind = args[:kind] unless args[:kind].nil?
1719
+ end
1720
+ end
1721
+
1722
+ # A Cloud SQL user resource.
1723
+ class User
1724
+ include Google::Apis::Core::Hashable
1725
+
1726
+ # HTTP 1.1 Entity tag for the resource.
1727
+ # Corresponds to the JSON property `etag`
1728
+ # @return [String]
1729
+ attr_accessor :etag
1730
+
1731
+ # The host name from which the user can connect. For insert operations, host
1732
+ # defaults to an empty string. For update operations, host is specified as part
1733
+ # of the request URL. The host name is not mutable with this API.
1734
+ # Corresponds to the JSON property `host`
1735
+ # @return [String]
1736
+ attr_accessor :host
1737
+
1738
+ # The name of the Cloud SQL instance. This does not include the project ID. Can
1739
+ # be omitted for update since it is already specified on the URL.
1740
+ # Corresponds to the JSON property `instance`
1741
+ # @return [String]
1742
+ attr_accessor :instance
1743
+
1744
+ # This is always sql#user.
1745
+ # Corresponds to the JSON property `kind`
1746
+ # @return [String]
1747
+ attr_accessor :kind
1748
+
1749
+ # The name of the user in the Cloud SQL instance. Can be omitted for update
1750
+ # since it is already specified on the URL.
1751
+ # Corresponds to the JSON property `name`
1752
+ # @return [String]
1753
+ attr_accessor :name
1754
+
1755
+ # The password for the user.
1756
+ # Corresponds to the JSON property `password`
1757
+ # @return [String]
1758
+ attr_accessor :password
1759
+
1760
+ # The project ID of the project containing the Cloud SQL database. The Google
1761
+ # apps domain is prefixed if applicable. Can be omitted for update since it is
1762
+ # already specified on the URL.
1763
+ # Corresponds to the JSON property `project`
1764
+ # @return [String]
1765
+ attr_accessor :project
1766
+
1767
+ def initialize(**args)
1768
+ update!(**args)
1769
+ end
1770
+
1771
+ # Update properties of this object
1772
+ def update!(**args)
1773
+ @etag = args[:etag] unless args[:etag].nil?
1774
+ @host = args[:host] unless args[:host].nil?
1775
+ @instance = args[:instance] unless args[:instance].nil?
1776
+ @kind = args[:kind] unless args[:kind].nil?
1777
+ @name = args[:name] unless args[:name].nil?
1778
+ @password = args[:password] unless args[:password].nil?
1779
+ @project = args[:project] unless args[:project].nil?
1780
+ end
1781
+ end
1782
+
1783
+ # User list response.
1784
+ class ListUsersResponse
1785
+ include Google::Apis::Core::Hashable
1786
+
1787
+ # List of user resources in the instance.
1788
+ # Corresponds to the JSON property `items`
1789
+ # @return [Array<Google::Apis::SqladminV1beta4::User>]
1790
+ attr_accessor :items
1791
+
1792
+ # This is always sql#usersList.
1793
+ # Corresponds to the JSON property `kind`
1794
+ # @return [String]
1795
+ attr_accessor :kind
1796
+
1797
+ # An identifier that uniquely identifies the operation. You can use this
1798
+ # identifier to retrieve the Operations resource that has information about the
1799
+ # operation.
1800
+ # Corresponds to the JSON property `nextPageToken`
1801
+ # @return [String]
1802
+ attr_accessor :next_page_token
1803
+
1804
+ def initialize(**args)
1805
+ update!(**args)
1806
+ end
1807
+
1808
+ # Update properties of this object
1809
+ def update!(**args)
1810
+ @items = args[:items] unless args[:items].nil?
1811
+ @kind = args[:kind] unless args[:kind].nil?
1812
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1813
+ end
1814
+ end
1815
+ end
1816
+ end
1817
+ end