google-api-client 0.8.6 → 0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +41 -2
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +32 -2
  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.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1335 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +446 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +872 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +668 -0
  25. data/generated/google/apis/admin_datatransfer_v1.rb +37 -0
  26. data/generated/google/apis/admin_datatransfer_v1/classes.rb +267 -0
  27. data/generated/google/apis/admin_datatransfer_v1/representations.rb +118 -0
  28. data/generated/google/apis/admin_datatransfer_v1/service.rb +262 -0
  29. data/generated/google/apis/admin_directory_v1.rb +113 -0
  30. data/generated/google/apis/admin_directory_v1/classes.rb +3141 -0
  31. data/generated/google/apis/admin_directory_v1/representations.rb +1029 -0
  32. data/generated/google/apis/admin_directory_v1/service.rb +3818 -0
  33. data/generated/google/apis/admin_reports_v1.rb +38 -0
  34. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  35. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  36. data/generated/google/apis/admin_reports_v1/service.rb +336 -0
  37. data/generated/google/apis/adsense_v1_4.rb +38 -0
  38. data/generated/google/apis/adsense_v1_4/classes.rb +1285 -0
  39. data/generated/google/apis/adsense_v1_4/representations.rb +494 -0
  40. data/generated/google/apis/adsense_v1_4/service.rb +1714 -0
  41. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  42. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  43. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  44. data/generated/google/apis/adsensehost_v4_1/service.rb +1164 -0
  45. data/generated/google/apis/analytics_v3.rb +49 -0
  46. data/generated/google/apis/analytics_v3/classes.rb +5118 -0
  47. data/generated/google/apis/analytics_v3/representations.rb +1662 -0
  48. data/generated/google/apis/analytics_v3/service.rb +3568 -0
  49. data/generated/google/apis/androidenterprise_v1.rb +35 -0
  50. data/generated/google/apis/androidenterprise_v1/classes.rb +1443 -0
  51. data/generated/google/apis/androidenterprise_v1/representations.rb +538 -0
  52. data/generated/google/apis/androidenterprise_v1/service.rb +2602 -0
  53. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  54. data/generated/google/apis/androidpublisher_v2/classes.rb +1411 -0
  55. data/generated/google/apis/androidpublisher_v2/representations.rb +646 -0
  56. data/generated/google/apis/androidpublisher_v2/service.rb +2338 -0
  57. data/generated/google/apis/appengine_v1beta4.rb +35 -0
  58. data/generated/google/apis/appengine_v1beta4/classes.rb +1532 -0
  59. data/generated/google/apis/appengine_v1beta4/representations.rb +526 -0
  60. data/generated/google/apis/appengine_v1beta4/service.rb +476 -0
  61. data/generated/google/apis/appsactivity_v1.rb +46 -0
  62. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  63. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  64. data/generated/google/apis/appsactivity_v1/service.rb +128 -0
  65. data/generated/google/apis/appstate_v1.rb +34 -0
  66. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  67. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  68. data/generated/google/apis/appstate_v1/service.rb +260 -0
  69. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  70. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  71. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  72. data/generated/google/apis/autoscaler_v1beta2/service.rb +478 -0
  73. data/generated/google/apis/bigquery_v2.rb +52 -0
  74. data/generated/google/apis/bigquery_v2/classes.rb +2471 -0
  75. data/generated/google/apis/bigquery_v2/representations.rb +816 -0
  76. data/generated/google/apis/bigquery_v2/service.rb +982 -0
  77. data/generated/google/apis/blogger_v3.rb +37 -0
  78. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  79. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  80. data/generated/google/apis/blogger_v3/service.rb +1587 -0
  81. data/generated/google/apis/books_v1.rb +34 -0
  82. data/generated/google/apis/books_v1/classes.rb +3956 -0
  83. data/generated/google/apis/books_v1/representations.rb +1538 -0
  84. data/generated/google/apis/books_v1/service.rb +2290 -0
  85. data/generated/google/apis/calendar_v3.rb +37 -0
  86. data/generated/google/apis/calendar_v3/classes.rb +1742 -0
  87. data/generated/google/apis/calendar_v3/representations.rb +567 -0
  88. data/generated/google/apis/calendar_v3/service.rb +1968 -0
  89. data/{lib/google/api_client/service_account.rb → generated/google/apis/civicinfo_v2.rb} +18 -8
  90. data/generated/google/apis/civicinfo_v2/classes.rb +1127 -0
  91. data/generated/google/apis/civicinfo_v2/representations.rb +383 -0
  92. data/generated/google/apis/civicinfo_v2/service.rb +279 -0
  93. data/generated/google/apis/classroom_v1.rb +49 -0
  94. data/generated/google/apis/classroom_v1/classes.rb +512 -0
  95. data/generated/google/apis/classroom_v1/representations.rb +217 -0
  96. data/generated/google/apis/classroom_v1/service.rb +970 -0
  97. data/generated/google/apis/classroom_v1beta1.rb +49 -0
  98. data/generated/google/apis/classroom_v1beta1/classes.rb +447 -0
  99. data/generated/google/apis/classroom_v1beta1/representations.rb +190 -0
  100. data/generated/google/apis/classroom_v1beta1/service.rb +791 -0
  101. data/generated/google/apis/cloudbilling_v1.rb +35 -0
  102. data/generated/google/apis/cloudbilling_v1/classes.rb +169 -0
  103. data/generated/google/apis/cloudbilling_v1/representations.rb +79 -0
  104. data/generated/google/apis/cloudbilling_v1/service.rb +258 -0
  105. data/generated/google/apis/clouddebugger_v2.rb +41 -0
  106. data/generated/google/apis/clouddebugger_v2/classes.rb +1004 -0
  107. data/generated/google/apis/clouddebugger_v2/representations.rb +410 -0
  108. data/generated/google/apis/clouddebugger_v2/service.rb +370 -0
  109. data/generated/google/apis/cloudmonitoring_v2beta2.rb +37 -0
  110. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  111. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  112. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +452 -0
  113. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  114. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +437 -0
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +188 -0
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +623 -0
  117. data/generated/google/apis/cloudtrace_v1.rb +35 -0
  118. data/generated/google/apis/cloudtrace_v1/classes.rb +188 -0
  119. data/generated/google/apis/cloudtrace_v1/representations.rb +92 -0
  120. data/generated/google/apis/cloudtrace_v1/service.rb +190 -0
  121. data/generated/google/apis/clouduseraccounts_beta.rb +43 -0
  122. data/generated/google/apis/clouduseraccounts_beta/classes.rb +823 -0
  123. data/generated/google/apis/clouduseraccounts_beta/representations.rb +313 -0
  124. data/generated/google/apis/clouduseraccounts_beta/service.rb +854 -0
  125. data/generated/google/apis/compute_beta.rb +49 -0
  126. data/generated/google/apis/compute_beta/classes.rb +9128 -0
  127. data/generated/google/apis/compute_beta/representations.rb +3048 -0
  128. data/generated/google/apis/compute_beta/service.rb +10154 -0
  129. data/generated/google/apis/compute_v1.rb +49 -0
  130. data/generated/google/apis/compute_v1/classes.rb +8681 -0
  131. data/generated/google/apis/compute_v1/representations.rb +2895 -0
  132. data/generated/google/apis/compute_v1/service.rb +9252 -0
  133. data/generated/google/apis/container_v1.rb +35 -0
  134. data/generated/google/apis/container_v1/classes.rb +463 -0
  135. data/generated/google/apis/container_v1/representations.rb +175 -0
  136. data/generated/google/apis/container_v1/service.rb +367 -0
  137. data/generated/google/apis/container_v1beta1.rb +35 -0
  138. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  139. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  140. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  141. data/generated/google/apis/content_v2.rb +35 -0
  142. data/generated/google/apis/content_v2/classes.rb +5986 -0
  143. data/generated/google/apis/content_v2/representations.rb +2288 -0
  144. data/generated/google/apis/content_v2/service.rb +2338 -0
  145. data/generated/google/apis/coordinate_v1.rb +37 -0
  146. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  147. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  148. data/generated/google/apis/coordinate_v1/service.rb +678 -0
  149. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  150. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  151. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  152. data/generated/google/apis/customsearch_v1/service.rb +207 -0
  153. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  154. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  155. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  156. data/generated/google/apis/datastore_v1beta2/service.rb +294 -0
  157. data/generated/google/apis/deploymentmanager_v2.rb +44 -0
  158. data/generated/google/apis/deploymentmanager_v2/classes.rb +1091 -0
  159. data/generated/google/apis/deploymentmanager_v2/representations.rb +422 -0
  160. data/generated/google/apis/deploymentmanager_v2/service.rb +857 -0
  161. data/generated/google/apis/deploymentmanager_v2beta2.rb +44 -0
  162. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +843 -0
  163. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +306 -0
  164. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +689 -0
  165. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  166. data/generated/google/apis/dfareporting_v2_1/classes.rb +10770 -0
  167. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  168. data/generated/google/apis/dfareporting_v2_1/service.rb +8585 -0
  169. data/generated/google/apis/discovery_v1.rb +32 -0
  170. data/generated/google/apis/discovery_v1/classes.rb +961 -0
  171. data/generated/google/apis/discovery_v1/representations.rb +357 -0
  172. data/generated/google/apis/discovery_v1/service.rb +142 -0
  173. data/generated/google/apis/dns_v1.rb +44 -0
  174. data/generated/google/apis/dns_v1/classes.rb +406 -0
  175. data/generated/google/apis/dns_v1/representations.rb +151 -0
  176. data/generated/google/apis/dns_v1/service.rb +454 -0
  177. data/generated/google/apis/doubleclickbidmanager_v1.rb +31 -0
  178. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +716 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +298 -0
  180. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +341 -0
  181. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  182. data/generated/google/apis/doubleclicksearch_v2/classes.rb +956 -0
  183. data/generated/google/apis/doubleclicksearch_v2/representations.rb +316 -0
  184. data/generated/google/apis/doubleclicksearch_v2/service.rb +480 -0
  185. data/generated/google/apis/drive_v2.rb +58 -0
  186. data/generated/google/apis/drive_v2/classes.rb +2562 -0
  187. data/generated/google/apis/drive_v2/representations.rb +795 -0
  188. data/generated/google/apis/drive_v2/service.rb +2696 -0
  189. data/generated/google/apis/drive_v3.rb +55 -0
  190. data/generated/google/apis/drive_v3/classes.rb +1534 -0
  191. data/generated/google/apis/drive_v3/representations.rb +497 -0
  192. data/generated/google/apis/drive_v3/service.rb +1541 -0
  193. data/generated/google/apis/fitness_v1.rb +49 -0
  194. data/generated/google/apis/fitness_v1/classes.rb +885 -0
  195. data/generated/google/apis/fitness_v1/representations.rb +320 -0
  196. data/generated/google/apis/fitness_v1/service.rb +675 -0
  197. data/generated/google/apis/fusiontables_v2.rb +37 -0
  198. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  199. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  200. data/generated/google/apis/fusiontables_v2/service.rb +1463 -0
  201. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  202. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  203. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  204. data/generated/google/apis/games_configuration_v1configuration/service.rb +565 -0
  205. data/generated/google/apis/games_management_v1management.rb +37 -0
  206. data/generated/google/apis/games_management_v1management/classes.rb +524 -0
  207. data/generated/google/apis/games_management_v1management/representations.rb +231 -0
  208. data/generated/google/apis/games_management_v1management/service.rb +994 -0
  209. data/generated/google/apis/games_v1.rb +40 -0
  210. data/generated/google/apis/games_v1/classes.rb +4617 -0
  211. data/generated/google/apis/games_v1/representations.rb +1584 -0
  212. data/generated/google/apis/games_v1/service.rb +2290 -0
  213. data/generated/google/apis/gan_v1beta1.rb +31 -0
  214. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  215. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  216. data/generated/google/apis/gan_v1beta1/service.rb +682 -0
  217. data/generated/google/apis/genomics_v1.rb +49 -0
  218. data/generated/google/apis/genomics_v1/classes.rb +2609 -0
  219. data/generated/google/apis/genomics_v1/representations.rb +909 -0
  220. data/generated/google/apis/genomics_v1/service.rb +1676 -0
  221. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  222. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  223. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  224. data/generated/google/apis/genomics_v1beta2/service.rb +2392 -0
  225. data/generated/google/apis/gmail_v1.rb +52 -0
  226. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  227. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  228. data/generated/google/apis/gmail_v1/service.rb +1470 -0
  229. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  230. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  231. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  232. data/generated/google/apis/groupsmigration_v1/service.rb +110 -0
  233. data/generated/google/apis/groupssettings_v1.rb +34 -0
  234. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  235. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  236. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  237. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  238. data/generated/google/apis/identitytoolkit_v3/classes.rb +1466 -0
  239. data/generated/google/apis/identitytoolkit_v3/representations.rb +509 -0
  240. data/generated/google/apis/identitytoolkit_v3/service.rb +581 -0
  241. data/{spec/google/api_client/request_spec.rb → generated/google/apis/kgsearch_v1.rb} +16 -13
  242. data/generated/google/apis/kgsearch_v1/classes.rb +59 -0
  243. data/generated/google/apis/kgsearch_v1/representations.rb +39 -0
  244. data/generated/google/apis/kgsearch_v1/service.rb +111 -0
  245. data/generated/google/apis/licensing_v1.rb +34 -0
  246. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  247. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  248. data/generated/google/apis/licensing_v1/service.rb +369 -0
  249. data/generated/google/apis/logging_v1beta3.rb +47 -0
  250. data/generated/google/apis/logging_v1beta3/classes.rb +1079 -0
  251. data/generated/google/apis/logging_v1beta3/representations.rb +366 -0
  252. data/generated/google/apis/logging_v1beta3/service.rb +1001 -0
  253. data/generated/google/apis/manager_v1beta2.rb +53 -0
  254. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  255. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  256. data/generated/google/apis/manager_v1beta2/service.rb +372 -0
  257. data/generated/google/apis/mapsengine_v1.rb +38 -0
  258. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  259. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  260. data/generated/google/apis/mapsengine_v1/service.rb +3388 -0
  261. data/generated/google/apis/mirror_v1.rb +37 -0
  262. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  263. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  264. data/generated/google/apis/mirror_v1/service.rb +977 -0
  265. data/generated/google/apis/oauth2_v2.rb +43 -0
  266. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  267. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  268. data/generated/google/apis/oauth2_v2/service.rb +199 -0
  269. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  270. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  271. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  272. data/generated/google/apis/pagespeedonline_v2/service.rb +119 -0
  273. data/generated/google/apis/partners_v2.rb +32 -0
  274. data/generated/google/apis/partners_v2/classes.rb +942 -0
  275. data/generated/google/apis/partners_v2/representations.rb +402 -0
  276. data/generated/google/apis/partners_v2/service.rb +400 -0
  277. data/generated/google/apis/plus_domains_v1.rb +61 -0
  278. data/generated/google/apis/plus_domains_v1/classes.rb +2609 -0
  279. data/generated/google/apis/plus_domains_v1/representations.rb +987 -0
  280. data/generated/google/apis/plus_domains_v1/service.rb +904 -0
  281. data/generated/google/apis/plus_v1.rb +43 -0
  282. data/generated/google/apis/plus_v1/classes.rb +2094 -0
  283. data/generated/google/apis/plus_v1/representations.rb +805 -0
  284. data/generated/google/apis/plus_v1/service.rb +470 -0
  285. data/generated/google/apis/prediction_v1_6.rb +44 -0
  286. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  287. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  288. data/generated/google/apis/prediction_v1_6/service.rb +380 -0
  289. data/generated/google/apis/proximitybeacon_v1beta1.rb +31 -0
  290. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +639 -0
  291. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +274 -0
  292. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +591 -0
  293. data/generated/google/apis/pubsub_v1.rb +37 -0
  294. data/generated/google/apis/pubsub_v1/classes.rb +614 -0
  295. data/generated/google/apis/pubsub_v1/representations.rb +281 -0
  296. data/generated/google/apis/pubsub_v1/service.rb +774 -0
  297. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  298. data/generated/google/apis/pubsub_v1beta2/classes.rb +620 -0
  299. data/generated/google/apis/pubsub_v1beta2/representations.rb +282 -0
  300. data/generated/google/apis/pubsub_v1beta2/service.rb +774 -0
  301. data/generated/google/apis/qpx_express_v1.rb +31 -0
  302. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  303. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  304. data/generated/google/apis/qpx_express_v1/service.rb +100 -0
  305. data/generated/google/apis/replicapool_v1beta2.rb +44 -0
  306. data/generated/google/apis/replicapool_v1beta2/classes.rb +631 -0
  307. data/generated/google/apis/replicapool_v1beta2/representations.rb +236 -0
  308. data/generated/google/apis/replicapool_v1beta2/service.rb +608 -0
  309. data/generated/google/apis/replicapoolupdater_v1beta1.rb +44 -0
  310. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +733 -0
  311. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +264 -0
  312. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +508 -0
  313. data/generated/google/apis/reseller_v1.rb +37 -0
  314. data/generated/google/apis/reseller_v1/classes.rb +520 -0
  315. data/generated/google/apis/reseller_v1/representations.rb +200 -0
  316. data/generated/google/apis/reseller_v1/service.rb +623 -0
  317. data/generated/google/apis/resourceviews_v1beta2.rb +50 -0
  318. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  319. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  320. data/generated/google/apis/resourceviews_v1beta2/service.rb +563 -0
  321. data/generated/google/apis/script_v1.rb +61 -0
  322. data/generated/google/apis/script_v1/classes.rb +259 -0
  323. data/generated/google/apis/script_v1/representations.rb +106 -0
  324. data/generated/google/apis/script_v1/service.rb +98 -0
  325. data/generated/google/apis/site_verification_v1.rb +37 -0
  326. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  327. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  328. data/generated/google/apis/site_verification_v1/service.rb +315 -0
  329. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  330. data/generated/google/apis/sqladmin_v1beta4/classes.rb +2001 -0
  331. data/generated/google/apis/sqladmin_v1beta4/representations.rb +758 -0
  332. data/generated/google/apis/sqladmin_v1beta4/service.rb +1625 -0
  333. data/generated/google/apis/storage_v1.rb +46 -0
  334. data/generated/google/apis/storage_v1/classes.rb +1222 -0
  335. data/generated/google/apis/storage_v1/representations.rb +445 -0
  336. data/generated/google/apis/storage_v1/service.rb +1903 -0
  337. data/generated/google/apis/storagetransfer_v1.rb +35 -0
  338. data/generated/google/apis/storagetransfer_v1/classes.rb +1046 -0
  339. data/generated/google/apis/storagetransfer_v1/representations.rb +370 -0
  340. data/generated/google/apis/storagetransfer_v1/service.rb +473 -0
  341. data/generated/google/apis/tagmanager_v1.rb +52 -0
  342. data/generated/google/apis/tagmanager_v1/classes.rb +1384 -0
  343. data/generated/google/apis/tagmanager_v1/representations.rb +515 -0
  344. data/generated/google/apis/tagmanager_v1/service.rb +1817 -0
  345. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  346. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  347. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  348. data/generated/google/apis/taskqueue_v1beta2/service.rb +408 -0
  349. data/generated/google/apis/tasks_v1.rb +37 -0
  350. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  351. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  352. data/generated/google/apis/tasks_v1/service.rb +643 -0
  353. data/generated/google/apis/translate_v2.rb +31 -0
  354. data/generated/google/apis/translate_v2/classes.rb +168 -0
  355. data/generated/google/apis/translate_v2/representations.rb +109 -0
  356. data/generated/google/apis/translate_v2/service.rb +182 -0
  357. data/generated/google/apis/urlshortener_v1.rb +34 -0
  358. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  359. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  360. data/generated/google/apis/urlshortener_v1/service.rb +176 -0
  361. data/generated/google/apis/webmasters_v3.rb +37 -0
  362. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  363. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  364. data/generated/google/apis/webmasters_v3/service.rb +573 -0
  365. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  366. data/generated/google/apis/youtube_analytics_v1/classes.rb +546 -0
  367. data/generated/google/apis/youtube_analytics_v1/representations.rb +243 -0
  368. data/generated/google/apis/youtube_analytics_v1/service.rb +562 -0
  369. data/generated/google/apis/youtube_v3.rb +49 -0
  370. data/generated/google/apis/youtube_v3/classes.rb +8136 -0
  371. data/generated/google/apis/youtube_v3/representations.rb +2838 -0
  372. data/generated/google/apis/youtube_v3/service.rb +4403 -0
  373. data/generated/google/apis/youtubereporting_v1.rb +38 -0
  374. data/generated/google/apis/youtubereporting_v1/classes.rb +258 -0
  375. data/generated/google/apis/youtubereporting_v1/representations.rb +128 -0
  376. data/generated/google/apis/youtubereporting_v1/service.rb +364 -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 +1 -0
  380. data/lib/google/api_client/auth/storage.rb +4 -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.rb +48 -0
  385. data/lib/google/apis/core/api_command.rb +135 -0
  386. data/lib/google/apis/core/base_service.rb +317 -0
  387. data/lib/google/apis/core/batch.rb +239 -0
  388. data/lib/google/apis/core/download.rb +94 -0
  389. data/lib/google/apis/core/hashable.rb +44 -0
  390. data/lib/google/apis/core/http_client_adapter.rb +82 -0
  391. data/lib/google/apis/core/http_command.rb +312 -0
  392. data/lib/google/apis/core/json_representation.rb +127 -0
  393. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  394. data/lib/google/apis/core/multipart.rb +187 -0
  395. data/lib/google/apis/core/upload.rb +288 -0
  396. data/lib/google/{api_client → apis}/errors.rb +39 -28
  397. data/lib/google/apis/generator.rb +70 -0
  398. data/lib/google/apis/generator/annotator.rb +295 -0
  399. data/lib/google/apis/generator/helpers.rb +74 -0
  400. data/lib/google/apis/generator/model.rb +143 -0
  401. data/lib/google/apis/generator/template.rb +124 -0
  402. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  403. data/lib/google/apis/generator/templates/_method.tmpl +92 -0
  404. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  405. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  406. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  407. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  408. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  409. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  410. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  411. data/lib/google/apis/options.rb +85 -0
  412. data/lib/google/apis/version.rb +39 -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.rb +131 -44
  460. data/spec/spec_helper/load_path_spec.rb +33 -0
  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.rb +0 -750
  465. data/lib/google/api_client/auth/file_storage.rb +0 -59
  466. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  467. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  468. data/lib/google/api_client/batch.rb +0 -326
  469. data/lib/google/api_client/charset.rb +0 -33
  470. data/lib/google/api_client/discovery/api.rb +0 -310
  471. data/lib/google/api_client/discovery/media.rb +0 -77
  472. data/lib/google/api_client/discovery/method.rb +0 -363
  473. data/lib/google/api_client/discovery/resource.rb +0 -156
  474. data/lib/google/api_client/discovery/schema.rb +0 -117
  475. data/lib/google/api_client/environment.rb +0 -42
  476. data/lib/google/api_client/gzip.rb +0 -28
  477. data/lib/google/api_client/logging.rb +0 -32
  478. data/lib/google/api_client/media.rb +0 -259
  479. data/lib/google/api_client/railtie.rb +0 -18
  480. data/lib/google/api_client/request.rb +0 -350
  481. data/lib/google/api_client/result.rb +0 -255
  482. data/lib/google/api_client/service.rb +0 -233
  483. data/lib/google/api_client/service/batch.rb +0 -110
  484. data/lib/google/api_client/service/request.rb +0 -144
  485. data/lib/google/api_client/service/resource.rb +0 -40
  486. data/lib/google/api_client/service/result.rb +0 -162
  487. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  488. data/lib/google/api_client/service/stub_generator.rb +0 -61
  489. data/spec/google/api_client/batch_spec.rb +0 -248
  490. data/spec/google/api_client/discovery_spec.rb +0 -708
  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,46 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/storage_v1/service.rb'
