google-api-client 0.8.3 → 0.9

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