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,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