16
+ require 'google/apis/storage_v1/classes.rb'
17
+ require 'google/apis/storage_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Storage JSON API
22
+ #
23
+ # Lets you store and retrieve potentially-large, immutable data objects.
24
+ #
25
+ # @see https://developers.google.com/storage/docs/json_api/
26
+ module StorageV1
27
+ VERSION = 'V1'
28
+ REVISION = '20151229'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+
33
+ # View your data across Google Cloud Platform services
34
+ AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
35
+
36
+ # Manage your data and permissions in Google Cloud Storage
37
+ AUTH_DEVSTORAGE_FULL_CONTROL = 'https://www.googleapis.com/auth/devstorage.full_control'
38
+
39
+ # View your data in Google Cloud Storage
40
+ AUTH_DEVSTORAGE_READ_ONLY = 'https://www.googleapis.com/auth/devstorage.read_only'
41
+
42
+ # Manage your data in Google Cloud Storage
43
+ AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write'
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,1222 @@
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 StorageV1
24
+
25
+ # A bucket.
26
+ class Bucket
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Access controls on the bucket.
30
+ # Corresponds to the JSON property `acl`
31
+ # @return [Array<Google::Apis::StorageV1::BucketAccessControl>]
32
+ attr_accessor :acl
33
+
34
+ # The bucket's Cross-Origin Resource Sharing (CORS) configuration.
35
+ # Corresponds to the JSON property `cors`
36
+ # @return [Array<Google::Apis::StorageV1::Bucket::CorsConfiguration>]
37
+ attr_accessor :cors_configurations
38
+
39
+ # Default access controls to apply to new objects when no ACL is provided.
40
+ # Corresponds to the JSON property `defaultObjectAcl`
41
+ # @return [Array<Google::Apis::StorageV1::ObjectAccessControl>]
42
+ attr_accessor :default_object_acl
43
+
44
+ # HTTP 1.1 Entity tag for the bucket.
45
+ # Corresponds to the JSON property `etag`
46
+ # @return [String]
47
+ attr_accessor :etag
48
+
49
+ # The ID of the bucket.
50
+ # Corresponds to the JSON property `id`
51
+ # @return [String]
52
+ attr_accessor :id
53
+
54
+ # The kind of item this is. For buckets, this is always storage#bucket.
55
+ # Corresponds to the JSON property `kind`
56
+ # @return [String]
57
+ attr_accessor :kind
58
+
59
+ # The bucket's lifecycle configuration. See lifecycle management for more
60
+ # information.
61
+ # Corresponds to the JSON property `lifecycle`
62
+ # @return [Google::Apis::StorageV1::Bucket::Lifecycle]
63
+ attr_accessor :lifecycle
64
+
65
+ # The location of the bucket. Object data for objects in the bucket resides in
66
+ # physical storage within this region. Defaults to US. See the developer's guide
67
+ # for the authoritative list.
68
+ # Corresponds to the JSON property `location`
69
+ # @return [String]
70
+ attr_accessor :location
71
+
72
+ # The bucket's logging configuration, which defines the destination bucket and
73
+ # optional name prefix for the current bucket's logs.
74
+ # Corresponds to the JSON property `logging`
75
+ # @return [Google::Apis::StorageV1::Bucket::Logging]
76
+ attr_accessor :logging
77
+
78
+ # The metadata generation of this bucket.
79
+ # Corresponds to the JSON property `metageneration`
80
+ # @return [String]
81
+ attr_accessor :metageneration
82
+
83
+ # The name of the bucket.
84
+ # Corresponds to the JSON property `name`
85
+ # @return [String]
86
+ attr_accessor :name
87
+
88
+ # The owner of the bucket. This is always the project team's owner group.
89
+ # Corresponds to the JSON property `owner`
90
+ # @return [Google::Apis::StorageV1::Bucket::Owner]
91
+ attr_accessor :owner
92
+
93
+ # The project number of the project the bucket belongs to.
94
+ # Corresponds to the JSON property `projectNumber`
95
+ # @return [String]
96
+ attr_accessor :project_number
97
+
98
+ # The URI of this bucket.
99
+ # Corresponds to the JSON property `selfLink`
100
+ # @return [String]
101
+ attr_accessor :self_link
102
+
103
+ # The bucket's storage class. This defines how objects in the bucket are stored
104
+ # and determines the SLA and the cost of storage. Values include STANDARD,
105
+ # NEARLINE and DURABLE_REDUCED_AVAILABILITY. Defaults to STANDARD. For more
106
+ # information, see storage classes.
107
+ # Corresponds to the JSON property `storageClass`
108
+ # @return [String]
109
+ attr_accessor :storage_class
110
+
111
+ # The creation time of the bucket in RFC 3339 format.
112
+ # Corresponds to the JSON property `timeCreated`
113
+ # @return [DateTime]
114
+ attr_accessor :time_created
115
+
116
+ # The modification time of the bucket in RFC 3339 format.
117
+ # Corresponds to the JSON property `updated`
118
+ # @return [DateTime]
119
+ attr_accessor :updated
120
+
121
+ # The bucket's versioning configuration.
122
+ # Corresponds to the JSON property `versioning`
123
+ # @return [Google::Apis::StorageV1::Bucket::Versioning]
124
+ attr_accessor :versioning
125
+
126
+ # The bucket's website configuration.
127
+ # Corresponds to the JSON property `website`
128
+ # @return [Google::Apis::StorageV1::Bucket::Website]
129
+ attr_accessor :website
130
+
131
+ def initialize(**args)
132
+ update!(**args)
133
+ end
134
+
135
+ # Update properties of this object
136
+ def update!(**args)
137
+ @acl = args[:acl] unless args[:acl].nil?
138
+ @cors_configurations = args[:cors_configurations] unless args[:cors_configurations].nil?
139
+ @default_object_acl = args[:default_object_acl] unless args[:default_object_acl].nil?
140
+ @etag = args[:etag] unless args[:etag].nil?
141
+ @id = args[:id] unless args[:id].nil?
142
+ @kind = args[:kind] unless args[:kind].nil?
143
+ @lifecycle = args[:lifecycle] unless args[:lifecycle].nil?
144
+ @location = args[:location] unless args[:location].nil?
145
+ @logging = args[:logging] unless args[:logging].nil?
146
+ @metageneration = args[:metageneration] unless args[:metageneration].nil?
147
+ @name = args[:name] unless args[:name].nil?
148
+ @owner = args[:owner] unless args[:owner].nil?
149
+ @project_number = args[:project_number] unless args[:project_number].nil?
150
+ @self_link = args[:self_link] unless args[:self_link].nil?
151
+ @storage_class = args[:storage_class] unless args[:storage_class].nil?
152
+ @time_created = args[:time_created] unless args[:time_created].nil?
153
+ @updated = args[:updated] unless args[:updated].nil?
154
+ @versioning = args[:versioning] unless args[:versioning].nil?
155
+ @website = args[:website] unless args[:website].nil?
156
+ end
157
+
158
+ #
159
+ class CorsConfiguration
160
+ include Google::Apis::Core::Hashable
161
+
162
+ # The value, in seconds, to return in the Access-Control-Max-Age header used in
163
+ # preflight responses.
164
+ # Corresponds to the JSON property `maxAgeSeconds`
165
+ # @return [Fixnum]
166
+ attr_accessor :max_age_seconds
167
+
168
+ # The list of HTTP methods on which to include CORS response headers, (GET,
169
+ # OPTIONS, POST, etc) Note: "*" is permitted in the list of methods, and means "
170
+ # any method".
171
+ # Corresponds to the JSON property `method`
172
+ # @return [Array<String>]
173
+ attr_accessor :http_method
174
+
175
+ # The list of Origins eligible to receive CORS response headers. Note: "*" is
176
+ # permitted in the list of origins, and means "any Origin".
177
+ # Corresponds to the JSON property `origin`
178
+ # @return [Array<String>]
179
+ attr_accessor :origin
180
+
181
+ # The list of HTTP headers other than the simple response headers to give
182
+ # permission for the user-agent to share across domains.
183
+ # Corresponds to the JSON property `responseHeader`
184
+ # @return [Array<String>]
185
+ attr_accessor :response_header
186
+
187
+ def initialize(**args)
188
+ update!(**args)
189
+ end
190
+
191
+ # Update properties of this object
192
+ def update!(**args)
193
+ @max_age_seconds = args[:max_age_seconds] unless args[:max_age_seconds].nil?
194
+ @http_method = args[:http_method] unless args[:http_method].nil?
195
+ @origin = args[:origin] unless args[:origin].nil?
196
+ @response_header = args[:response_header] unless args[:response_header].nil?
197
+ end
198
+ end
199
+
200
+ # The bucket's lifecycle configuration. See lifecycle management for more
201
+ # information.
202
+ class Lifecycle
203
+ include Google::Apis::Core::Hashable
204
+
205
+ # A lifecycle management rule, which is made of an action to take and the
206
+ # condition(s) under which the action will be taken.
207
+ # Corresponds to the JSON property `rule`
208
+ # @return [Array<Google::Apis::StorageV1::Bucket::Lifecycle::Rule>]
209
+ attr_accessor :rule
210
+
211
+ def initialize(**args)
212
+ update!(**args)
213
+ end
214
+
215
+ # Update properties of this object
216
+ def update!(**args)
217
+ @rule = args[:rule] unless args[:rule].nil?
218
+ end
219
+
220
+ #
221
+ class Rule
222
+ include Google::Apis::Core::Hashable
223
+
224
+ # The action to take.
225
+ # Corresponds to the JSON property `action`
226
+ # @return [Google::Apis::StorageV1::Bucket::Lifecycle::Rule::Action]
227
+ attr_accessor :action
228
+
229
+ # The condition(s) under which the action will be taken.
230
+ # Corresponds to the JSON property `condition`
231
+ # @return [Google::Apis::StorageV1::Bucket::Lifecycle::Rule::Condition]
232
+ attr_accessor :condition
233
+
234
+ def initialize(**args)
235
+ update!(**args)
236
+ end
237
+
238
+ # Update properties of this object
239
+ def update!(**args)
240
+ @action = args[:action] unless args[:action].nil?
241
+ @condition = args[:condition] unless args[:condition].nil?
242
+ end
243
+
244
+ # The action to take.
245
+ class Action
246
+ include Google::Apis::Core::Hashable
247
+
248
+ # Type of the action. Currently, only Delete is supported.
249
+ # Corresponds to the JSON property `type`
250
+ # @return [String]
251
+ attr_accessor :type
252
+
253
+ def initialize(**args)
254
+ update!(**args)
255
+ end
256
+
257
+ # Update properties of this object
258
+ def update!(**args)
259
+ @type = args[:type] unless args[:type].nil?
260
+ end
261
+ end
262
+
263
+ # The condition(s) under which the action will be taken.
264
+ class Condition
265
+ include Google::Apis::Core::Hashable
266
+
267
+ # Age of an object (in days). This condition is satisfied when an object reaches
268
+ # the specified age.
269
+ # Corresponds to the JSON property `age`
270
+ # @return [Fixnum]
271
+ attr_accessor :age
272
+
273
+ # A date in RFC 3339 format with only the date part (for instance, "2013-01-15").
274
+ # This condition is satisfied when an object is created before midnight of the
275
+ # specified date in UTC.
276
+ # Corresponds to the JSON property `createdBefore`
277
+ # @return [Date]
278
+ attr_accessor :created_before
279
+
280
+ # Relevant only for versioned objects. If the value is true, this condition
281
+ # matches live objects; if the value is false, it matches archived objects.
282
+ # Corresponds to the JSON property `isLive`
283
+ # @return [Boolean]
284
+ attr_accessor :is_live
285
+ alias_method :is_live?, :is_live
286
+
287
+ # Relevant only for versioned objects. If the value is N, this condition is
288
+ # satisfied when there are at least N versions (including the live version)
289
+ # newer than this version of the object.
290
+ # Corresponds to the JSON property `numNewerVersions`
291
+ # @return [Fixnum]
292
+ attr_accessor :num_newer_versions
293
+
294
+ def initialize(**args)
295
+ update!(**args)
296
+ end
297
+
298
+ # Update properties of this object
299
+ def update!(**args)
300
+ @age = args[:age] unless args[:age].nil?
301
+ @created_before = args[:created_before] unless args[:created_before].nil?
302
+ @is_live = args[:is_live] unless args[:is_live].nil?
303
+ @num_newer_versions = args[:num_newer_versions] unless args[:num_newer_versions].nil?
304
+ end
305
+ end
306
+ end
307
+ end
308
+
309
+ # The bucket's logging configuration, which defines the destination bucket and
310
+ # optional name prefix for the current bucket's logs.
311
+ class Logging
312
+ include Google::Apis::Core::Hashable
313
+
314
+ # The destination bucket where the current bucket's logs should be placed.
315
+ # Corresponds to the JSON property `logBucket`
316
+ # @return [String]
317
+ attr_accessor :log_bucket
318
+
319
+ # A prefix for log object names.
320
+ # Corresponds to the JSON property `logObjectPrefix`
321
+ # @return [String]
322
+ attr_accessor :log_object_prefix
323
+
324
+ def initialize(**args)
325
+ update!(**args)
326
+ end
327
+
328
+ # Update properties of this object
329
+ def update!(**args)
330
+ @log_bucket = args[:log_bucket] unless args[:log_bucket].nil?
331
+ @log_object_prefix = args[:log_object_prefix] unless args[:log_object_prefix].nil?
332
+ end
333
+ end
334
+
335
+ # The owner of the bucket. This is always the project team's owner group.
336
+ class Owner
337
+ include Google::Apis::Core::Hashable
338
+
339
+ # The entity, in the form project-owner-projectId.
340
+ # Corresponds to the JSON property `entity`
341
+ # @return [String]
342
+ attr_accessor :entity
343
+
344
+ # The ID for the entity.
345
+ # Corresponds to the JSON property `entityId`
346
+ # @return [String]
347
+ attr_accessor :entity_id
348
+
349
+ def initialize(**args)
350
+ update!(**args)
351
+ end
352
+
353
+ # Update properties of this object
354
+ def update!(**args)
355
+ @entity = args[:entity] unless args[:entity].nil?
356
+ @entity_id = args[:entity_id] unless args[:entity_id].nil?
357
+ end
358
+ end
359
+
360
+ # The bucket's versioning configuration.
361
+ class Versioning
362
+ include Google::Apis::Core::Hashable
363
+
364
+ # While set to true, versioning is fully enabled for this bucket.
365
+ # Corresponds to the JSON property `enabled`
366
+ # @return [Boolean]
367
+ attr_accessor :enabled
368
+ alias_method :enabled?, :enabled
369
+
370
+ def initialize(**args)
371
+ update!(**args)
372
+ end
373
+
374
+ # Update properties of this object
375
+ def update!(**args)
376
+ @enabled = args[:enabled] unless args[:enabled].nil?
377
+ end
378
+ end
379
+
380
+ # The bucket's website configuration.
381
+ class Website
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # Behaves as the bucket's directory index where missing objects are treated as
385
+ # potential directories.
386
+ # Corresponds to the JSON property `mainPageSuffix`
387
+ # @return [String]
388
+ attr_accessor :main_page_suffix
389
+
390
+ # The custom object to return when a requested resource is not found.
391
+ # Corresponds to the JSON property `notFoundPage`
392
+ # @return [String]
393
+ attr_accessor :not_found_page
394
+
395
+ def initialize(**args)
396
+ update!(**args)
397
+ end
398
+
399
+ # Update properties of this object
400
+ def update!(**args)
401
+ @main_page_suffix = args[:main_page_suffix] unless args[:main_page_suffix].nil?
402
+ @not_found_page = args[:not_found_page] unless args[:not_found_page].nil?
403
+ end
404
+ end
405
+ end
406
+
407
+ # An access-control entry.
408
+ class BucketAccessControl
409
+ include Google::Apis::Core::Hashable
410
+
411
+ # The name of the bucket.
412
+ # Corresponds to the JSON property `bucket`
413
+ # @return [String]
414
+ attr_accessor :bucket
415
+
416
+ # The domain associated with the entity, if any.
417
+ # Corresponds to the JSON property `domain`
418
+ # @return [String]
419
+ attr_accessor :domain
420
+
421
+ # The email address associated with the entity, if any.
422
+ # Corresponds to the JSON property `email`
423
+ # @return [String]
424
+ attr_accessor :email
425
+
426
+ # The entity holding the permission, in one of the following forms:
427
+ # - user-userId
428
+ # - user-email
429
+ # - group-groupId
430
+ # - group-email
431
+ # - domain-domain
432
+ # - project-team-projectId
433
+ # - allUsers
434
+ # - allAuthenticatedUsers Examples:
435
+ # - The user liz@example.com would be user-liz@example.com.
436
+ # - The group example@googlegroups.com would be group-example@googlegroups.com.
437
+ # - To refer to all members of the Google Apps for Business domain example.com,
438
+ # the entity would be domain-example.com.
439
+ # Corresponds to the JSON property `entity`
440
+ # @return [String]
441
+ attr_accessor :entity
442
+
443
+ # The ID for the entity, if any.
444
+ # Corresponds to the JSON property `entityId`
445
+ # @return [String]
446
+ attr_accessor :entity_id
447
+
448
+ # HTTP 1.1 Entity tag for the access-control entry.
449
+ # Corresponds to the JSON property `etag`
450
+ # @return [String]
451
+ attr_accessor :etag
452
+
453
+ # The ID of the access-control entry.
454
+ # Corresponds to the JSON property `id`
455
+ # @return [String]
456
+ attr_accessor :id
457
+
458
+ # The kind of item this is. For bucket access control entries, this is always
459
+ # storage#bucketAccessControl.
460
+ # Corresponds to the JSON property `kind`
461
+ # @return [String]
462
+ attr_accessor :kind
463
+
464
+ # The project team associated with the entity, if any.
465
+ # Corresponds to the JSON property `projectTeam`
466
+ # @return [Google::Apis::StorageV1::BucketAccessControl::ProjectTeam]
467
+ attr_accessor :project_team
468
+
469
+ # The access permission for the entity. Can be READER, WRITER, or OWNER.
470
+ # Corresponds to the JSON property `role`
471
+ # @return [String]
472
+ attr_accessor :role
473
+
474
+ # The link to this access-control entry.
475
+ # Corresponds to the JSON property `selfLink`
476
+ # @return [String]
477
+ attr_accessor :self_link
478
+
479
+ def initialize(**args)
480
+ update!(**args)
481
+ end
482
+
483
+ # Update properties of this object
484
+ def update!(**args)
485
+ @bucket = args[:bucket] unless args[:bucket].nil?
486
+ @domain = args[:domain] unless args[:domain].nil?
487
+ @email = args[:email] unless args[:email].nil?
488
+ @entity = args[:entity] unless args[:entity].nil?
489
+ @entity_id = args[:entity_id] unless args[:entity_id].nil?
490
+ @etag = args[:etag] unless args[:etag].nil?
491
+ @id = args[:id] unless args[:id].nil?
492
+ @kind = args[:kind] unless args[:kind].nil?
493
+ @project_team = args[:project_team] unless args[:project_team].nil?
494
+ @role = args[:role] unless args[:role].nil?
495
+ @self_link = args[:self_link] unless args[:self_link].nil?
496
+ end
497
+
498
+ # The project team associated with the entity, if any.
499
+ class ProjectTeam
500
+ include Google::Apis::Core::Hashable
501
+
502
+ # The project number.
503
+ # Corresponds to the JSON property `projectNumber`
504
+ # @return [String]
505
+ attr_accessor :project_number
506
+
507
+ # The team. Can be owners, editors, or viewers.
508
+ # Corresponds to the JSON property `team`
509
+ # @return [String]
510
+ attr_accessor :team
511
+
512
+ def initialize(**args)
513
+ update!(**args)
514
+ end
515
+
516
+ # Update properties of this object
517
+ def update!(**args)
518
+ @project_number = args[:project_number] unless args[:project_number].nil?
519
+ @team = args[:team] unless args[:team].nil?
520
+ end
521
+ end
522
+ end
523
+
524
+ # An access-control list.
525
+ class BucketAccessControls
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # The list of items.
529
+ # Corresponds to the JSON property `items`
530
+ # @return [Array<Google::Apis::StorageV1::BucketAccessControl>]
531
+ attr_accessor :items
532
+
533
+ # The kind of item this is. For lists of bucket access control entries, this is
534
+ # always storage#bucketAccessControls.
535
+ # Corresponds to the JSON property `kind`
536
+ # @return [String]
537
+ attr_accessor :kind
538
+
539
+ def initialize(**args)
540
+ update!(**args)
541
+ end
542
+
543
+ # Update properties of this object
544
+ def update!(**args)
545
+ @items = args[:items] unless args[:items].nil?
546
+ @kind = args[:kind] unless args[:kind].nil?
547
+ end
548
+ end
549
+
550
+ # A list of buckets.
551
+ class Buckets
552
+ include Google::Apis::Core::Hashable
553
+
554
+ # The list of items.
555
+ # Corresponds to the JSON property `items`
556
+ # @return [Array<Google::Apis::StorageV1::Bucket>]
557
+ attr_accessor :items
558
+
559
+ # The kind of item this is. For lists of buckets, this is always storage#buckets.
560
+ # Corresponds to the JSON property `kind`
561
+ # @return [String]
562
+ attr_accessor :kind
563
+
564
+ # The continuation token, used to page through large result sets. Provide this
565
+ # value in a subsequent request to return the next page of results.
566
+ # Corresponds to the JSON property `nextPageToken`
567
+ # @return [String]
568
+ attr_accessor :next_page_token
569
+
570
+ def initialize(**args)
571
+ update!(**args)
572
+ end
573
+
574
+ # Update properties of this object
575
+ def update!(**args)
576
+ @items = args[:items] unless args[:items].nil?
577
+ @kind = args[:kind] unless args[:kind].nil?
578
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
579
+ end
580
+ end
581
+
582
+ # An notification channel used to watch for resource changes.
583
+ class Channel
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # The address where notifications are delivered for this channel.
587
+ # Corresponds to the JSON property `address`
588
+ # @return [String]
589
+ attr_accessor :address
590
+
591
+ # Date and time of notification channel expiration, expressed as a Unix
592
+ # timestamp, in milliseconds. Optional.
593
+ # Corresponds to the JSON property `expiration`
594
+ # @return [String]
595
+ attr_accessor :expiration
596
+
597
+ # A UUID or similar unique string that identifies this channel.
598
+ # Corresponds to the JSON property `id`
599
+ # @return [String]
600
+ attr_accessor :id
601
+
602
+ # Identifies this as a notification channel used to watch for changes to a
603
+ # resource. Value: the fixed string "api#channel".
604
+ # Corresponds to the JSON property `kind`
605
+ # @return [String]
606
+ attr_accessor :kind
607
+
608
+ # Additional parameters controlling delivery channel behavior. Optional.
609
+ # Corresponds to the JSON property `params`
610
+ # @return [Hash<String,String>]
611
+ attr_accessor :params
612
+
613
+ # A Boolean value to indicate whether payload is wanted. Optional.
614
+ # Corresponds to the JSON property `payload`
615
+ # @return [Boolean]
616
+ attr_accessor :payload
617
+ alias_method :payload?, :payload
618
+
619
+ # An opaque ID that identifies the resource being watched on this channel.
620
+ # Stable across different API versions.
621
+ # Corresponds to the JSON property `resourceId`
622
+ # @return [String]
623
+ attr_accessor :resource_id
624
+
625
+ # A version-specific identifier for the watched resource.
626
+ # Corresponds to the JSON property `resourceUri`
627
+ # @return [String]
628
+ attr_accessor :resource_uri
629
+
630
+ # An arbitrary string delivered to the target address with each notification
631
+ # delivered over this channel. Optional.
632
+ # Corresponds to the JSON property `token`
633
+ # @return [String]
634
+ attr_accessor :token
635
+
636
+ # The type of delivery mechanism used for this channel.
637
+ # Corresponds to the JSON property `type`
638
+ # @return [String]
639
+ attr_accessor :type
640
+
641
+ def initialize(**args)
642
+ update!(**args)
643
+ end
644
+
645
+ # Update properties of this object
646
+ def update!(**args)
647
+ @address = args[:address] unless args[:address].nil?
648
+ @expiration = args[:expiration] unless args[:expiration].nil?
649
+ @id = args[:id] unless args[:id].nil?
650
+ @kind = args[:kind] unless args[:kind].nil?
651
+ @params = args[:params] unless args[:params].nil?
652
+ @payload = args[:payload] unless args[:payload].nil?
653
+ @resource_id = args[:resource_id] unless args[:resource_id].nil?
654
+ @resource_uri = args[:resource_uri] unless args[:resource_uri].nil?
655
+ @token = args[:token] unless args[:token].nil?
656
+ @type = args[:type] unless args[:type].nil?
657
+ end
658
+ end
659
+
660
+ # A Compose request.
661
+ class ComposeRequest
662
+ include Google::Apis::Core::Hashable
663
+
664
+ # An object.
665
+ # Corresponds to the JSON property `destination`
666
+ # @return [Google::Apis::StorageV1::Object]
667
+ attr_accessor :destination
668
+
669
+ # The kind of item this is.
670
+ # Corresponds to the JSON property `kind`
671
+ # @return [String]
672
+ attr_accessor :kind
673
+
674
+ # The list of source objects that will be concatenated into a single object.
675
+ # Corresponds to the JSON property `sourceObjects`
676
+ # @return [Array<Google::Apis::StorageV1::ComposeRequest::SourceObject>]
677
+ attr_accessor :source_objects
678
+
679
+ def initialize(**args)
680
+ update!(**args)
681
+ end
682
+
683
+ # Update properties of this object
684
+ def update!(**args)
685
+ @destination = args[:destination] unless args[:destination].nil?
686
+ @kind = args[:kind] unless args[:kind].nil?
687
+ @source_objects = args[:source_objects] unless args[:source_objects].nil?
688
+ end
689
+
690
+ #
691
+ class SourceObject
692
+ include Google::Apis::Core::Hashable
693
+
694
+ # The generation of this object to use as the source.
695
+ # Corresponds to the JSON property `generation`
696
+ # @return [String]
697
+ attr_accessor :generation
698
+
699
+ # The source object's name. The source object's bucket is implicitly the
700
+ # destination bucket.
701
+ # Corresponds to the JSON property `name`
702
+ # @return [String]
703
+ attr_accessor :name
704
+
705
+ # Conditions that must be met for this operation to execute.
706
+ # Corresponds to the JSON property `objectPreconditions`
707
+ # @return [Google::Apis::StorageV1::ComposeRequest::SourceObject::ObjectPreconditions]
708
+ attr_accessor :object_preconditions
709
+
710
+ def initialize(**args)
711
+ update!(**args)
712
+ end
713
+
714
+ # Update properties of this object
715
+ def update!(**args)
716
+ @generation = args[:generation] unless args[:generation].nil?
717
+ @name = args[:name] unless args[:name].nil?
718
+ @object_preconditions = args[:object_preconditions] unless args[:object_preconditions].nil?
719
+ end
720
+
721
+ # Conditions that must be met for this operation to execute.
722
+ class ObjectPreconditions
723
+ include Google::Apis::Core::Hashable
724
+
725
+ # Only perform the composition if the generation of the source object that would
726
+ # be used matches this value. If this value and a generation are both specified,
727
+ # they must be the same value or the call will fail.
728
+ # Corresponds to the JSON property `ifGenerationMatch`
729
+ # @return [String]
730
+ attr_accessor :if_generation_match
731
+
732
+ def initialize(**args)
733
+ update!(**args)
734
+ end
735
+
736
+ # Update properties of this object
737
+ def update!(**args)
738
+ @if_generation_match = args[:if_generation_match] unless args[:if_generation_match].nil?
739
+ end
740
+ end
741
+ end
742
+ end
743
+
744
+ # An object.
745
+ class Object
746
+ include Google::Apis::Core::Hashable
747
+
748
+ # Access controls on the object.
749
+ # Corresponds to the JSON property `acl`
750
+ # @return [Array<Google::Apis::StorageV1::ObjectAccessControl>]
751
+ attr_accessor :acl
752
+
753
+ # The name of the bucket containing this object.
754
+ # Corresponds to the JSON property `bucket`
755
+ # @return [String]
756
+ attr_accessor :bucket
757
+
758
+ # Cache-Control directive for the object data.
759
+ # Corresponds to the JSON property `cacheControl`
760
+ # @return [String]
761
+ attr_accessor :cache_control
762
+
763
+ # Number of underlying components that make up this object. Components are
764
+ # accumulated by compose operations.
765
+ # Corresponds to the JSON property `componentCount`
766
+ # @return [Fixnum]
767
+ attr_accessor :component_count
768
+
769
+ # Content-Disposition of the object data.
770
+ # Corresponds to the JSON property `contentDisposition`
771
+ # @return [String]
772
+ attr_accessor :content_disposition
773
+
774
+ # Content-Encoding of the object data.
775
+ # Corresponds to the JSON property `contentEncoding`
776
+ # @return [String]
777
+ attr_accessor :content_encoding
778
+
779
+ # Content-Language of the object data.
780
+ # Corresponds to the JSON property `contentLanguage`
781
+ # @return [String]
782
+ attr_accessor :content_language
783
+
784
+ # Content-Type of the object data.
785
+ # Corresponds to the JSON property `contentType`
786
+ # @return [String]
787
+ attr_accessor :content_type
788
+
789
+ # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64 in
790
+ # big-endian byte order. For more information about using the CRC32c checksum,
791
+ # see Hashes and ETags: Best Practices.
792
+ # Corresponds to the JSON property `crc32c`
793
+ # @return [String]
794
+ attr_accessor :crc32c
795
+
796
+ # Metadata of customer-supplied encryption key, if the object is encrypted by
797
+ # such a key.
798
+ # Corresponds to the JSON property `customerEncryption`
799
+ # @return [Google::Apis::StorageV1::Object::CustomerEncryption]
800
+ attr_accessor :customer_encryption
801
+
802
+ # HTTP 1.1 Entity tag for the object.
803
+ # Corresponds to the JSON property `etag`
804
+ # @return [String]
805
+ attr_accessor :etag
806
+
807
+ # The content generation of this object. Used for object versioning.
808
+ # Corresponds to the JSON property `generation`
809
+ # @return [String]
810
+ attr_accessor :generation
811
+
812
+ # The ID of the object.
813
+ # Corresponds to the JSON property `id`
814
+ # @return [String]
815
+ attr_accessor :id
816
+
817
+ # The kind of item this is. For objects, this is always storage#object.
818
+ # Corresponds to the JSON property `kind`
819
+ # @return [String]
820
+ attr_accessor :kind
821
+
822
+ # MD5 hash of the data; encoded using base64. For more information about using
823
+ # the MD5 hash, see Hashes and ETags: Best Practices.
824
+ # Corresponds to the JSON property `md5Hash`
825
+ # @return [String]
826
+ attr_accessor :md5_hash
827
+
828
+ # Media download link.
829
+ # Corresponds to the JSON property `mediaLink`
830
+ # @return [String]
831
+ attr_accessor :media_link
832
+
833
+ # User-provided metadata, in key/value pairs.
834
+ # Corresponds to the JSON property `metadata`
835
+ # @return [Hash<String,String>]
836
+ attr_accessor :metadata
837
+
838
+ # The version of the metadata for this object at this generation. Used for
839
+ # preconditions and for detecting changes in metadata. A metageneration number
840
+ # is only meaningful in the context of a particular generation of a particular
841
+ # object.
842
+ # Corresponds to the JSON property `metageneration`
843
+ # @return [String]
844
+ attr_accessor :metageneration
845
+
846
+ # The name of this object. Required if not specified by URL parameter.
847
+ # Corresponds to the JSON property `name`
848
+ # @return [String]
849
+ attr_accessor :name
850
+
851
+ # The owner of the object. This will always be the uploader of the object.
852
+ # Corresponds to the JSON property `owner`
853
+ # @return [Google::Apis::StorageV1::Object::Owner]
854
+ attr_accessor :owner
855
+
856
+ # The link to this object.
857
+ # Corresponds to the JSON property `selfLink`
858
+ # @return [String]
859
+ attr_accessor :self_link
860
+
861
+ # Content-Length of the data in bytes.
862
+ # Corresponds to the JSON property `size`
863
+ # @return [String]
864
+ attr_accessor :size
865
+
866
+ # Storage class of the object.
867
+ # Corresponds to the JSON property `storageClass`
868
+ # @return [String]
869
+ attr_accessor :storage_class
870
+
871
+ # The creation time of the object in RFC 3339 format.
872
+ # Corresponds to the JSON property `timeCreated`
873
+ # @return [DateTime]
874
+ attr_accessor :time_created
875
+
876
+ # The deletion time of the object in RFC 3339 format. Will be returned if and
877
+ # only if this version of the object has been deleted.
878
+ # Corresponds to the JSON property `timeDeleted`
879
+ # @return [DateTime]
880
+ attr_accessor :time_deleted
881
+
882
+ # The modification time of the object metadata in RFC 3339 format.
883
+ # Corresponds to the JSON property `updated`
884
+ # @return [DateTime]
885
+ attr_accessor :updated
886
+
887
+ def initialize(**args)
888
+ update!(**args)
889
+ end
890
+
891
+ # Update properties of this object
892
+ def update!(**args)
893
+ @acl = args[:acl] unless args[:acl].nil?
894
+ @bucket = args[:bucket] unless args[:bucket].nil?
895
+ @cache_control = args[:cache_control] unless args[:cache_control].nil?
896
+ @component_count = args[:component_count] unless args[:component_count].nil?
897
+ @content_disposition = args[:content_disposition] unless args[:content_disposition].nil?
898
+ @content_encoding = args[:content_encoding] unless args[:content_encoding].nil?
899
+ @content_language = args[:content_language] unless args[:content_language].nil?
900
+ @content_type = args[:content_type] unless args[:content_type].nil?
901
+ @crc32c = args[:crc32c] unless args[:crc32c].nil?
902
+ @customer_encryption = args[:customer_encryption] unless args[:customer_encryption].nil?
903
+ @etag = args[:etag] unless args[:etag].nil?
904
+ @generation = args[:generation] unless args[:generation].nil?
905
+ @id = args[:id] unless args[:id].nil?
906
+ @kind = args[:kind] unless args[:kind].nil?
907
+ @md5_hash = args[:md5_hash] unless args[:md5_hash].nil?
908
+ @media_link = args[:media_link] unless args[:media_link].nil?
909
+ @metadata = args[:metadata] unless args[:metadata].nil?
910
+ @metageneration = args[:metageneration] unless args[:metageneration].nil?
911
+ @name = args[:name] unless args[:name].nil?
912
+ @owner = args[:owner] unless args[:owner].nil?
913
+ @self_link = args[:self_link] unless args[:self_link].nil?
914
+ @size = args[:size] unless args[:size].nil?
915
+ @storage_class = args[:storage_class] unless args[:storage_class].nil?
916
+ @time_created = args[:time_created] unless args[:time_created].nil?
917
+ @time_deleted = args[:time_deleted] unless args[:time_deleted].nil?
918
+ @updated = args[:updated] unless args[:updated].nil?
919
+ end
920
+
921
+ # Metadata of customer-supplied encryption key, if the object is encrypted by
922
+ # such a key.
923
+ class CustomerEncryption
924
+ include Google::Apis::Core::Hashable
925
+
926
+ # The encryption algorithm.
927
+ # Corresponds to the JSON property `encryptionAlgorithm`
928
+ # @return [String]
929
+ attr_accessor :encryption_algorithm
930
+
931
+ # SHA256 hash value of the encryption key.
932
+ # Corresponds to the JSON property `keySha256`
933
+ # @return [String]
934
+ attr_accessor :key_sha256
935
+
936
+ def initialize(**args)
937
+ update!(**args)
938
+ end
939
+
940
+ # Update properties of this object
941
+ def update!(**args)
942
+ @encryption_algorithm = args[:encryption_algorithm] unless args[:encryption_algorithm].nil?
943
+ @key_sha256 = args[:key_sha256] unless args[:key_sha256].nil?
944
+ end
945
+ end
946
+
947
+ # The owner of the object. This will always be the uploader of the object.
948
+ class Owner
949
+ include Google::Apis::Core::Hashable
950
+
951
+ # The entity, in the form user-userId.
952
+ # Corresponds to the JSON property `entity`
953
+ # @return [String]
954
+ attr_accessor :entity
955
+
956
+ # The ID for the entity.
957
+ # Corresponds to the JSON property `entityId`
958
+ # @return [String]
959
+ attr_accessor :entity_id
960
+
961
+ def initialize(**args)
962
+ update!(**args)
963
+ end
964
+
965
+ # Update properties of this object
966
+ def update!(**args)
967
+ @entity = args[:entity] unless args[:entity].nil?
968
+ @entity_id = args[:entity_id] unless args[:entity_id].nil?
969
+ end
970
+ end
971
+ end
972
+
973
+ # An access-control entry.
974
+ class ObjectAccessControl
975
+ include Google::Apis::Core::Hashable
976
+
977
+ # The name of the bucket.
978
+ # Corresponds to the JSON property `bucket`
979
+ # @return [String]
980
+ attr_accessor :bucket
981
+
982
+ # The domain associated with the entity, if any.
983
+ # Corresponds to the JSON property `domain`
984
+ # @return [String]
985
+ attr_accessor :domain
986
+
987
+ # The email address associated with the entity, if any.
988
+ # Corresponds to the JSON property `email`
989
+ # @return [String]
990
+ attr_accessor :email
991
+
992
+ # The entity holding the permission, in one of the following forms:
993
+ # - user-userId
994
+ # - user-email
995
+ # - group-groupId
996
+ # - group-email
997
+ # - domain-domain
998
+ # - project-team-projectId
999
+ # - allUsers
1000
+ # - allAuthenticatedUsers Examples:
1001
+ # - The user liz@example.com would be user-liz@example.com.
1002
+ # - The group example@googlegroups.com would be group-example@googlegroups.com.
1003
+ # - To refer to all members of the Google Apps for Business domain example.com,
1004
+ # the entity would be domain-example.com.
1005
+ # Corresponds to the JSON property `entity`
1006
+ # @return [String]
1007
+ attr_accessor :entity
1008
+
1009
+ # The ID for the entity, if any.
1010
+ # Corresponds to the JSON property `entityId`
1011
+ # @return [String]
1012
+ attr_accessor :entity_id
1013
+
1014
+ # HTTP 1.1 Entity tag for the access-control entry.
1015
+ # Corresponds to the JSON property `etag`
1016
+ # @return [String]
1017
+ attr_accessor :etag
1018
+
1019
+ # The content generation of the object.
1020
+ # Corresponds to the JSON property `generation`
1021
+ # @return [String]
1022
+ attr_accessor :generation
1023
+
1024
+ # The ID of the access-control entry.
1025
+ # Corresponds to the JSON property `id`
1026
+ # @return [String]
1027
+ attr_accessor :id
1028
+
1029
+ # The kind of item this is. For object access control entries, this is always
1030
+ # storage#objectAccessControl.
1031
+ # Corresponds to the JSON property `kind`
1032
+ # @return [String]
1033
+ attr_accessor :kind
1034
+
1035
+ # The name of the object.
1036
+ # Corresponds to the JSON property `object`
1037
+ # @return [String]
1038
+ attr_accessor :object
1039
+
1040
+ # The project team associated with the entity, if any.
1041
+ # Corresponds to the JSON property `projectTeam`
1042
+ # @return [Google::Apis::StorageV1::ObjectAccessControl::ProjectTeam]
1043
+ attr_accessor :project_team
1044
+
1045
+ # The access permission for the entity. Can be READER or OWNER.
1046
+ # Corresponds to the JSON property `role`
1047
+ # @return [String]
1048
+ attr_accessor :role
1049
+
1050
+ # The link to this access-control entry.
1051
+ # Corresponds to the JSON property `selfLink`
1052
+ # @return [String]
1053
+ attr_accessor :self_link
1054
+
1055
+ def initialize(**args)
1056
+ update!(**args)
1057
+ end
1058
+
1059
+ # Update properties of this object
1060
+ def update!(**args)
1061
+ @bucket = args[:bucket] unless args[:bucket].nil?
1062
+ @domain = args[:domain] unless args[:domain].nil?
1063
+ @email = args[:email] unless args[:email].nil?
1064
+ @entity = args[:entity] unless args[:entity].nil?
1065
+ @entity_id = args[:entity_id] unless args[:entity_id].nil?
1066
+ @etag = args[:etag] unless args[:etag].nil?
1067
+ @generation = args[:generation] unless args[:generation].nil?
1068
+ @id = args[:id] unless args[:id].nil?
1069
+ @kind = args[:kind] unless args[:kind].nil?
1070
+ @object = args[:object] unless args[:object].nil?
1071
+ @project_team = args[:project_team] unless args[:project_team].nil?
1072
+ @role = args[:role] unless args[:role].nil?
1073
+ @self_link = args[:self_link] unless args[:self_link].nil?
1074
+ end
1075
+
1076
+ # The project team associated with the entity, if any.
1077
+ class ProjectTeam
1078
+ include Google::Apis::Core::Hashable
1079
+
1080
+ # The project number.
1081
+ # Corresponds to the JSON property `projectNumber`
1082
+ # @return [String]
1083
+ attr_accessor :project_number
1084
+
1085
+ # The team. Can be owners, editors, or viewers.
1086
+ # Corresponds to the JSON property `team`
1087
+ # @return [String]
1088
+ attr_accessor :team
1089
+
1090
+ def initialize(**args)
1091
+ update!(**args)
1092
+ end
1093
+
1094
+ # Update properties of this object
1095
+ def update!(**args)
1096
+ @project_number = args[:project_number] unless args[:project_number].nil?
1097
+ @team = args[:team] unless args[:team].nil?
1098
+ end
1099
+ end
1100
+ end
1101
+
1102
+ # An access-control list.
1103
+ class ObjectAccessControls
1104
+ include Google::Apis::Core::Hashable
1105
+
1106
+ # The list of items.
1107
+ # Corresponds to the JSON property `items`
1108
+ # @return [Array<Object>]
1109
+ attr_accessor :items
1110
+
1111
+ # The kind of item this is. For lists of object access control entries, this is
1112
+ # always storage#objectAccessControls.
1113
+ # Corresponds to the JSON property `kind`
1114
+ # @return [String]
1115
+ attr_accessor :kind
1116
+
1117
+ def initialize(**args)
1118
+ update!(**args)
1119
+ end
1120
+
1121
+ # Update properties of this object
1122
+ def update!(**args)
1123
+ @items = args[:items] unless args[:items].nil?
1124
+ @kind = args[:kind] unless args[:kind].nil?
1125
+ end
1126
+ end
1127
+
1128
+ # A list of objects.
1129
+ class Objects
1130
+ include Google::Apis::Core::Hashable
1131
+
1132
+ # The list of items.
1133
+ # Corresponds to the JSON property `items`
1134
+ # @return [Array<Google::Apis::StorageV1::Object>]
1135
+ attr_accessor :items
1136
+
1137
+ # The kind of item this is. For lists of objects, this is always storage#objects.
1138
+ # Corresponds to the JSON property `kind`
1139
+ # @return [String]
1140
+ attr_accessor :kind
1141
+
1142
+ # The continuation token, used to page through large result sets. Provide this
1143
+ # value in a subsequent request to return the next page of results.
1144
+ # Corresponds to the JSON property `nextPageToken`
1145
+ # @return [String]
1146
+ attr_accessor :next_page_token
1147
+
1148
+ # The list of prefixes of objects matching-but-not-listed up to and including
1149
+ # the requested delimiter.
1150
+ # Corresponds to the JSON property `prefixes`
1151
+ # @return [Array<String>]
1152
+ attr_accessor :prefixes
1153
+
1154
+ def initialize(**args)
1155
+ update!(**args)
1156
+ end
1157
+
1158
+ # Update properties of this object
1159
+ def update!(**args)
1160
+ @items = args[:items] unless args[:items].nil?
1161
+ @kind = args[:kind] unless args[:kind].nil?
1162
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1163
+ @prefixes = args[:prefixes] unless args[:prefixes].nil?
1164
+ end
1165
+ end
1166
+
1167
+ # A rewrite response.
1168
+ class RewriteResponse
1169
+ include Google::Apis::Core::Hashable
1170
+
1171
+ # true if the copy is finished; otherwise, false if the copy is in progress.
1172
+ # This property is always present in the response.
1173
+ # Corresponds to the JSON property `done`
1174
+ # @return [Boolean]
1175
+ attr_accessor :done
1176
+ alias_method :done?, :done
1177
+
1178
+ # The kind of item this is.
1179
+ # Corresponds to the JSON property `kind`
1180
+ # @return [String]
1181
+ attr_accessor :kind
1182
+
1183
+ # The total size of the object being copied in bytes. This property is always
1184
+ # present in the response.
1185
+ # Corresponds to the JSON property `objectSize`
1186
+ # @return [String]
1187
+ attr_accessor :object_size
1188
+
1189
+ # An object.
1190
+ # Corresponds to the JSON property `resource`
1191
+ # @return [Google::Apis::StorageV1::Object]
1192
+ attr_accessor :resource
1193
+
1194
+ # A token to use in subsequent requests to continue copying data. This token is
1195
+ # present in the response only when there is more data to copy.
1196
+ # Corresponds to the JSON property `rewriteToken`
1197
+ # @return [String]
1198
+ attr_accessor :rewrite_token
1199
+
1200
+ # The total bytes written so far, which can be used to provide a waiting user
1201
+ # with a progress indicator. This property is always present in the response.
1202
+ # Corresponds to the JSON property `totalBytesRewritten`
1203
+ # @return [String]
1204
+ attr_accessor :total_bytes_rewritten
1205
+
1206
+ def initialize(**args)
1207
+ update!(**args)
1208
+ end
1209
+
1210
+ # Update properties of this object
1211
+ def update!(**args)
1212
+ @done = args[:done] unless args[:done].nil?
1213
+ @kind = args[:kind] unless args[:kind].nil?
1214
+ @object_size = args[:object_size] unless args[:object_size].nil?
1215
+ @resource = args[:resource] unless args[:resource].nil?
1216
+ @rewrite_token = args[:rewrite_token] unless args[:rewrite_token].nil?
1217
+ @total_bytes_rewritten = args[:total_bytes_rewritten] unless args[:total_bytes_rewritten].nil?
1218
+ end
1219
+ end
1220
+ end
1221
+ end
1222
+ end