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,49 @@
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/genomics_v1/service.rb'
16
+ require 'google/apis/genomics_v1/classes.rb'
17
+ require 'google/apis/genomics_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Genomics API
22
+ #
23
+ # An API to store, process, explore, and share genomic data. It supports
24
+ # reference-based alignements, genetic variants, and reference genomes. This API
25
+ # provides an implementation of the Global Alliance for Genomics and Health (
26
+ # GA4GH) v0.5.1 API as well as several extensions.
27
+ #
28
+ # @see
29
+ module GenomicsV1
30
+ VERSION = 'V1'
31
+ REVISION = '20160113'
32
+
33
+ # View and manage your data in Google BigQuery
34
+ AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
35
+
36
+ # View and manage your data across Google Cloud Platform services
37
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
38
+
39
+ # Manage your data in Google Cloud Storage
40
+ AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write'
41
+
42
+ # View and manage Genomics data
43
+ AUTH_GENOMICS = 'https://www.googleapis.com/auth/genomics'
44
+
45
+ # View Genomics data
46
+ AUTH_GENOMICS_READONLY = 'https://www.googleapis.com/auth/genomics.readonly'
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,2609 @@
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 GenomicsV1
24
+
25
+ # The dataset list response.
26
+ class ListDatasetsResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The list of matching Datasets.
30
+ # Corresponds to the JSON property `datasets`
31
+ # @return [Array<Google::Apis::GenomicsV1::Dataset>]
32
+ attr_accessor :datasets
33
+
34
+ # The continuation token, which is used to page through large result sets.
35
+ # Provide this value in a subsequent request to return the next page of results.
36
+ # This field will be empty if there aren't any additional results.
37
+ # Corresponds to the JSON property `nextPageToken`
38
+ # @return [String]
39
+ attr_accessor :next_page_token
40
+
41
+ def initialize(**args)
42
+ update!(**args)
43
+ end
44
+
45
+ # Update properties of this object
46
+ def update!(**args)
47
+ @datasets = args[:datasets] unless args[:datasets].nil?
48
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
49
+ end
50
+ end
51
+
52
+ # A Dataset is a collection of genomic data. For more genomics resource
53
+ # definitions, see [Fundamentals of Google Genomics](https://cloud.google.com/
54
+ # genomics/fundamentals-of-google-genomics)
55
+ class Dataset
56
+ include Google::Apis::Core::Hashable
57
+
58
+ # The server-generated dataset ID, unique across all datasets.
59
+ # Corresponds to the JSON property `id`
60
+ # @return [String]
61
+ attr_accessor :id
62
+
63
+ # The Google Developers Console project ID that this dataset belongs to.
64
+ # Corresponds to the JSON property `projectId`
65
+ # @return [String]
66
+ attr_accessor :project_id
67
+
68
+ # The dataset name.
69
+ # Corresponds to the JSON property `name`
70
+ # @return [String]
71
+ attr_accessor :name
72
+
73
+ # The time this dataset was created, in seconds from the epoch.
74
+ # Corresponds to the JSON property `createTime`
75
+ # @return [String]
76
+ attr_accessor :create_time
77
+
78
+ def initialize(**args)
79
+ update!(**args)
80
+ end
81
+
82
+ # Update properties of this object
83
+ def update!(**args)
84
+ @id = args[:id] unless args[:id].nil?
85
+ @project_id = args[:project_id] unless args[:project_id].nil?
86
+ @name = args[:name] unless args[:name].nil?
87
+ @create_time = args[:create_time] unless args[:create_time].nil?
88
+ end
89
+ end
90
+
91
+ # A generic empty message that you can re-use to avoid defining duplicated empty
92
+ # messages in your APIs. A typical example is to use it as the request or the
93
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
94
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
95
+ # `Empty` is empty JSON object ````.
96
+ class Empty
97
+ include Google::Apis::Core::Hashable
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ end
106
+ end
107
+
108
+ #
109
+ class UndeleteDatasetRequest
110
+ include Google::Apis::Core::Hashable
111
+
112
+ def initialize(**args)
113
+ update!(**args)
114
+ end
115
+
116
+ # Update properties of this object
117
+ def update!(**args)
118
+ end
119
+ end
120
+
121
+ # Request message for `SetIamPolicy` method.
122
+ class SetIamPolicyRequest
123
+ include Google::Apis::Core::Hashable
124
+
125
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
126
+ # access control policies for Cloud Platform resources. A `Policy` consists of a
127
+ # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
128
+ # the members can be user accounts, Google groups, Google domains, and service
129
+ # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
130
+ # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
131
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
132
+ # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
133
+ # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
134
+ # IAM developer's guide](https://cloud.google.com/iam).
135
+ # Corresponds to the JSON property `policy`
136
+ # @return [Google::Apis::GenomicsV1::Policy]
137
+ attr_accessor :policy
138
+
139
+ def initialize(**args)
140
+ update!(**args)
141
+ end
142
+
143
+ # Update properties of this object
144
+ def update!(**args)
145
+ @policy = args[:policy] unless args[:policy].nil?
146
+ end
147
+ end
148
+
149
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
150
+ # access control policies for Cloud Platform resources. A `Policy` consists of a
151
+ # list of `bindings`. A `Binding` binds a list of `members` to a `role`, where
152
+ # the members can be user accounts, Google groups, Google domains, and service
153
+ # accounts. A `role` is a named list of permissions defined by IAM. **Example** `
154
+ # "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com", "
155
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
156
+ # appspot.gserviceaccount.com"] `, ` "role": "roles/viewer", "members": ["user:
157
+ # sean@example.com"] ` ] ` For a description of IAM and its features, see the [
158
+ # IAM developer's guide](https://cloud.google.com/iam).
159
+ class Policy
160
+ include Google::Apis::Core::Hashable
161
+
162
+ # Version of the `Policy`. The default version is 0.
163
+ # Corresponds to the JSON property `version`
164
+ # @return [Fixnum]
165
+ attr_accessor :version
166
+
167
+ # Associates a list of `members` to a `role`. Multiple `bindings` must not be
168
+ # specified for the same `role`. `bindings` with no members will result in an
169
+ # error.
170
+ # Corresponds to the JSON property `bindings`
171
+ # @return [Array<Google::Apis::GenomicsV1::Binding>]
172
+ attr_accessor :bindings
173
+
174
+ # `etag` is used for optimistic concurrency control as a way to help prevent
175
+ # simultaneous updates of a policy from overwriting each other. It is strongly
176
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
177
+ # to perform policy updates in order to avoid race conditions: An `etag` is
178
+ # returned in the response to `getIamPolicy`, and systems are expected to put
179
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
180
+ # applied to the same version of the policy. If no `etag` is provided in the
181
+ # call to `setIamPolicy`, then the existing policy is overwritten blindly.
182
+ # Corresponds to the JSON property `etag`
183
+ # @return [String]
184
+ attr_accessor :etag
185
+
186
+ def initialize(**args)
187
+ update!(**args)
188
+ end
189
+
190
+ # Update properties of this object
191
+ def update!(**args)
192
+ @version = args[:version] unless args[:version].nil?
193
+ @bindings = args[:bindings] unless args[:bindings].nil?
194
+ @etag = args[:etag] unless args[:etag].nil?
195
+ end
196
+ end
197
+
198
+ # Associates `members` with a `role`.
199
+ class Binding
200
+ include Google::Apis::Core::Hashable
201
+
202
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
203
+ # , or `roles/owner`. Required
204
+ # Corresponds to the JSON property `role`
205
+ # @return [String]
206
+ attr_accessor :role
207
+
208
+ # Specifies the identities requesting access for a Cloud Platform resource. `
209
+ # members` can have the following values: * `allUsers`: A special identifier
210
+ # that represents anyone who is on the internet; with or without a Google
211
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
212
+ # anyone who is authenticated with a Google account or a service account. * `
213
+ # user:`emailid``: An email address that represents a specific Google account.
214
+ # For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:`
215
+ # emailid``: An email address that represents a service account. For example, `
216
+ # my-other-app@appspot.gserviceaccount.com`. * `group:`emailid``: An email
217
+ # address that represents a Google group. For example, `admins@example.com`. * `
218
+ # domain:`domain``: A Google Apps domain name that represents all the users of
219
+ # that domain. For example, `google.com` or `example.com`.
220
+ # Corresponds to the JSON property `members`
221
+ # @return [Array<String>]
222
+ attr_accessor :members
223
+
224
+ def initialize(**args)
225
+ update!(**args)
226
+ end
227
+
228
+ # Update properties of this object
229
+ def update!(**args)
230
+ @role = args[:role] unless args[:role].nil?
231
+ @members = args[:members] unless args[:members].nil?
232
+ end
233
+ end
234
+
235
+ # Request message for `GetIamPolicy` method.
236
+ class GetIamPolicyRequest
237
+ include Google::Apis::Core::Hashable
238
+
239
+ def initialize(**args)
240
+ update!(**args)
241
+ end
242
+
243
+ # Update properties of this object
244
+ def update!(**args)
245
+ end
246
+ end
247
+
248
+ # Request message for `TestIamPermissions` method.
249
+ class TestIamPermissionsRequest
250
+ include Google::Apis::Core::Hashable
251
+
252
+ # REQUIRED: The set of permissions to check for the 'resource'. Permissions with
253
+ # wildcards (such as '*' or 'storage.*') are not allowed. Allowed permissions
254
+ # are: * `genomics.datasets.create` * `genomics.datasets.delete` * `genomics.
255
+ # datasets.get` * `genomics.datasets.list` * `genomics.datasets.update` * `
256
+ # genomics.datasets.getIamPolicy` * `genomics.datasets.setIamPolicy`
257
+ # Corresponds to the JSON property `permissions`
258
+ # @return [Array<String>]
259
+ attr_accessor :permissions
260
+
261
+ def initialize(**args)
262
+ update!(**args)
263
+ end
264
+
265
+ # Update properties of this object
266
+ def update!(**args)
267
+ @permissions = args[:permissions] unless args[:permissions].nil?
268
+ end
269
+ end
270
+
271
+ # Response message for `TestIamPermissions` method.
272
+ class TestIamPermissionsResponse
273
+ include Google::Apis::Core::Hashable
274
+
275
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
276
+ # Corresponds to the JSON property `permissions`
277
+ # @return [Array<String>]
278
+ attr_accessor :permissions
279
+
280
+ def initialize(**args)
281
+ update!(**args)
282
+ end
283
+
284
+ # Update properties of this object
285
+ def update!(**args)
286
+ @permissions = args[:permissions] unless args[:permissions].nil?
287
+ end
288
+ end
289
+
290
+ # This resource represents a long-running operation that is the result of a
291
+ # network API call.
292
+ class Operation
293
+ include Google::Apis::Core::Hashable
294
+
295
+ # The server-assigned name, which is only unique within the same service that
296
+ # originally returns it. For example: `operations/CJHU7Oi_ChDrveSpBRjfuL-
297
+ # qzoWAgEw`
298
+ # Corresponds to the JSON property `name`
299
+ # @return [String]
300
+ attr_accessor :name
301
+
302
+ # An OperationMetadata object. This will always be returned with the Operation.
303
+ # Corresponds to the JSON property `metadata`
304
+ # @return [Hash<String,Object>]
305
+ attr_accessor :metadata
306
+
307
+ # If the value is `false`, it means the operation is still in progress. If true,
308
+ # the operation is completed, and either `error` or `response` is available.
309
+ # Corresponds to the JSON property `done`
310
+ # @return [Boolean]
311
+ attr_accessor :done
312
+ alias_method :done?, :done
313
+
314
+ # The `Status` type defines a logical error model that is suitable for different
315
+ # programming environments, including REST APIs and RPC APIs. It is used by [
316
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
317
+ # use and understand for most users - Flexible enough to meet unexpected needs #
318
+ # Overview The `Status` message contains three pieces of data: error code, error
319
+ # message, and error details. The error code should be an enum value of google.
320
+ # rpc.Code, but it may accept additional error codes if needed. The error
321
+ # message should be a developer-facing English message that helps developers *
322
+ # understand* and *resolve* the error. If a localized user-facing error message
323
+ # is needed, put the localized message in the error details or localize it in
324
+ # the client. The optional error details may contain arbitrary information about
325
+ # the error. There is a predefined set of error detail types in the package `
326
+ # google.rpc` which can be used for common error conditions. # Language mapping
327
+ # The `Status` message is the logical representation of the error model, but it
328
+ # is not necessarily the actual wire format. When the `Status` message is
329
+ # exposed in different client libraries and different wire protocols, it can be
330
+ # mapped differently. For example, it will likely be mapped to some exceptions
331
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
332
+ # error model and the `Status` message can be used in a variety of environments,
333
+ # either with or without APIs, to provide a consistent developer experience
334
+ # across different environments. Example uses of this error model include: -
335
+ # Partial errors. If a service needs to return partial errors to the client, it
336
+ # may embed the `Status` in the normal response to indicate the partial errors. -
337
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
338
+ # Status` message for error reporting purpose. - Batch operations. If a client
339
+ # uses batch request and batch response, the `Status` message should be used
340
+ # directly inside batch response, one for each error sub-response. -
341
+ # Asynchronous operations. If an API call embeds asynchronous operation results
342
+ # in its response, the status of those operations should be represented directly
343
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
344
+ # the message `Status` could be used directly after any stripping needed for
345
+ # security/privacy reasons.
346
+ # Corresponds to the JSON property `error`
347
+ # @return [Google::Apis::GenomicsV1::Status]
348
+ attr_accessor :error
349
+
350
+ # If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If
351
+ # importing Variants, an ImportVariantsResponse is returned. For exports, an
352
+ # empty response is returned.
353
+ # Corresponds to the JSON property `response`
354
+ # @return [Hash<String,Object>]
355
+ attr_accessor :response
356
+
357
+ def initialize(**args)
358
+ update!(**args)
359
+ end
360
+
361
+ # Update properties of this object
362
+ def update!(**args)
363
+ @name = args[:name] unless args[:name].nil?
364
+ @metadata = args[:metadata] unless args[:metadata].nil?
365
+ @done = args[:done] unless args[:done].nil?
366
+ @error = args[:error] unless args[:error].nil?
367
+ @response = args[:response] unless args[:response].nil?
368
+ end
369
+ end
370
+
371
+ # The `Status` type defines a logical error model that is suitable for different
372
+ # programming environments, including REST APIs and RPC APIs. It is used by [
373
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
374
+ # use and understand for most users - Flexible enough to meet unexpected needs #
375
+ # Overview The `Status` message contains three pieces of data: error code, error
376
+ # message, and error details. The error code should be an enum value of google.
377
+ # rpc.Code, but it may accept additional error codes if needed. The error
378
+ # message should be a developer-facing English message that helps developers *
379
+ # understand* and *resolve* the error. If a localized user-facing error message
380
+ # is needed, put the localized message in the error details or localize it in
381
+ # the client. The optional error details may contain arbitrary information about
382
+ # the error. There is a predefined set of error detail types in the package `
383
+ # google.rpc` which can be used for common error conditions. # Language mapping
384
+ # The `Status` message is the logical representation of the error model, but it
385
+ # is not necessarily the actual wire format. When the `Status` message is
386
+ # exposed in different client libraries and different wire protocols, it can be
387
+ # mapped differently. For example, it will likely be mapped to some exceptions
388
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
389
+ # error model and the `Status` message can be used in a variety of environments,
390
+ # either with or without APIs, to provide a consistent developer experience
391
+ # across different environments. Example uses of this error model include: -
392
+ # Partial errors. If a service needs to return partial errors to the client, it
393
+ # may embed the `Status` in the normal response to indicate the partial errors. -
394
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
395
+ # Status` message for error reporting purpose. - Batch operations. If a client
396
+ # uses batch request and batch response, the `Status` message should be used
397
+ # directly inside batch response, one for each error sub-response. -
398
+ # Asynchronous operations. If an API call embeds asynchronous operation results
399
+ # in its response, the status of those operations should be represented directly
400
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
401
+ # the message `Status` could be used directly after any stripping needed for
402
+ # security/privacy reasons.
403
+ class Status
404
+ include Google::Apis::Core::Hashable
405
+
406
+ # The status code, which should be an enum value of google.rpc.Code.
407
+ # Corresponds to the JSON property `code`
408
+ # @return [Fixnum]
409
+ attr_accessor :code
410
+
411
+ # A developer-facing error message, which should be in English. Any user-facing
412
+ # error message should be localized and sent in the google.rpc.Status.details
413
+ # field, or localized by the client.
414
+ # Corresponds to the JSON property `message`
415
+ # @return [String]
416
+ attr_accessor :message
417
+
418
+ # A list of messages that carry the error details. There will be a common set of
419
+ # message types for APIs to use.
420
+ # Corresponds to the JSON property `details`
421
+ # @return [Array<Hash<String,Object>>]
422
+ attr_accessor :details
423
+
424
+ def initialize(**args)
425
+ update!(**args)
426
+ end
427
+
428
+ # Update properties of this object
429
+ def update!(**args)
430
+ @code = args[:code] unless args[:code].nil?
431
+ @message = args[:message] unless args[:message].nil?
432
+ @details = args[:details] unless args[:details].nil?
433
+ end
434
+ end
435
+
436
+ # The response message for Operations.ListOperations.
437
+ class ListOperationsResponse
438
+ include Google::Apis::Core::Hashable
439
+
440
+ # A list of operations that matches the specified filter in the request.
441
+ # Corresponds to the JSON property `operations`
442
+ # @return [Array<Google::Apis::GenomicsV1::Operation>]
443
+ attr_accessor :operations
444
+
445
+ # The standard List next-page token.
446
+ # Corresponds to the JSON property `nextPageToken`
447
+ # @return [String]
448
+ attr_accessor :next_page_token
449
+
450
+ def initialize(**args)
451
+ update!(**args)
452
+ end
453
+
454
+ # Update properties of this object
455
+ def update!(**args)
456
+ @operations = args[:operations] unless args[:operations].nil?
457
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
458
+ end
459
+ end
460
+
461
+ # The request message for Operations.CancelOperation.
462
+ class CancelOperationRequest
463
+ include Google::Apis::Core::Hashable
464
+
465
+ def initialize(**args)
466
+ update!(**args)
467
+ end
468
+
469
+ # Update properties of this object
470
+ def update!(**args)
471
+ end
472
+ end
473
+
474
+ # The read group set import request.
475
+ class ImportReadGroupSetsRequest
476
+ include Google::Apis::Core::Hashable
477
+
478
+ # Required. The ID of the dataset these read group sets will belong to. The
479
+ # caller must have WRITE permissions to this dataset.
480
+ # Corresponds to the JSON property `datasetId`
481
+ # @return [String]
482
+ attr_accessor :dataset_id
483
+
484
+ # The reference set to which the imported read group sets are aligned to, if any.
485
+ # The reference names of this reference set must be a superset of those found
486
+ # in the imported file headers. If no reference set id is provided, a best
487
+ # effort is made to associate with a matching reference set.
488
+ # Corresponds to the JSON property `referenceSetId`
489
+ # @return [String]
490
+ attr_accessor :reference_set_id
491
+
492
+ # A list of URIs pointing at [BAM files](https://samtools.github.io/hts-specs/
493
+ # SAMv1.pdf) in Google Cloud Storage.
494
+ # Corresponds to the JSON property `sourceUris`
495
+ # @return [Array<String>]
496
+ attr_accessor :source_uris
497
+
498
+ # The partition strategy describes how read groups are partitioned into read
499
+ # group sets.
500
+ # Corresponds to the JSON property `partitionStrategy`
501
+ # @return [String]
502
+ attr_accessor :partition_strategy
503
+
504
+ def initialize(**args)
505
+ update!(**args)
506
+ end
507
+
508
+ # Update properties of this object
509
+ def update!(**args)
510
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
511
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
512
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
513
+ @partition_strategy = args[:partition_strategy] unless args[:partition_strategy].nil?
514
+ end
515
+ end
516
+
517
+ # The read group set export request.
518
+ class ExportReadGroupSetRequest
519
+ include Google::Apis::Core::Hashable
520
+
521
+ # Required. The Google Developers Console project ID that owns this export. The
522
+ # caller must have WRITE access to this project.
523
+ # Corresponds to the JSON property `projectId`
524
+ # @return [String]
525
+ attr_accessor :project_id
526
+
527
+ # Required. A Google Cloud Storage URI for the exported BAM file. The currently
528
+ # authenticated user must have write access to the new file. An error will be
529
+ # returned if the URI already contains data.
530
+ # Corresponds to the JSON property `exportUri`
531
+ # @return [String]
532
+ attr_accessor :export_uri
533
+
534
+ # The reference names to export. If this is not specified, all reference
535
+ # sequences, including unmapped reads, are exported. Use `*` to export only
536
+ # unmapped reads.
537
+ # Corresponds to the JSON property `referenceNames`
538
+ # @return [Array<String>]
539
+ attr_accessor :reference_names
540
+
541
+ def initialize(**args)
542
+ update!(**args)
543
+ end
544
+
545
+ # Update properties of this object
546
+ def update!(**args)
547
+ @project_id = args[:project_id] unless args[:project_id].nil?
548
+ @export_uri = args[:export_uri] unless args[:export_uri].nil?
549
+ @reference_names = args[:reference_names] unless args[:reference_names].nil?
550
+ end
551
+ end
552
+
553
+ # The read group set search request.
554
+ class SearchReadGroupSetsRequest
555
+ include Google::Apis::Core::Hashable
556
+
557
+ # Restricts this query to read group sets within the given datasets. At least
558
+ # one ID must be provided.
559
+ # Corresponds to the JSON property `datasetIds`
560
+ # @return [Array<String>]
561
+ attr_accessor :dataset_ids
562
+
563
+ # Only return read group sets for which a substring of the name matches this
564
+ # string.
565
+ # Corresponds to the JSON property `name`
566
+ # @return [String]
567
+ attr_accessor :name
568
+
569
+ # The continuation token, which is used to page through large result sets. To
570
+ # get the next page of results, set this parameter to the value of `
571
+ # nextPageToken` from the previous response.
572
+ # Corresponds to the JSON property `pageToken`
573
+ # @return [String]
574
+ attr_accessor :page_token
575
+
576
+ # The maximum number of results to return in a single page. If unspecified,
577
+ # defaults to 256. The maximum value is 1024.
578
+ # Corresponds to the JSON property `pageSize`
579
+ # @return [Fixnum]
580
+ attr_accessor :page_size
581
+
582
+ def initialize(**args)
583
+ update!(**args)
584
+ end
585
+
586
+ # Update properties of this object
587
+ def update!(**args)
588
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
589
+ @name = args[:name] unless args[:name].nil?
590
+ @page_token = args[:page_token] unless args[:page_token].nil?
591
+ @page_size = args[:page_size] unless args[:page_size].nil?
592
+ end
593
+ end
594
+
595
+ # The read group set search response.
596
+ class SearchReadGroupSetsResponse
597
+ include Google::Apis::Core::Hashable
598
+
599
+ # The list of matching read group sets.
600
+ # Corresponds to the JSON property `readGroupSets`
601
+ # @return [Array<Google::Apis::GenomicsV1::ReadGroupSet>]
602
+ attr_accessor :read_group_sets
603
+
604
+ # The continuation token, which is used to page through large result sets.
605
+ # Provide this value in a subsequent request to return the next page of results.
606
+ # This field will be empty if there aren't any additional results.
607
+ # Corresponds to the JSON property `nextPageToken`
608
+ # @return [String]
609
+ attr_accessor :next_page_token
610
+
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
614
+
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @read_group_sets = args[:read_group_sets] unless args[:read_group_sets].nil?
618
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
619
+ end
620
+ end
621
+
622
+ # A read group set is a logical collection of read groups, which are collections
623
+ # of reads produced by a sequencer. A read group set typically models reads
624
+ # corresponding to one sample, sequenced one way, and aligned one way. * A read
625
+ # group set belongs to one dataset. * A read group belongs to one read group set.
626
+ # * A read belongs to one read group. For more genomics resource definitions,
627
+ # see [Fundamentals of Google Genomics](https://cloud.google.com/genomics/
628
+ # fundamentals-of-google-genomics)
629
+ class ReadGroupSet
630
+ include Google::Apis::Core::Hashable
631
+
632
+ # The server-generated read group set ID, unique for all read group sets.
633
+ # Corresponds to the JSON property `id`
634
+ # @return [String]
635
+ attr_accessor :id
636
+
637
+ # The dataset to which this read group set belongs.
638
+ # Corresponds to the JSON property `datasetId`
639
+ # @return [String]
640
+ attr_accessor :dataset_id
641
+
642
+ # The reference set to which the reads in this read group set are aligned.
643
+ # Corresponds to the JSON property `referenceSetId`
644
+ # @return [String]
645
+ attr_accessor :reference_set_id
646
+
647
+ # The read group set name. By default this will be initialized to the sample
648
+ # name of the sequenced data contained in this set.
649
+ # Corresponds to the JSON property `name`
650
+ # @return [String]
651
+ attr_accessor :name
652
+
653
+ # The filename of the original source file for this read group set, if any.
654
+ # Corresponds to the JSON property `filename`
655
+ # @return [String]
656
+ attr_accessor :filename
657
+
658
+ # The read groups in this set. There are typically 1-10 read groups in a read
659
+ # group set.
660
+ # Corresponds to the JSON property `readGroups`
661
+ # @return [Array<Google::Apis::GenomicsV1::ReadGroup>]
662
+ attr_accessor :read_groups
663
+
664
+ # A map of additional read group set information.
665
+ # Corresponds to the JSON property `info`
666
+ # @return [Hash<String,Array<Object>>]
667
+ attr_accessor :info
668
+
669
+ def initialize(**args)
670
+ update!(**args)
671
+ end
672
+
673
+ # Update properties of this object
674
+ def update!(**args)
675
+ @id = args[:id] unless args[:id].nil?
676
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
677
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
678
+ @name = args[:name] unless args[:name].nil?
679
+ @filename = args[:filename] unless args[:filename].nil?
680
+ @read_groups = args[:read_groups] unless args[:read_groups].nil?
681
+ @info = args[:info] unless args[:info].nil?
682
+ end
683
+ end
684
+
685
+ # A read group is all the data that's processed the same way by the sequencer.
686
+ class ReadGroup
687
+ include Google::Apis::Core::Hashable
688
+
689
+ # The server-generated read group ID, unique for all read groups. Note: This is
690
+ # different than the @RG ID field in the SAM spec. For that value, see name.
691
+ # Corresponds to the JSON property `id`
692
+ # @return [String]
693
+ attr_accessor :id
694
+
695
+ # The dataset to which this read group belongs.
696
+ # Corresponds to the JSON property `datasetId`
697
+ # @return [String]
698
+ attr_accessor :dataset_id
699
+
700
+ # The read group name. This corresponds to the @RG ID field in the SAM spec.
701
+ # Corresponds to the JSON property `name`
702
+ # @return [String]
703
+ attr_accessor :name
704
+
705
+ # A free-form text description of this read group.
706
+ # Corresponds to the JSON property `description`
707
+ # @return [String]
708
+ attr_accessor :description
709
+
710
+ # A client-supplied sample identifier for the reads in this read group.
711
+ # Corresponds to the JSON property `sampleId`
712
+ # @return [String]
713
+ attr_accessor :sample_id
714
+
715
+ # The experiment used to generate this read group.
716
+ # Corresponds to the JSON property `experiment`
717
+ # @return [Google::Apis::GenomicsV1::Experiment]
718
+ attr_accessor :experiment
719
+
720
+ # The predicted insert size of this read group. The insert size is the length
721
+ # the sequenced DNA fragment from end-to-end, not including the adapters.
722
+ # Corresponds to the JSON property `predictedInsertSize`
723
+ # @return [Fixnum]
724
+ attr_accessor :predicted_insert_size
725
+
726
+ # The programs used to generate this read group. Programs are always identical
727
+ # for all read groups within a read group set. For this reason, only the first
728
+ # read group in a returned set will have this field populated.
729
+ # Corresponds to the JSON property `programs`
730
+ # @return [Array<Google::Apis::GenomicsV1::Program>]
731
+ attr_accessor :programs
732
+
733
+ # The reference set the reads in this read group are aligned to.
734
+ # Corresponds to the JSON property `referenceSetId`
735
+ # @return [String]
736
+ attr_accessor :reference_set_id
737
+
738
+ # A map of additional read group information. This must be of the form map (
739
+ # string key mapping to a list of string values).
740
+ # Corresponds to the JSON property `info`
741
+ # @return [Hash<String,Array<Object>>]
742
+ attr_accessor :info
743
+
744
+ def initialize(**args)
745
+ update!(**args)
746
+ end
747
+
748
+ # Update properties of this object
749
+ def update!(**args)
750
+ @id = args[:id] unless args[:id].nil?
751
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
752
+ @name = args[:name] unless args[:name].nil?
753
+ @description = args[:description] unless args[:description].nil?
754
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
755
+ @experiment = args[:experiment] unless args[:experiment].nil?
756
+ @predicted_insert_size = args[:predicted_insert_size] unless args[:predicted_insert_size].nil?
757
+ @programs = args[:programs] unless args[:programs].nil?
758
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
759
+ @info = args[:info] unless args[:info].nil?
760
+ end
761
+ end
762
+
763
+ #
764
+ class Experiment
765
+ include Google::Apis::Core::Hashable
766
+
767
+ # A client-supplied library identifier; a library is a collection of DNA
768
+ # fragments which have been prepared for sequencing from a sample. This field is
769
+ # important for quality control as error or bias can be introduced during sample
770
+ # preparation.
771
+ # Corresponds to the JSON property `libraryId`
772
+ # @return [String]
773
+ attr_accessor :library_id
774
+
775
+ # The platform unit used as part of this experiment, for example flowcell-
776
+ # barcode.lane for Illumina or slide for SOLiD. Corresponds to the @RG PU field
777
+ # in the SAM spec.
778
+ # Corresponds to the JSON property `platformUnit`
779
+ # @return [String]
780
+ attr_accessor :platform_unit
781
+
782
+ # The sequencing center used as part of this experiment.
783
+ # Corresponds to the JSON property `sequencingCenter`
784
+ # @return [String]
785
+ attr_accessor :sequencing_center
786
+
787
+ # The instrument model used as part of this experiment. This maps to sequencing
788
+ # technology in the SAM spec.
789
+ # Corresponds to the JSON property `instrumentModel`
790
+ # @return [String]
791
+ attr_accessor :instrument_model
792
+
793
+ def initialize(**args)
794
+ update!(**args)
795
+ end
796
+
797
+ # Update properties of this object
798
+ def update!(**args)
799
+ @library_id = args[:library_id] unless args[:library_id].nil?
800
+ @platform_unit = args[:platform_unit] unless args[:platform_unit].nil?
801
+ @sequencing_center = args[:sequencing_center] unless args[:sequencing_center].nil?
802
+ @instrument_model = args[:instrument_model] unless args[:instrument_model].nil?
803
+ end
804
+ end
805
+
806
+ #
807
+ class Program
808
+ include Google::Apis::Core::Hashable
809
+
810
+ # The command line used to run this program.
811
+ # Corresponds to the JSON property `commandLine`
812
+ # @return [String]
813
+ attr_accessor :command_line
814
+
815
+ # The user specified locally unique ID of the program. Used along with `
816
+ # prevProgramId` to define an ordering between programs.
817
+ # Corresponds to the JSON property `id`
818
+ # @return [String]
819
+ attr_accessor :id
820
+
821
+ # The display name of the program. This is typically the colloquial name of the
822
+ # tool used, for example 'bwa' or 'picard'.
823
+ # Corresponds to the JSON property `name`
824
+ # @return [String]
825
+ attr_accessor :name
826
+
827
+ # The ID of the program run before this one.
828
+ # Corresponds to the JSON property `prevProgramId`
829
+ # @return [String]
830
+ attr_accessor :prev_program_id
831
+
832
+ # The version of the program run.
833
+ # Corresponds to the JSON property `version`
834
+ # @return [String]
835
+ attr_accessor :version
836
+
837
+ def initialize(**args)
838
+ update!(**args)
839
+ end
840
+
841
+ # Update properties of this object
842
+ def update!(**args)
843
+ @command_line = args[:command_line] unless args[:command_line].nil?
844
+ @id = args[:id] unless args[:id].nil?
845
+ @name = args[:name] unless args[:name].nil?
846
+ @prev_program_id = args[:prev_program_id] unless args[:prev_program_id].nil?
847
+ @version = args[:version] unless args[:version].nil?
848
+ end
849
+ end
850
+
851
+ #
852
+ class ListCoverageBucketsResponse
853
+ include Google::Apis::Core::Hashable
854
+
855
+ # The length of each coverage bucket in base pairs. Note that buckets at the end
856
+ # of a reference sequence may be shorter. This value is omitted if the bucket
857
+ # width is infinity (the default behaviour, with no range or `targetBucketWidth`)
858
+ # .
859
+ # Corresponds to the JSON property `bucketWidth`
860
+ # @return [String]
861
+ attr_accessor :bucket_width
862
+
863
+ # The coverage buckets. The list of buckets is sparse; a bucket with 0
864
+ # overlapping reads is not returned. A bucket never crosses more than one
865
+ # reference sequence. Each bucket has width `bucketWidth`, unless its end is the
866
+ # end of the reference sequence.
867
+ # Corresponds to the JSON property `coverageBuckets`
868
+ # @return [Array<Google::Apis::GenomicsV1::CoverageBucket>]
869
+ attr_accessor :coverage_buckets
870
+
871
+ # The continuation token, which is used to page through large result sets.
872
+ # Provide this value in a subsequent request to return the next page of results.
873
+ # This field will be empty if there aren't any additional results.
874
+ # Corresponds to the JSON property `nextPageToken`
875
+ # @return [String]
876
+ attr_accessor :next_page_token
877
+
878
+ def initialize(**args)
879
+ update!(**args)
880
+ end
881
+
882
+ # Update properties of this object
883
+ def update!(**args)
884
+ @bucket_width = args[:bucket_width] unless args[:bucket_width].nil?
885
+ @coverage_buckets = args[:coverage_buckets] unless args[:coverage_buckets].nil?
886
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
887
+ end
888
+ end
889
+
890
+ # A bucket over which read coverage has been precomputed. A bucket corresponds
891
+ # to a specific range of the reference sequence.
892
+ class CoverageBucket
893
+ include Google::Apis::Core::Hashable
894
+
895
+ # A 0-based half-open genomic coordinate range for search requests.
896
+ # Corresponds to the JSON property `range`
897
+ # @return [Google::Apis::GenomicsV1::Range]
898
+ attr_accessor :range
899
+
900
+ # The average number of reads which are aligned to each individual reference
901
+ # base in this bucket.
902
+ # Corresponds to the JSON property `meanCoverage`
903
+ # @return [Float]
904
+ attr_accessor :mean_coverage
905
+
906
+ def initialize(**args)
907
+ update!(**args)
908
+ end
909
+
910
+ # Update properties of this object
911
+ def update!(**args)
912
+ @range = args[:range] unless args[:range].nil?
913
+ @mean_coverage = args[:mean_coverage] unless args[:mean_coverage].nil?
914
+ end
915
+ end
916
+
917
+ # A 0-based half-open genomic coordinate range for search requests.
918
+ class Range
919
+ include Google::Apis::Core::Hashable
920
+
921
+ # The reference sequence name, for example `chr1`, `1`, or `chrX`.
922
+ # Corresponds to the JSON property `referenceName`
923
+ # @return [String]
924
+ attr_accessor :reference_name
925
+
926
+ # The start position of the range on the reference, 0-based inclusive.
927
+ # Corresponds to the JSON property `start`
928
+ # @return [String]
929
+ attr_accessor :start
930
+
931
+ # The end position of the range on the reference, 0-based exclusive.
932
+ # Corresponds to the JSON property `end`
933
+ # @return [String]
934
+ attr_accessor :end
935
+
936
+ def initialize(**args)
937
+ update!(**args)
938
+ end
939
+
940
+ # Update properties of this object
941
+ def update!(**args)
942
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
943
+ @start = args[:start] unless args[:start].nil?
944
+ @end = args[:end] unless args[:end].nil?
945
+ end
946
+ end
947
+
948
+ # The read search request.
949
+ class SearchReadsRequest
950
+ include Google::Apis::Core::Hashable
951
+
952
+ # The IDs of the read groups sets within which to search for reads. All
953
+ # specified read group sets must be aligned against a common set of reference
954
+ # sequences; this defines the genomic coordinates for the query. Must specify
955
+ # one of `readGroupSetIds` or `readGroupIds`.
956
+ # Corresponds to the JSON property `readGroupSetIds`
957
+ # @return [Array<String>]
958
+ attr_accessor :read_group_set_ids
959
+
960
+ # The IDs of the read groups within which to search for reads. All specified
961
+ # read groups must belong to the same read group sets. Must specify one of `
962
+ # readGroupSetIds` or `readGroupIds`.
963
+ # Corresponds to the JSON property `readGroupIds`
964
+ # @return [Array<String>]
965
+ attr_accessor :read_group_ids
966
+
967
+ # The reference sequence name, for example `chr1`, `1`, or `chrX`. If set to `*`,
968
+ # only unmapped reads are returned. If unspecified, all reads (mapped and
969
+ # unmapped) are returned.
970
+ # Corresponds to the JSON property `referenceName`
971
+ # @return [String]
972
+ attr_accessor :reference_name
973
+
974
+ # The start position of the range on the reference, 0-based inclusive. If
975
+ # specified, `referenceName` must also be specified.
976
+ # Corresponds to the JSON property `start`
977
+ # @return [String]
978
+ attr_accessor :start
979
+
980
+ # The end position of the range on the reference, 0-based exclusive. If
981
+ # specified, `referenceName` must also be specified.
982
+ # Corresponds to the JSON property `end`
983
+ # @return [String]
984
+ attr_accessor :end
985
+
986
+ # The continuation token, which is used to page through large result sets. To
987
+ # get the next page of results, set this parameter to the value of `
988
+ # nextPageToken` from the previous response.
989
+ # Corresponds to the JSON property `pageToken`
990
+ # @return [String]
991
+ attr_accessor :page_token
992
+
993
+ # The maximum number of results to return in a single page. If unspecified,
994
+ # defaults to 256. The maximum value is 2048.
995
+ # Corresponds to the JSON property `pageSize`
996
+ # @return [Fixnum]
997
+ attr_accessor :page_size
998
+
999
+ def initialize(**args)
1000
+ update!(**args)
1001
+ end
1002
+
1003
+ # Update properties of this object
1004
+ def update!(**args)
1005
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
1006
+ @read_group_ids = args[:read_group_ids] unless args[:read_group_ids].nil?
1007
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1008
+ @start = args[:start] unless args[:start].nil?
1009
+ @end = args[:end] unless args[:end].nil?
1010
+ @page_token = args[:page_token] unless args[:page_token].nil?
1011
+ @page_size = args[:page_size] unless args[:page_size].nil?
1012
+ end
1013
+ end
1014
+
1015
+ # The read search response.
1016
+ class SearchReadsResponse
1017
+ include Google::Apis::Core::Hashable
1018
+
1019
+ # The list of matching alignments sorted by mapped genomic coordinate, if any,
1020
+ # ascending in position within the same reference. Unmapped reads, which have no
1021
+ # position, are returned contiguously and are sorted in ascending lexicographic
1022
+ # order by fragment name.
1023
+ # Corresponds to the JSON property `alignments`
1024
+ # @return [Array<Google::Apis::GenomicsV1::Read>]
1025
+ attr_accessor :alignments
1026
+
1027
+ # The continuation token, which is used to page through large result sets.
1028
+ # Provide this value in a subsequent request to return the next page of results.
1029
+ # This field will be empty if there aren't any additional results.
1030
+ # Corresponds to the JSON property `nextPageToken`
1031
+ # @return [String]
1032
+ attr_accessor :next_page_token
1033
+
1034
+ def initialize(**args)
1035
+ update!(**args)
1036
+ end
1037
+
1038
+ # Update properties of this object
1039
+ def update!(**args)
1040
+ @alignments = args[:alignments] unless args[:alignments].nil?
1041
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1042
+ end
1043
+ end
1044
+
1045
+ # A read alignment describes a linear alignment of a string of DNA to a
1046
+ # reference sequence, in addition to metadata about the fragment (the molecule
1047
+ # of DNA sequenced) and the read (the bases which were read by the sequencer). A
1048
+ # read is equivalent to a line in a SAM file. A read belongs to exactly one read
1049
+ # group and exactly one read group set. For more genomics resource definitions,
1050
+ # see [Fundamentals of Google Genomics](https://cloud.google.com/genomics/
1051
+ # fundamentals-of-google-genomics) ### Reverse-stranded reads Mapped reads (
1052
+ # reads having a non-null `alignment`) can be aligned to either the forward or
1053
+ # the reverse strand of their associated reference. Strandedness of a mapped
1054
+ # read is encoded by `alignment.position.reverseStrand`. If we consider the
1055
+ # reference to be a forward-stranded coordinate space of `[0, reference.length)`
1056
+ # with `0` as the left-most position and `reference.length` as the right-most
1057
+ # position, reads are always aligned left to right. That is, `alignment.position.
1058
+ # position` always refers to the left-most reference coordinate and `alignment.
1059
+ # cigar` describes the alignment of this read to the reference from left to
1060
+ # right. All per-base fields such as `alignedSequence` and `alignedQuality`
1061
+ # share this same left-to-right orientation; this is true of reads which are
1062
+ # aligned to either strand. For reverse-stranded reads, this means that `
1063
+ # alignedSequence` is the reverse complement of the bases that were originally
1064
+ # reported by the sequencing machine. ### Generating a reference-aligned
1065
+ # sequence string When interacting with mapped reads, it's often useful to
1066
+ # produce a string representing the local alignment of the read to reference.
1067
+ # The following pseudocode demonstrates one way of doing this: out = "" offset =
1068
+ # 0 for c in read.alignment.cigar ` switch c.operation ` case "ALIGNMENT_MATCH",
1069
+ # "SEQUENCE_MATCH", "SEQUENCE_MISMATCH": out += read.alignedSequence[offset:
1070
+ # offset+c.operationLength] offset += c.operationLength break case "CLIP_SOFT", "
1071
+ # INSERT": offset += c.operationLength break case "PAD": out += repeat("*", c.
1072
+ # operationLength) break case "DELETE": out += repeat("-", c.operationLength)
1073
+ # break case "SKIP": out += repeat(" ", c.operationLength) break case "CLIP_HARD"
1074
+ # : break ` ` return out ### Converting to SAM's CIGAR string The following
1075
+ # pseudocode generates a SAM CIGAR string from the `cigar` field. Note that this
1076
+ # is a lossy conversion (`cigar.referenceSequence` is lost). cigarMap = ` "
1077
+ # ALIGNMENT_MATCH": "M", "INSERT": "I", "DELETE": "D", "SKIP": "N", "CLIP_SOFT":
1078
+ # "S", "CLIP_HARD": "H", "PAD": "P", "SEQUENCE_MATCH": "=", "SEQUENCE_MISMATCH":
1079
+ # "X", ` cigarStr = "" for c in read.alignment.cigar ` cigarStr += c.
1080
+ # operationLength + cigarMap[c.operation] ` return cigarStr
1081
+ class Read
1082
+ include Google::Apis::Core::Hashable
1083
+
1084
+ # The server-generated read ID, unique across all reads. This is different from
1085
+ # the `fragmentName`.
1086
+ # Corresponds to the JSON property `id`
1087
+ # @return [String]
1088
+ attr_accessor :id
1089
+
1090
+ # The ID of the read group this read belongs to. A read belongs to exactly one
1091
+ # read group. This is a server-generated ID which is distinct from SAM's RG tag (
1092
+ # for that value, see ReadGroup.name).
1093
+ # Corresponds to the JSON property `readGroupId`
1094
+ # @return [String]
1095
+ attr_accessor :read_group_id
1096
+
1097
+ # The ID of the read group set this read belongs to. A read belongs to exactly
1098
+ # one read group set.
1099
+ # Corresponds to the JSON property `readGroupSetId`
1100
+ # @return [String]
1101
+ attr_accessor :read_group_set_id
1102
+
1103
+ # The fragment name. Equivalent to QNAME (query template name) in SAM.
1104
+ # Corresponds to the JSON property `fragmentName`
1105
+ # @return [String]
1106
+ attr_accessor :fragment_name
1107
+
1108
+ # The orientation and the distance between reads from the fragment are
1109
+ # consistent with the sequencing protocol (SAM flag 0x2).
1110
+ # Corresponds to the JSON property `properPlacement`
1111
+ # @return [Boolean]
1112
+ attr_accessor :proper_placement
1113
+ alias_method :proper_placement?, :proper_placement
1114
+
1115
+ # The fragment is a PCR or optical duplicate (SAM flag 0x400).
1116
+ # Corresponds to the JSON property `duplicateFragment`
1117
+ # @return [Boolean]
1118
+ attr_accessor :duplicate_fragment
1119
+ alias_method :duplicate_fragment?, :duplicate_fragment
1120
+
1121
+ # The observed length of the fragment, equivalent to TLEN in SAM.
1122
+ # Corresponds to the JSON property `fragmentLength`
1123
+ # @return [Fixnum]
1124
+ attr_accessor :fragment_length
1125
+
1126
+ # The read number in sequencing. 0-based and less than numberReads. This field
1127
+ # replaces SAM flag 0x40 and 0x80.
1128
+ # Corresponds to the JSON property `readNumber`
1129
+ # @return [Fixnum]
1130
+ attr_accessor :read_number
1131
+
1132
+ # The number of reads in the fragment (extension to SAM flag 0x1).
1133
+ # Corresponds to the JSON property `numberReads`
1134
+ # @return [Fixnum]
1135
+ attr_accessor :number_reads
1136
+
1137
+ # Whether this read did not pass filters, such as platform or vendor quality
1138
+ # controls (SAM flag 0x200).
1139
+ # Corresponds to the JSON property `failedVendorQualityChecks`
1140
+ # @return [Boolean]
1141
+ attr_accessor :failed_vendor_quality_checks
1142
+ alias_method :failed_vendor_quality_checks?, :failed_vendor_quality_checks
1143
+
1144
+ # A linear alignment can be represented by one CIGAR string. Describes the
1145
+ # mapped position and local alignment of the read to the reference.
1146
+ # Corresponds to the JSON property `alignment`
1147
+ # @return [Google::Apis::GenomicsV1::LinearAlignment]
1148
+ attr_accessor :alignment
1149
+
1150
+ # Whether this alignment is secondary. Equivalent to SAM flag 0x100. A secondary
1151
+ # alignment represents an alternative to the primary alignment for this read.
1152
+ # Aligners may return secondary alignments if a read can map ambiguously to
1153
+ # multiple coordinates in the genome. By convention, each read has one and only
1154
+ # one alignment where both `secondaryAlignment` and `supplementaryAlignment` are
1155
+ # false.
1156
+ # Corresponds to the JSON property `secondaryAlignment`
1157
+ # @return [Boolean]
1158
+ attr_accessor :secondary_alignment
1159
+ alias_method :secondary_alignment?, :secondary_alignment
1160
+
1161
+ # Whether this alignment is supplementary. Equivalent to SAM flag 0x800.
1162
+ # Supplementary alignments are used in the representation of a chimeric
1163
+ # alignment. In a chimeric alignment, a read is split into multiple linear
1164
+ # alignments that map to different reference contigs. The first linear alignment
1165
+ # in the read will be designated as the representative alignment; the remaining
1166
+ # linear alignments will be designated as supplementary alignments. These
1167
+ # alignments may have different mapping quality scores. In each linear alignment
1168
+ # in a chimeric alignment, the read will be hard clipped. The `alignedSequence`
1169
+ # and `alignedQuality` fields in the alignment record will only represent the
1170
+ # bases for its respective linear alignment.
1171
+ # Corresponds to the JSON property `supplementaryAlignment`
1172
+ # @return [Boolean]
1173
+ attr_accessor :supplementary_alignment
1174
+ alias_method :supplementary_alignment?, :supplementary_alignment
1175
+
1176
+ # The bases of the read sequence contained in this alignment record, **without
1177
+ # CIGAR operations applied** (equivalent to SEQ in SAM). `alignedSequence` and `
1178
+ # alignedQuality` may be shorter than the full read sequence and quality. This
1179
+ # will occur if the alignment is part of a chimeric alignment, or if the read
1180
+ # was trimmed. When this occurs, the CIGAR for this read will begin/end with a
1181
+ # hard clip operator that will indicate the length of the excised sequence.
1182
+ # Corresponds to the JSON property `alignedSequence`
1183
+ # @return [String]
1184
+ attr_accessor :aligned_sequence
1185
+
1186
+ # The quality of the read sequence contained in this alignment record (
1187
+ # equivalent to QUAL in SAM). `alignedSequence` and `alignedQuality` may be
1188
+ # shorter than the full read sequence and quality. This will occur if the
1189
+ # alignment is part of a chimeric alignment, or if the read was trimmed. When
1190
+ # this occurs, the CIGAR for this read will begin/end with a hard clip operator
1191
+ # that will indicate the length of the excised sequence.
1192
+ # Corresponds to the JSON property `alignedQuality`
1193
+ # @return [Array<Fixnum>]
1194
+ attr_accessor :aligned_quality
1195
+
1196
+ # An abstraction for referring to a genomic position, in relation to some
1197
+ # already known reference. For now, represents a genomic position as a reference
1198
+ # name, a base number on that reference (0-based), and a determination of
1199
+ # forward or reverse strand.
1200
+ # Corresponds to the JSON property `nextMatePosition`
1201
+ # @return [Google::Apis::GenomicsV1::Position]
1202
+ attr_accessor :next_mate_position
1203
+
1204
+ # A map of additional read alignment information. This must be of the form map (
1205
+ # string key mapping to a list of string values).
1206
+ # Corresponds to the JSON property `info`
1207
+ # @return [Hash<String,Array<Object>>]
1208
+ attr_accessor :info
1209
+
1210
+ def initialize(**args)
1211
+ update!(**args)
1212
+ end
1213
+
1214
+ # Update properties of this object
1215
+ def update!(**args)
1216
+ @id = args[:id] unless args[:id].nil?
1217
+ @read_group_id = args[:read_group_id] unless args[:read_group_id].nil?
1218
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
1219
+ @fragment_name = args[:fragment_name] unless args[:fragment_name].nil?
1220
+ @proper_placement = args[:proper_placement] unless args[:proper_placement].nil?
1221
+ @duplicate_fragment = args[:duplicate_fragment] unless args[:duplicate_fragment].nil?
1222
+ @fragment_length = args[:fragment_length] unless args[:fragment_length].nil?
1223
+ @read_number = args[:read_number] unless args[:read_number].nil?
1224
+ @number_reads = args[:number_reads] unless args[:number_reads].nil?
1225
+ @failed_vendor_quality_checks = args[:failed_vendor_quality_checks] unless args[:failed_vendor_quality_checks].nil?
1226
+ @alignment = args[:alignment] unless args[:alignment].nil?
1227
+ @secondary_alignment = args[:secondary_alignment] unless args[:secondary_alignment].nil?
1228
+ @supplementary_alignment = args[:supplementary_alignment] unless args[:supplementary_alignment].nil?
1229
+ @aligned_sequence = args[:aligned_sequence] unless args[:aligned_sequence].nil?
1230
+ @aligned_quality = args[:aligned_quality] unless args[:aligned_quality].nil?
1231
+ @next_mate_position = args[:next_mate_position] unless args[:next_mate_position].nil?
1232
+ @info = args[:info] unless args[:info].nil?
1233
+ end
1234
+ end
1235
+
1236
+ # A linear alignment can be represented by one CIGAR string. Describes the
1237
+ # mapped position and local alignment of the read to the reference.
1238
+ class LinearAlignment
1239
+ include Google::Apis::Core::Hashable
1240
+
1241
+ # An abstraction for referring to a genomic position, in relation to some
1242
+ # already known reference. For now, represents a genomic position as a reference
1243
+ # name, a base number on that reference (0-based), and a determination of
1244
+ # forward or reverse strand.
1245
+ # Corresponds to the JSON property `position`
1246
+ # @return [Google::Apis::GenomicsV1::Position]
1247
+ attr_accessor :position
1248
+
1249
+ # The mapping quality of this alignment. Represents how likely the read maps to
1250
+ # this position as opposed to other locations. Specifically, this is -10 log10
1251
+ # Pr(mapping position is wrong), rounded to the nearest integer.
1252
+ # Corresponds to the JSON property `mappingQuality`
1253
+ # @return [Fixnum]
1254
+ attr_accessor :mapping_quality
1255
+
1256
+ # Represents the local alignment of this sequence (alignment matches, indels,
1257
+ # etc) against the reference.
1258
+ # Corresponds to the JSON property `cigar`
1259
+ # @return [Array<Google::Apis::GenomicsV1::CigarUnit>]
1260
+ attr_accessor :cigar
1261
+
1262
+ def initialize(**args)
1263
+ update!(**args)
1264
+ end
1265
+
1266
+ # Update properties of this object
1267
+ def update!(**args)
1268
+ @position = args[:position] unless args[:position].nil?
1269
+ @mapping_quality = args[:mapping_quality] unless args[:mapping_quality].nil?
1270
+ @cigar = args[:cigar] unless args[:cigar].nil?
1271
+ end
1272
+ end
1273
+
1274
+ # An abstraction for referring to a genomic position, in relation to some
1275
+ # already known reference. For now, represents a genomic position as a reference
1276
+ # name, a base number on that reference (0-based), and a determination of
1277
+ # forward or reverse strand.
1278
+ class Position
1279
+ include Google::Apis::Core::Hashable
1280
+
1281
+ # The name of the reference in whatever reference set is being used.
1282
+ # Corresponds to the JSON property `referenceName`
1283
+ # @return [String]
1284
+ attr_accessor :reference_name
1285
+
1286
+ # The 0-based offset from the start of the forward strand for that reference.
1287
+ # Corresponds to the JSON property `position`
1288
+ # @return [String]
1289
+ attr_accessor :position
1290
+
1291
+ # Whether this position is on the reverse strand, as opposed to the forward
1292
+ # strand.
1293
+ # Corresponds to the JSON property `reverseStrand`
1294
+ # @return [Boolean]
1295
+ attr_accessor :reverse_strand
1296
+ alias_method :reverse_strand?, :reverse_strand
1297
+
1298
+ def initialize(**args)
1299
+ update!(**args)
1300
+ end
1301
+
1302
+ # Update properties of this object
1303
+ def update!(**args)
1304
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1305
+ @position = args[:position] unless args[:position].nil?
1306
+ @reverse_strand = args[:reverse_strand] unless args[:reverse_strand].nil?
1307
+ end
1308
+ end
1309
+
1310
+ # A single CIGAR operation.
1311
+ class CigarUnit
1312
+ include Google::Apis::Core::Hashable
1313
+
1314
+ #
1315
+ # Corresponds to the JSON property `operation`
1316
+ # @return [String]
1317
+ attr_accessor :operation
1318
+
1319
+ # The number of genomic bases that the operation runs for. Required.
1320
+ # Corresponds to the JSON property `operationLength`
1321
+ # @return [String]
1322
+ attr_accessor :operation_length
1323
+
1324
+ # `referenceSequence` is only used at mismatches (`SEQUENCE_MISMATCH`) and
1325
+ # deletions (`DELETE`). Filling this field replaces SAM's MD tag. If the
1326
+ # relevant information is not available, this field is unset.
1327
+ # Corresponds to the JSON property `referenceSequence`
1328
+ # @return [String]
1329
+ attr_accessor :reference_sequence
1330
+
1331
+ def initialize(**args)
1332
+ update!(**args)
1333
+ end
1334
+
1335
+ # Update properties of this object
1336
+ def update!(**args)
1337
+ @operation = args[:operation] unless args[:operation].nil?
1338
+ @operation_length = args[:operation_length] unless args[:operation_length].nil?
1339
+ @reference_sequence = args[:reference_sequence] unless args[:reference_sequence].nil?
1340
+ end
1341
+ end
1342
+
1343
+ # The stream reads request.
1344
+ class StreamReadsRequest
1345
+ include Google::Apis::Core::Hashable
1346
+
1347
+ # The Google Developers Console project ID or number which will be billed for
1348
+ # this access. The caller must have WRITE access to this project. Required.
1349
+ # Corresponds to the JSON property `projectId`
1350
+ # @return [String]
1351
+ attr_accessor :project_id
1352
+
1353
+ # The ID of the read group set from which to stream reads.
1354
+ # Corresponds to the JSON property `readGroupSetId`
1355
+ # @return [String]
1356
+ attr_accessor :read_group_set_id
1357
+
1358
+ # The reference sequence name, for example `chr1`, `1`, or `chrX`. If set to *,
1359
+ # only unmapped reads are returned.
1360
+ # Corresponds to the JSON property `referenceName`
1361
+ # @return [String]
1362
+ attr_accessor :reference_name
1363
+
1364
+ # The start position of the range on the reference, 0-based inclusive. If
1365
+ # specified, `referenceName` must also be specified.
1366
+ # Corresponds to the JSON property `start`
1367
+ # @return [String]
1368
+ attr_accessor :start
1369
+
1370
+ # The end position of the range on the reference, 0-based exclusive. If
1371
+ # specified, `referenceName` must also be specified.
1372
+ # Corresponds to the JSON property `end`
1373
+ # @return [String]
1374
+ attr_accessor :end
1375
+
1376
+ def initialize(**args)
1377
+ update!(**args)
1378
+ end
1379
+
1380
+ # Update properties of this object
1381
+ def update!(**args)
1382
+ @project_id = args[:project_id] unless args[:project_id].nil?
1383
+ @read_group_set_id = args[:read_group_set_id] unless args[:read_group_set_id].nil?
1384
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1385
+ @start = args[:start] unless args[:start].nil?
1386
+ @end = args[:end] unless args[:end].nil?
1387
+ end
1388
+ end
1389
+
1390
+ #
1391
+ class StreamReadsResponse
1392
+ include Google::Apis::Core::Hashable
1393
+
1394
+ #
1395
+ # Corresponds to the JSON property `alignments`
1396
+ # @return [Array<Google::Apis::GenomicsV1::Read>]
1397
+ attr_accessor :alignments
1398
+
1399
+ def initialize(**args)
1400
+ update!(**args)
1401
+ end
1402
+
1403
+ # Update properties of this object
1404
+ def update!(**args)
1405
+ @alignments = args[:alignments] unless args[:alignments].nil?
1406
+ end
1407
+ end
1408
+
1409
+ #
1410
+ class SearchReferenceSetsRequest
1411
+ include Google::Apis::Core::Hashable
1412
+
1413
+ # If present, return reference sets for which the md5checksum matches exactly.
1414
+ # Corresponds to the JSON property `md5checksums`
1415
+ # @return [Array<String>]
1416
+ attr_accessor :md5checksums
1417
+
1418
+ # If present, return reference sets for which a prefix of any of
1419
+ # sourceAccessions match any of these strings. Accession numbers typically have
1420
+ # a main number and a version, for example `NC_000001.11`.
1421
+ # Corresponds to the JSON property `accessions`
1422
+ # @return [Array<String>]
1423
+ attr_accessor :accessions
1424
+
1425
+ # If present, return reference sets for which a substring of their `assemblyId`
1426
+ # matches this string (case insensitive).
1427
+ # Corresponds to the JSON property `assemblyId`
1428
+ # @return [String]
1429
+ attr_accessor :assembly_id
1430
+
1431
+ # The continuation token, which is used to page through large result sets. To
1432
+ # get the next page of results, set this parameter to the value of `
1433
+ # nextPageToken` from the previous response.
1434
+ # Corresponds to the JSON property `pageToken`
1435
+ # @return [String]
1436
+ attr_accessor :page_token
1437
+
1438
+ # The maximum number of results to return in a single page. If unspecified,
1439
+ # defaults to 1024. The maximum value is 4096.
1440
+ # Corresponds to the JSON property `pageSize`
1441
+ # @return [Fixnum]
1442
+ attr_accessor :page_size
1443
+
1444
+ def initialize(**args)
1445
+ update!(**args)
1446
+ end
1447
+
1448
+ # Update properties of this object
1449
+ def update!(**args)
1450
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
1451
+ @accessions = args[:accessions] unless args[:accessions].nil?
1452
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
1453
+ @page_token = args[:page_token] unless args[:page_token].nil?
1454
+ @page_size = args[:page_size] unless args[:page_size].nil?
1455
+ end
1456
+ end
1457
+
1458
+ #
1459
+ class SearchReferenceSetsResponse
1460
+ include Google::Apis::Core::Hashable
1461
+
1462
+ # The matching references sets.
1463
+ # Corresponds to the JSON property `referenceSets`
1464
+ # @return [Array<Google::Apis::GenomicsV1::ReferenceSet>]
1465
+ attr_accessor :reference_sets
1466
+
1467
+ # The continuation token, which is used to page through large result sets.
1468
+ # Provide this value in a subsequent request to return the next page of results.
1469
+ # This field will be empty if there aren't any additional results.
1470
+ # Corresponds to the JSON property `nextPageToken`
1471
+ # @return [String]
1472
+ attr_accessor :next_page_token
1473
+
1474
+ def initialize(**args)
1475
+ update!(**args)
1476
+ end
1477
+
1478
+ # Update properties of this object
1479
+ def update!(**args)
1480
+ @reference_sets = args[:reference_sets] unless args[:reference_sets].nil?
1481
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1482
+ end
1483
+ end
1484
+
1485
+ # A reference set is a set of references which typically comprise a reference
1486
+ # assembly for a species, such as `GRCh38` which is representative of the human
1487
+ # genome. A reference set defines a common coordinate space for comparing
1488
+ # reference-aligned experimental data. A reference set contains 1 or more
1489
+ # references. For more genomics resource definitions, see [Fundamentals of
1490
+ # Google Genomics](https://cloud.google.com/genomics/fundamentals-of-google-
1491
+ # genomics)
1492
+ class ReferenceSet
1493
+ include Google::Apis::Core::Hashable
1494
+
1495
+ # The server-generated reference set ID, unique across all reference sets.
1496
+ # Corresponds to the JSON property `id`
1497
+ # @return [String]
1498
+ attr_accessor :id
1499
+
1500
+ # The IDs of the reference objects that are part of this set. `Reference.
1501
+ # md5checksum` must be unique within this set.
1502
+ # Corresponds to the JSON property `referenceIds`
1503
+ # @return [Array<String>]
1504
+ attr_accessor :reference_ids
1505
+
1506
+ # Order-independent MD5 checksum which identifies this reference set. The
1507
+ # checksum is computed by sorting all lower case hexidecimal string `reference.
1508
+ # md5checksum` (for all reference in this set) in ascending lexicographic order,
1509
+ # concatenating, and taking the MD5 of that value. The resulting value is
1510
+ # represented in lower case hexadecimal format.
1511
+ # Corresponds to the JSON property `md5checksum`
1512
+ # @return [String]
1513
+ attr_accessor :md5checksum
1514
+
1515
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy (for example, 9606 for human)
1516
+ # indicating the species which this reference set is intended to model. Note
1517
+ # that contained references may specify a different `ncbiTaxonId`, as assemblies
1518
+ # may contain reference sequences which do not belong to the modeled species,
1519
+ # for example EBV in a human reference genome.
1520
+ # Corresponds to the JSON property `ncbiTaxonId`
1521
+ # @return [Fixnum]
1522
+ attr_accessor :ncbi_taxon_id
1523
+
1524
+ # Free text description of this reference set.
1525
+ # Corresponds to the JSON property `description`
1526
+ # @return [String]
1527
+ attr_accessor :description
1528
+
1529
+ # Public id of this reference set, such as `GRCh37`.
1530
+ # Corresponds to the JSON property `assemblyId`
1531
+ # @return [String]
1532
+ attr_accessor :assembly_id
1533
+
1534
+ # The URI from which the references were obtained.
1535
+ # Corresponds to the JSON property `sourceUri`
1536
+ # @return [String]
1537
+ attr_accessor :source_uri
1538
+
1539
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
1540
+ # a version number, for example `NC_000001.11`.
1541
+ # Corresponds to the JSON property `sourceAccessions`
1542
+ # @return [Array<String>]
1543
+ attr_accessor :source_accessions
1544
+
1545
+ def initialize(**args)
1546
+ update!(**args)
1547
+ end
1548
+
1549
+ # Update properties of this object
1550
+ def update!(**args)
1551
+ @id = args[:id] unless args[:id].nil?
1552
+ @reference_ids = args[:reference_ids] unless args[:reference_ids].nil?
1553
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
1554
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
1555
+ @description = args[:description] unless args[:description].nil?
1556
+ @assembly_id = args[:assembly_id] unless args[:assembly_id].nil?
1557
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
1558
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
1559
+ end
1560
+ end
1561
+
1562
+ #
1563
+ class SearchReferencesRequest
1564
+ include Google::Apis::Core::Hashable
1565
+
1566
+ # If present, return references for which the md5checksum matches exactly.
1567
+ # Corresponds to the JSON property `md5checksums`
1568
+ # @return [Array<String>]
1569
+ attr_accessor :md5checksums
1570
+
1571
+ # If present, return references for which a prefix of any of sourceAccessions
1572
+ # match any of these strings. Accession numbers typically have a main number and
1573
+ # a version, for example `GCF_000001405.26`.
1574
+ # Corresponds to the JSON property `accessions`
1575
+ # @return [Array<String>]
1576
+ attr_accessor :accessions
1577
+
1578
+ # If present, return only references which belong to this reference set.
1579
+ # Corresponds to the JSON property `referenceSetId`
1580
+ # @return [String]
1581
+ attr_accessor :reference_set_id
1582
+
1583
+ # The continuation token, which is used to page through large result sets. To
1584
+ # get the next page of results, set this parameter to the value of `
1585
+ # nextPageToken` from the previous response.
1586
+ # Corresponds to the JSON property `pageToken`
1587
+ # @return [String]
1588
+ attr_accessor :page_token
1589
+
1590
+ # The maximum number of results to return in a single page. If unspecified,
1591
+ # defaults to 1024. The maximum value is 4096.
1592
+ # Corresponds to the JSON property `pageSize`
1593
+ # @return [Fixnum]
1594
+ attr_accessor :page_size
1595
+
1596
+ def initialize(**args)
1597
+ update!(**args)
1598
+ end
1599
+
1600
+ # Update properties of this object
1601
+ def update!(**args)
1602
+ @md5checksums = args[:md5checksums] unless args[:md5checksums].nil?
1603
+ @accessions = args[:accessions] unless args[:accessions].nil?
1604
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
1605
+ @page_token = args[:page_token] unless args[:page_token].nil?
1606
+ @page_size = args[:page_size] unless args[:page_size].nil?
1607
+ end
1608
+ end
1609
+
1610
+ #
1611
+ class SearchReferencesResponse
1612
+ include Google::Apis::Core::Hashable
1613
+
1614
+ # The matching references.
1615
+ # Corresponds to the JSON property `references`
1616
+ # @return [Array<Google::Apis::GenomicsV1::Reference>]
1617
+ attr_accessor :references
1618
+
1619
+ # The continuation token, which is used to page through large result sets.
1620
+ # Provide this value in a subsequent request to return the next page of results.
1621
+ # This field will be empty if there aren't any additional results.
1622
+ # Corresponds to the JSON property `nextPageToken`
1623
+ # @return [String]
1624
+ attr_accessor :next_page_token
1625
+
1626
+ def initialize(**args)
1627
+ update!(**args)
1628
+ end
1629
+
1630
+ # Update properties of this object
1631
+ def update!(**args)
1632
+ @references = args[:references] unless args[:references].nil?
1633
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1634
+ end
1635
+ end
1636
+
1637
+ # A reference is a canonical assembled DNA sequence, intended to act as a
1638
+ # reference coordinate space for other genomic annotations. A single reference
1639
+ # might represent the human chromosome 1 or mitochandrial DNA, for instance. A
1640
+ # reference belongs to one or more reference sets. For more genomics resource
1641
+ # definitions, see [Fundamentals of Google Genomics](https://cloud.google.com/
1642
+ # genomics/fundamentals-of-google-genomics)
1643
+ class Reference
1644
+ include Google::Apis::Core::Hashable
1645
+
1646
+ # The server-generated reference ID, unique across all references.
1647
+ # Corresponds to the JSON property `id`
1648
+ # @return [String]
1649
+ attr_accessor :id
1650
+
1651
+ # The length of this reference's sequence.
1652
+ # Corresponds to the JSON property `length`
1653
+ # @return [String]
1654
+ attr_accessor :length
1655
+
1656
+ # MD5 of the upper-case sequence excluding all whitespace characters (this is
1657
+ # equivalent to SQ:M5 in SAM). This value is represented in lower case
1658
+ # hexadecimal format.
1659
+ # Corresponds to the JSON property `md5checksum`
1660
+ # @return [String]
1661
+ attr_accessor :md5checksum
1662
+
1663
+ # The name of this reference, for example `22`.
1664
+ # Corresponds to the JSON property `name`
1665
+ # @return [String]
1666
+ attr_accessor :name
1667
+
1668
+ # The URI from which the sequence was obtained. Typically specifies a FASTA
1669
+ # format file.
1670
+ # Corresponds to the JSON property `sourceUri`
1671
+ # @return [String]
1672
+ attr_accessor :source_uri
1673
+
1674
+ # All known corresponding accession IDs in INSDC (GenBank/ENA/DDBJ) ideally with
1675
+ # a version number, for example `GCF_000001405.26`.
1676
+ # Corresponds to the JSON property `sourceAccessions`
1677
+ # @return [Array<String>]
1678
+ attr_accessor :source_accessions
1679
+
1680
+ # ID from http://www.ncbi.nlm.nih.gov/taxonomy. For example, 9606 for human.
1681
+ # Corresponds to the JSON property `ncbiTaxonId`
1682
+ # @return [Fixnum]
1683
+ attr_accessor :ncbi_taxon_id
1684
+
1685
+ def initialize(**args)
1686
+ update!(**args)
1687
+ end
1688
+
1689
+ # Update properties of this object
1690
+ def update!(**args)
1691
+ @id = args[:id] unless args[:id].nil?
1692
+ @length = args[:length] unless args[:length].nil?
1693
+ @md5checksum = args[:md5checksum] unless args[:md5checksum].nil?
1694
+ @name = args[:name] unless args[:name].nil?
1695
+ @source_uri = args[:source_uri] unless args[:source_uri].nil?
1696
+ @source_accessions = args[:source_accessions] unless args[:source_accessions].nil?
1697
+ @ncbi_taxon_id = args[:ncbi_taxon_id] unless args[:ncbi_taxon_id].nil?
1698
+ end
1699
+ end
1700
+
1701
+ #
1702
+ class ListBasesResponse
1703
+ include Google::Apis::Core::Hashable
1704
+
1705
+ # The offset position (0-based) of the given `sequence` from the start of this `
1706
+ # Reference`. This value will differ for each page in a paginated request.
1707
+ # Corresponds to the JSON property `offset`
1708
+ # @return [String]
1709
+ attr_accessor :offset
1710
+
1711
+ # A substring of the bases that make up this reference.
1712
+ # Corresponds to the JSON property `sequence`
1713
+ # @return [String]
1714
+ attr_accessor :sequence
1715
+
1716
+ # The continuation token, which is used to page through large result sets.
1717
+ # Provide this value in a subsequent request to return the next page of results.
1718
+ # This field will be empty if there aren't any additional results.
1719
+ # Corresponds to the JSON property `nextPageToken`
1720
+ # @return [String]
1721
+ attr_accessor :next_page_token
1722
+
1723
+ def initialize(**args)
1724
+ update!(**args)
1725
+ end
1726
+
1727
+ # Update properties of this object
1728
+ def update!(**args)
1729
+ @offset = args[:offset] unless args[:offset].nil?
1730
+ @sequence = args[:sequence] unless args[:sequence].nil?
1731
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1732
+ end
1733
+ end
1734
+
1735
+ # The variant data import request.
1736
+ class ImportVariantsRequest
1737
+ include Google::Apis::Core::Hashable
1738
+
1739
+ # Required. The variant set to which variant data should be imported.
1740
+ # Corresponds to the JSON property `variantSetId`
1741
+ # @return [String]
1742
+ attr_accessor :variant_set_id
1743
+
1744
+ # A list of URIs referencing variant files in Google Cloud Storage. URIs can
1745
+ # include wildcards [as described here](https://cloud.google.com/storage/docs/
1746
+ # gsutil/addlhelp/WildcardNames). Note that recursive wildcards ('**') are not
1747
+ # supported.
1748
+ # Corresponds to the JSON property `sourceUris`
1749
+ # @return [Array<String>]
1750
+ attr_accessor :source_uris
1751
+
1752
+ # The format of the variant data being imported. If unspecified, defaults to to `
1753
+ # VCF`.
1754
+ # Corresponds to the JSON property `format`
1755
+ # @return [String]
1756
+ attr_accessor :format
1757
+
1758
+ # Convert reference names to the canonical representation. hg19 haploytypes (
1759
+ # those reference names containing "_hap") are not modified in any way. All
1760
+ # other reference names are modified according to the following rules: The
1761
+ # reference name is capitalized. The "chr" prefix is dropped for all autosomes
1762
+ # and sex chromsomes. For example "chr17" becomes "17" and "chrX" becomes "X".
1763
+ # All mitochondrial chromosomes ("chrM", "chrMT", etc) become "MT".
1764
+ # Corresponds to the JSON property `normalizeReferenceNames`
1765
+ # @return [Boolean]
1766
+ attr_accessor :normalize_reference_names
1767
+ alias_method :normalize_reference_names?, :normalize_reference_names
1768
+
1769
+ def initialize(**args)
1770
+ update!(**args)
1771
+ end
1772
+
1773
+ # Update properties of this object
1774
+ def update!(**args)
1775
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
1776
+ @source_uris = args[:source_uris] unless args[:source_uris].nil?
1777
+ @format = args[:format] unless args[:format].nil?
1778
+ @normalize_reference_names = args[:normalize_reference_names] unless args[:normalize_reference_names].nil?
1779
+ end
1780
+ end
1781
+
1782
+ # A variant set is a collection of call sets and variants. It contains summary
1783
+ # statistics of those contents. A variant set belongs to a dataset. For more
1784
+ # genomics resource definitions, see [Fundamentals of Google Genomics](https://
1785
+ # cloud.google.com/genomics/fundamentals-of-google-genomics)
1786
+ class VariantSet
1787
+ include Google::Apis::Core::Hashable
1788
+
1789
+ # The dataset to which this variant set belongs.
1790
+ # Corresponds to the JSON property `datasetId`
1791
+ # @return [String]
1792
+ attr_accessor :dataset_id
1793
+
1794
+ # The server-generated variant set ID, unique across all variant sets.
1795
+ # Corresponds to the JSON property `id`
1796
+ # @return [String]
1797
+ attr_accessor :id
1798
+
1799
+ # The reference set to which the variant set is mapped. The reference set
1800
+ # describes the alignment provenance of the variant set, while the `
1801
+ # referenceBounds` describe the shape of the actual variant data. The reference
1802
+ # set's reference names are a superset of those found in the `referenceBounds`.
1803
+ # For example, given a variant set that is mapped to the GRCh38 reference set
1804
+ # and contains a single variant on reference 'X', `referenceBounds` would
1805
+ # contain only an entry for 'X', while the associated reference set enumerates
1806
+ # all possible references: '1', '2', 'X', 'Y', 'MT', etc.
1807
+ # Corresponds to the JSON property `referenceSetId`
1808
+ # @return [String]
1809
+ attr_accessor :reference_set_id
1810
+
1811
+ # A list of all references used by the variants in a variant set with associated
1812
+ # coordinate upper bounds for each one.
1813
+ # Corresponds to the JSON property `referenceBounds`
1814
+ # @return [Array<Google::Apis::GenomicsV1::ReferenceBound>]
1815
+ attr_accessor :reference_bounds
1816
+
1817
+ # The metadata associated with this variant set.
1818
+ # Corresponds to the JSON property `metadata`
1819
+ # @return [Array<Google::Apis::GenomicsV1::VariantSetMetadata>]
1820
+ attr_accessor :metadata
1821
+
1822
+ def initialize(**args)
1823
+ update!(**args)
1824
+ end
1825
+
1826
+ # Update properties of this object
1827
+ def update!(**args)
1828
+ @dataset_id = args[:dataset_id] unless args[:dataset_id].nil?
1829
+ @id = args[:id] unless args[:id].nil?
1830
+ @reference_set_id = args[:reference_set_id] unless args[:reference_set_id].nil?
1831
+ @reference_bounds = args[:reference_bounds] unless args[:reference_bounds].nil?
1832
+ @metadata = args[:metadata] unless args[:metadata].nil?
1833
+ end
1834
+ end
1835
+
1836
+ # ReferenceBound records an upper bound for the starting coordinate of variants
1837
+ # in a particular reference.
1838
+ class ReferenceBound
1839
+ include Google::Apis::Core::Hashable
1840
+
1841
+ # The name of the reference associated with this ReferenceBound.
1842
+ # Corresponds to the JSON property `referenceName`
1843
+ # @return [String]
1844
+ attr_accessor :reference_name
1845
+
1846
+ # An upper bound (inclusive) on the starting coordinate of any variant in the
1847
+ # reference sequence.
1848
+ # Corresponds to the JSON property `upperBound`
1849
+ # @return [String]
1850
+ attr_accessor :upper_bound
1851
+
1852
+ def initialize(**args)
1853
+ update!(**args)
1854
+ end
1855
+
1856
+ # Update properties of this object
1857
+ def update!(**args)
1858
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
1859
+ @upper_bound = args[:upper_bound] unless args[:upper_bound].nil?
1860
+ end
1861
+ end
1862
+
1863
+ # Metadata describes a single piece of variant call metadata. These data include
1864
+ # a top level key and either a single value string (value) or a list of key-
1865
+ # value pairs (info.) Value and info are mutually exclusive.
1866
+ class VariantSetMetadata
1867
+ include Google::Apis::Core::Hashable
1868
+
1869
+ # The top-level key.
1870
+ # Corresponds to the JSON property `key`
1871
+ # @return [String]
1872
+ attr_accessor :key
1873
+
1874
+ # The value field for simple metadata
1875
+ # Corresponds to the JSON property `value`
1876
+ # @return [String]
1877
+ attr_accessor :value
1878
+
1879
+ # User-provided ID field, not enforced by this API. Two or more pieces of
1880
+ # structured metadata with identical id and key fields are considered equivalent.
1881
+ # Corresponds to the JSON property `id`
1882
+ # @return [String]
1883
+ attr_accessor :id
1884
+
1885
+ # The type of data. Possible types include: Integer, Float, Flag, Character, and
1886
+ # String.
1887
+ # Corresponds to the JSON property `type`
1888
+ # @return [String]
1889
+ attr_accessor :type
1890
+
1891
+ # The number of values that can be included in a field described by this
1892
+ # metadata.
1893
+ # Corresponds to the JSON property `number`
1894
+ # @return [String]
1895
+ attr_accessor :number
1896
+
1897
+ # A textual description of this metadata.
1898
+ # Corresponds to the JSON property `description`
1899
+ # @return [String]
1900
+ attr_accessor :description
1901
+
1902
+ # Remaining structured metadata key-value pairs. This must be of the form map (
1903
+ # string key mapping to a list of string values).
1904
+ # Corresponds to the JSON property `info`
1905
+ # @return [Hash<String,Array<Object>>]
1906
+ attr_accessor :info
1907
+
1908
+ def initialize(**args)
1909
+ update!(**args)
1910
+ end
1911
+
1912
+ # Update properties of this object
1913
+ def update!(**args)
1914
+ @key = args[:key] unless args[:key].nil?
1915
+ @value = args[:value] unless args[:value].nil?
1916
+ @id = args[:id] unless args[:id].nil?
1917
+ @type = args[:type] unless args[:type].nil?
1918
+ @number = args[:number] unless args[:number].nil?
1919
+ @description = args[:description] unless args[:description].nil?
1920
+ @info = args[:info] unless args[:info].nil?
1921
+ end
1922
+ end
1923
+
1924
+ # The variant data export request.
1925
+ class ExportVariantSetRequest
1926
+ include Google::Apis::Core::Hashable
1927
+
1928
+ # If provided, only variant call information from the specified call sets will
1929
+ # be exported. By default all variant calls are exported.
1930
+ # Corresponds to the JSON property `callSetIds`
1931
+ # @return [Array<String>]
1932
+ attr_accessor :call_set_ids
1933
+
1934
+ # Required. The Google Cloud project ID that owns the destination BigQuery
1935
+ # dataset. The caller must have WRITE access to this project. This project will
1936
+ # also own the resulting export job.
1937
+ # Corresponds to the JSON property `projectId`
1938
+ # @return [String]
1939
+ attr_accessor :project_id
1940
+
1941
+ # The format for the exported data.
1942
+ # Corresponds to the JSON property `format`
1943
+ # @return [String]
1944
+ attr_accessor :format
1945
+
1946
+ # Required. The BigQuery dataset to export data to. This dataset must already
1947
+ # exist. Note that this is distinct from the Genomics concept of "dataset".
1948
+ # Corresponds to the JSON property `bigqueryDataset`
1949
+ # @return [String]
1950
+ attr_accessor :bigquery_dataset
1951
+
1952
+ # Required. The BigQuery table to export data to. If the table doesn't exist, it
1953
+ # will be created. If it already exists, it will be overwritten.
1954
+ # Corresponds to the JSON property `bigqueryTable`
1955
+ # @return [String]
1956
+ attr_accessor :bigquery_table
1957
+
1958
+ def initialize(**args)
1959
+ update!(**args)
1960
+ end
1961
+
1962
+ # Update properties of this object
1963
+ def update!(**args)
1964
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
1965
+ @project_id = args[:project_id] unless args[:project_id].nil?
1966
+ @format = args[:format] unless args[:format].nil?
1967
+ @bigquery_dataset = args[:bigquery_dataset] unless args[:bigquery_dataset].nil?
1968
+ @bigquery_table = args[:bigquery_table] unless args[:bigquery_table].nil?
1969
+ end
1970
+ end
1971
+
1972
+ # The search variant sets request.
1973
+ class SearchVariantSetsRequest
1974
+ include Google::Apis::Core::Hashable
1975
+
1976
+ # Exactly one dataset ID must be provided here. Only variant sets which belong
1977
+ # to this dataset will be returned.
1978
+ # Corresponds to the JSON property `datasetIds`
1979
+ # @return [Array<String>]
1980
+ attr_accessor :dataset_ids
1981
+
1982
+ # The continuation token, which is used to page through large result sets. To
1983
+ # get the next page of results, set this parameter to the value of `
1984
+ # nextPageToken` from the previous response.
1985
+ # Corresponds to the JSON property `pageToken`
1986
+ # @return [String]
1987
+ attr_accessor :page_token
1988
+
1989
+ # The maximum number of results to return in a single page. If unspecified,
1990
+ # defaults to 1024.
1991
+ # Corresponds to the JSON property `pageSize`
1992
+ # @return [Fixnum]
1993
+ attr_accessor :page_size
1994
+
1995
+ def initialize(**args)
1996
+ update!(**args)
1997
+ end
1998
+
1999
+ # Update properties of this object
2000
+ def update!(**args)
2001
+ @dataset_ids = args[:dataset_ids] unless args[:dataset_ids].nil?
2002
+ @page_token = args[:page_token] unless args[:page_token].nil?
2003
+ @page_size = args[:page_size] unless args[:page_size].nil?
2004
+ end
2005
+ end
2006
+
2007
+ # The search variant sets response.
2008
+ class SearchVariantSetsResponse
2009
+ include Google::Apis::Core::Hashable
2010
+
2011
+ # The variant sets belonging to the requested dataset.
2012
+ # Corresponds to the JSON property `variantSets`
2013
+ # @return [Array<Google::Apis::GenomicsV1::VariantSet>]
2014
+ attr_accessor :variant_sets
2015
+
2016
+ # The continuation token, which is used to page through large result sets.
2017
+ # Provide this value in a subsequent request to return the next page of results.
2018
+ # This field will be empty if there aren't any additional results.
2019
+ # Corresponds to the JSON property `nextPageToken`
2020
+ # @return [String]
2021
+ attr_accessor :next_page_token
2022
+
2023
+ def initialize(**args)
2024
+ update!(**args)
2025
+ end
2026
+
2027
+ # Update properties of this object
2028
+ def update!(**args)
2029
+ @variant_sets = args[:variant_sets] unless args[:variant_sets].nil?
2030
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2031
+ end
2032
+ end
2033
+
2034
+ # The variant search request.
2035
+ class SearchVariantsRequest
2036
+ include Google::Apis::Core::Hashable
2037
+
2038
+ # At most one variant set ID must be provided. Only variants from this variant
2039
+ # set will be returned. If omitted, a call set id must be included in the
2040
+ # request.
2041
+ # Corresponds to the JSON property `variantSetIds`
2042
+ # @return [Array<String>]
2043
+ attr_accessor :variant_set_ids
2044
+
2045
+ # Only return variants which have exactly this name.
2046
+ # Corresponds to the JSON property `variantName`
2047
+ # @return [String]
2048
+ attr_accessor :variant_name
2049
+
2050
+ # Only return variant calls which belong to call sets with these ids. Leaving
2051
+ # this blank returns all variant calls. If a variant has no calls belonging to
2052
+ # any of these call sets, it won't be returned at all. Currently, variants with
2053
+ # no calls from any call set will never be returned.
2054
+ # Corresponds to the JSON property `callSetIds`
2055
+ # @return [Array<String>]
2056
+ attr_accessor :call_set_ids
2057
+
2058
+ # Required. Only return variants in this reference sequence.
2059
+ # Corresponds to the JSON property `referenceName`
2060
+ # @return [String]
2061
+ attr_accessor :reference_name
2062
+
2063
+ # The beginning of the window (0-based, inclusive) for which overlapping
2064
+ # variants should be returned. If unspecified, defaults to 0.
2065
+ # Corresponds to the JSON property `start`
2066
+ # @return [String]
2067
+ attr_accessor :start
2068
+
2069
+ # The end of the window, 0-based exclusive. If unspecified or 0, defaults to the
2070
+ # length of the reference.
2071
+ # Corresponds to the JSON property `end`
2072
+ # @return [String]
2073
+ attr_accessor :end
2074
+
2075
+ # The continuation token, which is used to page through large result sets. To
2076
+ # get the next page of results, set this parameter to the value of `
2077
+ # nextPageToken` from the previous response.
2078
+ # Corresponds to the JSON property `pageToken`
2079
+ # @return [String]
2080
+ attr_accessor :page_token
2081
+
2082
+ # The maximum number of variants to return in a single page. If unspecified,
2083
+ # defaults to 5000. The maximum value is 10000.
2084
+ # Corresponds to the JSON property `pageSize`
2085
+ # @return [Fixnum]
2086
+ attr_accessor :page_size
2087
+
2088
+ # The maximum number of calls to return in a single page. Note that this limit
2089
+ # may be exceeded; at least one variant is always returned per page, even if it
2090
+ # has more calls than this limit. If unspecified, defaults to 5000. The maximum
2091
+ # value is 10000.
2092
+ # Corresponds to the JSON property `maxCalls`
2093
+ # @return [Fixnum]
2094
+ attr_accessor :max_calls
2095
+
2096
+ def initialize(**args)
2097
+ update!(**args)
2098
+ end
2099
+
2100
+ # Update properties of this object
2101
+ def update!(**args)
2102
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2103
+ @variant_name = args[:variant_name] unless args[:variant_name].nil?
2104
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
2105
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2106
+ @start = args[:start] unless args[:start].nil?
2107
+ @end = args[:end] unless args[:end].nil?
2108
+ @page_token = args[:page_token] unless args[:page_token].nil?
2109
+ @page_size = args[:page_size] unless args[:page_size].nil?
2110
+ @max_calls = args[:max_calls] unless args[:max_calls].nil?
2111
+ end
2112
+ end
2113
+
2114
+ # The variant search response.
2115
+ class SearchVariantsResponse
2116
+ include Google::Apis::Core::Hashable
2117
+
2118
+ # The list of matching Variants.
2119
+ # Corresponds to the JSON property `variants`
2120
+ # @return [Array<Google::Apis::GenomicsV1::Variant>]
2121
+ attr_accessor :variants
2122
+
2123
+ # The continuation token, which is used to page through large result sets.
2124
+ # Provide this value in a subsequent request to return the next page of results.
2125
+ # This field will be empty if there aren't any additional results.
2126
+ # Corresponds to the JSON property `nextPageToken`
2127
+ # @return [String]
2128
+ attr_accessor :next_page_token
2129
+
2130
+ def initialize(**args)
2131
+ update!(**args)
2132
+ end
2133
+
2134
+ # Update properties of this object
2135
+ def update!(**args)
2136
+ @variants = args[:variants] unless args[:variants].nil?
2137
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2138
+ end
2139
+ end
2140
+
2141
+ # A variant represents a change in DNA sequence relative to a reference sequence.
2142
+ # For example, a variant could represent a SNP or an insertion. Variants belong
2143
+ # to a variant set. For more genomics resource definitions, see [Fundamentals of
2144
+ # Google Genomics](https://cloud.google.com/genomics/fundamentals-of-google-
2145
+ # genomics) Each of the calls on a variant represent a determination of genotype
2146
+ # with respect to that variant. For example, a call might assign probability of
2147
+ # 0.32 to the occurrence of a SNP named rs1234 in a sample named NA12345. A call
2148
+ # belongs to a call set, which contains related calls typically from one sample.
2149
+ class Variant
2150
+ include Google::Apis::Core::Hashable
2151
+
2152
+ # The ID of the variant set this variant belongs to.
2153
+ # Corresponds to the JSON property `variantSetId`
2154
+ # @return [String]
2155
+ attr_accessor :variant_set_id
2156
+
2157
+ # The server-generated variant ID, unique across all variants.
2158
+ # Corresponds to the JSON property `id`
2159
+ # @return [String]
2160
+ attr_accessor :id
2161
+
2162
+ # Names for the variant, for example a RefSNP ID.
2163
+ # Corresponds to the JSON property `names`
2164
+ # @return [Array<String>]
2165
+ attr_accessor :names
2166
+
2167
+ # The date this variant was created, in milliseconds from the epoch.
2168
+ # Corresponds to the JSON property `created`
2169
+ # @return [String]
2170
+ attr_accessor :created
2171
+
2172
+ # The reference on which this variant occurs. (such as `chr20` or `X`)
2173
+ # Corresponds to the JSON property `referenceName`
2174
+ # @return [String]
2175
+ attr_accessor :reference_name
2176
+
2177
+ # The position at which this variant occurs (0-based). This corresponds to the
2178
+ # first base of the string of reference bases.
2179
+ # Corresponds to the JSON property `start`
2180
+ # @return [String]
2181
+ attr_accessor :start
2182
+
2183
+ # The end position (0-based) of this variant. This corresponds to the first base
2184
+ # after the last base in the reference allele. So, the length of the reference
2185
+ # allele is (end - start). This is useful for variants that don't explicitly
2186
+ # give alternate bases, for example large deletions.
2187
+ # Corresponds to the JSON property `end`
2188
+ # @return [String]
2189
+ attr_accessor :end
2190
+
2191
+ # The reference bases for this variant. They start at the given position.
2192
+ # Corresponds to the JSON property `referenceBases`
2193
+ # @return [String]
2194
+ attr_accessor :reference_bases
2195
+
2196
+ # The bases that appear instead of the reference bases.
2197
+ # Corresponds to the JSON property `alternateBases`
2198
+ # @return [Array<String>]
2199
+ attr_accessor :alternate_bases
2200
+
2201
+ # A measure of how likely this variant is to be real. A higher value is better.
2202
+ # Corresponds to the JSON property `quality`
2203
+ # @return [Float]
2204
+ attr_accessor :quality
2205
+
2206
+ # A list of filters (normally quality filters) this variant has failed. `PASS`
2207
+ # indicates this variant has passed all filters.
2208
+ # Corresponds to the JSON property `filter`
2209
+ # @return [Array<String>]
2210
+ attr_accessor :filter
2211
+
2212
+ # A map of additional variant information. This must be of the form map (string
2213
+ # key mapping to a list of string values).
2214
+ # Corresponds to the JSON property `info`
2215
+ # @return [Hash<String,Array<Object>>]
2216
+ attr_accessor :info
2217
+
2218
+ # The variant calls for this particular variant. Each one represents the
2219
+ # determination of genotype with respect to this variant.
2220
+ # Corresponds to the JSON property `calls`
2221
+ # @return [Array<Google::Apis::GenomicsV1::VariantCall>]
2222
+ attr_accessor :calls
2223
+
2224
+ def initialize(**args)
2225
+ update!(**args)
2226
+ end
2227
+
2228
+ # Update properties of this object
2229
+ def update!(**args)
2230
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
2231
+ @id = args[:id] unless args[:id].nil?
2232
+ @names = args[:names] unless args[:names].nil?
2233
+ @created = args[:created] unless args[:created].nil?
2234
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2235
+ @start = args[:start] unless args[:start].nil?
2236
+ @end = args[:end] unless args[:end].nil?
2237
+ @reference_bases = args[:reference_bases] unless args[:reference_bases].nil?
2238
+ @alternate_bases = args[:alternate_bases] unless args[:alternate_bases].nil?
2239
+ @quality = args[:quality] unless args[:quality].nil?
2240
+ @filter = args[:filter] unless args[:filter].nil?
2241
+ @info = args[:info] unless args[:info].nil?
2242
+ @calls = args[:calls] unless args[:calls].nil?
2243
+ end
2244
+ end
2245
+
2246
+ # A call represents the determination of genotype with respect to a particular
2247
+ # variant. It may include associated information such as quality and phasing.
2248
+ # For example, a call might assign a probability of 0.32 to the occurrence of a
2249
+ # SNP named rs1234 in a call set with the name NA12345.
2250
+ class VariantCall
2251
+ include Google::Apis::Core::Hashable
2252
+
2253
+ # The ID of the call set this variant call belongs to.
2254
+ # Corresponds to the JSON property `callSetId`
2255
+ # @return [String]
2256
+ attr_accessor :call_set_id
2257
+
2258
+ # The name of the call set this variant call belongs to.
2259
+ # Corresponds to the JSON property `callSetName`
2260
+ # @return [String]
2261
+ attr_accessor :call_set_name
2262
+
2263
+ # The genotype of this variant call. Each value represents either the value of
2264
+ # the `referenceBases` field or a 1-based index into `alternateBases`. If a
2265
+ # variant had a `referenceBases` value of `T` and an `alternateBases` value of `[
2266
+ # "A", "C"]`, and the `genotype` was `[2, 1]`, that would mean the call
2267
+ # represented the heterozygous value `CA` for this variant. If the `genotype`
2268
+ # was instead `[0, 1]`, the represented value would be `TA`. Ordering of the
2269
+ # genotype values is important if the `phaseset` is present. If a genotype is
2270
+ # not called (that is, a `.` is present in the GT string) -1 is returned.
2271
+ # Corresponds to the JSON property `genotype`
2272
+ # @return [Array<Fixnum>]
2273
+ attr_accessor :genotype
2274
+
2275
+ # If this field is present, this variant call's genotype ordering implies the
2276
+ # phase of the bases and is consistent with any other variant calls in the same
2277
+ # reference sequence which have the same phaseset value. When importing data
2278
+ # from VCF, if the genotype data was phased but no phase set was specified this
2279
+ # field will be set to `*`.
2280
+ # Corresponds to the JSON property `phaseset`
2281
+ # @return [String]
2282
+ attr_accessor :phaseset
2283
+
2284
+ # The genotype likelihoods for this variant call. Each array entry represents
2285
+ # how likely a specific genotype is for this call. The value ordering is defined
2286
+ # by the GL tag in the VCF spec. If Phred-scaled genotype likelihood scores (PL)
2287
+ # are available and log10(P) genotype likelihood scores (GL) are not, PL scores
2288
+ # are converted to GL scores. If both are available, PL scores are stored in `
2289
+ # info`.
2290
+ # Corresponds to the JSON property `genotypeLikelihood`
2291
+ # @return [Array<Float>]
2292
+ attr_accessor :genotype_likelihood
2293
+
2294
+ # A map of additional variant call information. This must be of the form map (
2295
+ # string key mapping to a list of string values).
2296
+ # Corresponds to the JSON property `info`
2297
+ # @return [Hash<String,Array<Object>>]
2298
+ attr_accessor :info
2299
+
2300
+ def initialize(**args)
2301
+ update!(**args)
2302
+ end
2303
+
2304
+ # Update properties of this object
2305
+ def update!(**args)
2306
+ @call_set_id = args[:call_set_id] unless args[:call_set_id].nil?
2307
+ @call_set_name = args[:call_set_name] unless args[:call_set_name].nil?
2308
+ @genotype = args[:genotype] unless args[:genotype].nil?
2309
+ @phaseset = args[:phaseset] unless args[:phaseset].nil?
2310
+ @genotype_likelihood = args[:genotype_likelihood] unless args[:genotype_likelihood].nil?
2311
+ @info = args[:info] unless args[:info].nil?
2312
+ end
2313
+ end
2314
+
2315
+ # The call set search request.
2316
+ class SearchCallSetsRequest
2317
+ include Google::Apis::Core::Hashable
2318
+
2319
+ # Restrict the query to call sets within the given variant sets. At least one ID
2320
+ # must be provided.
2321
+ # Corresponds to the JSON property `variantSetIds`
2322
+ # @return [Array<String>]
2323
+ attr_accessor :variant_set_ids
2324
+
2325
+ # Only return call sets for which a substring of the name matches this string.
2326
+ # Corresponds to the JSON property `name`
2327
+ # @return [String]
2328
+ attr_accessor :name
2329
+
2330
+ # The continuation token, which is used to page through large result sets. To
2331
+ # get the next page of results, set this parameter to the value of `
2332
+ # nextPageToken` from the previous response.
2333
+ # Corresponds to the JSON property `pageToken`
2334
+ # @return [String]
2335
+ attr_accessor :page_token
2336
+
2337
+ # The maximum number of results to return in a single page. If unspecified,
2338
+ # defaults to 1024.
2339
+ # Corresponds to the JSON property `pageSize`
2340
+ # @return [Fixnum]
2341
+ attr_accessor :page_size
2342
+
2343
+ def initialize(**args)
2344
+ update!(**args)
2345
+ end
2346
+
2347
+ # Update properties of this object
2348
+ def update!(**args)
2349
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2350
+ @name = args[:name] unless args[:name].nil?
2351
+ @page_token = args[:page_token] unless args[:page_token].nil?
2352
+ @page_size = args[:page_size] unless args[:page_size].nil?
2353
+ end
2354
+ end
2355
+
2356
+ # The call set search response.
2357
+ class SearchCallSetsResponse
2358
+ include Google::Apis::Core::Hashable
2359
+
2360
+ # The list of matching call sets.
2361
+ # Corresponds to the JSON property `callSets`
2362
+ # @return [Array<Google::Apis::GenomicsV1::CallSet>]
2363
+ attr_accessor :call_sets
2364
+
2365
+ # The continuation token, which is used to page through large result sets.
2366
+ # Provide this value in a subsequent request to return the next page of results.
2367
+ # This field will be empty if there aren't any additional results.
2368
+ # Corresponds to the JSON property `nextPageToken`
2369
+ # @return [String]
2370
+ attr_accessor :next_page_token
2371
+
2372
+ def initialize(**args)
2373
+ update!(**args)
2374
+ end
2375
+
2376
+ # Update properties of this object
2377
+ def update!(**args)
2378
+ @call_sets = args[:call_sets] unless args[:call_sets].nil?
2379
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
2380
+ end
2381
+ end
2382
+
2383
+ # A call set is a collection of variant calls, typically for one sample. It
2384
+ # belongs to a variant set. For more genomics resource definitions, see [
2385
+ # Fundamentals of Google Genomics](https://cloud.google.com/genomics/
2386
+ # fundamentals-of-google-genomics)
2387
+ class CallSet
2388
+ include Google::Apis::Core::Hashable
2389
+
2390
+ # The server-generated call set ID, unique across all call sets.
2391
+ # Corresponds to the JSON property `id`
2392
+ # @return [String]
2393
+ attr_accessor :id
2394
+
2395
+ # The call set name.
2396
+ # Corresponds to the JSON property `name`
2397
+ # @return [String]
2398
+ attr_accessor :name
2399
+
2400
+ # The sample ID this call set corresponds to.
2401
+ # Corresponds to the JSON property `sampleId`
2402
+ # @return [String]
2403
+ attr_accessor :sample_id
2404
+
2405
+ # The IDs of the variant sets this call set belongs to. This field must have
2406
+ # exactly length one, as a call set belongs to a single variant set. This field
2407
+ # is repeated for compatibility with the [GA4GH 0.5.1 API](https://github.com/
2408
+ # ga4gh/schemas/blob/v0.5.1/src/main/resources/avro/variants.avdl#L76).
2409
+ # Corresponds to the JSON property `variantSetIds`
2410
+ # @return [Array<String>]
2411
+ attr_accessor :variant_set_ids
2412
+
2413
+ # The date this call set was created in milliseconds from the epoch.
2414
+ # Corresponds to the JSON property `created`
2415
+ # @return [String]
2416
+ attr_accessor :created
2417
+
2418
+ # A map of additional call set information. This must be of the form map (string
2419
+ # key mapping to a list of string values).
2420
+ # Corresponds to the JSON property `info`
2421
+ # @return [Hash<String,Array<Object>>]
2422
+ attr_accessor :info
2423
+
2424
+ def initialize(**args)
2425
+ update!(**args)
2426
+ end
2427
+
2428
+ # Update properties of this object
2429
+ def update!(**args)
2430
+ @id = args[:id] unless args[:id].nil?
2431
+ @name = args[:name] unless args[:name].nil?
2432
+ @sample_id = args[:sample_id] unless args[:sample_id].nil?
2433
+ @variant_set_ids = args[:variant_set_ids] unless args[:variant_set_ids].nil?
2434
+ @created = args[:created] unless args[:created].nil?
2435
+ @info = args[:info] unless args[:info].nil?
2436
+ end
2437
+ end
2438
+
2439
+ # The stream variants request.
2440
+ class StreamVariantsRequest
2441
+ include Google::Apis::Core::Hashable
2442
+
2443
+ # The Google Developers Console project ID or number which will be billed for
2444
+ # this access. The caller must have WRITE access to this project. Required.
2445
+ # Corresponds to the JSON property `projectId`
2446
+ # @return [String]
2447
+ attr_accessor :project_id
2448
+
2449
+ # The variant set ID from which to stream variants.
2450
+ # Corresponds to the JSON property `variantSetId`
2451
+ # @return [String]
2452
+ attr_accessor :variant_set_id
2453
+
2454
+ # Only return variant calls which belong to call sets with these IDs. Leaving
2455
+ # this blank returns all variant calls.
2456
+ # Corresponds to the JSON property `callSetIds`
2457
+ # @return [Array<String>]
2458
+ attr_accessor :call_set_ids
2459
+
2460
+ # Required. Only return variants in this reference sequence.
2461
+ # Corresponds to the JSON property `referenceName`
2462
+ # @return [String]
2463
+ attr_accessor :reference_name
2464
+
2465
+ # The beginning of the window (0-based, inclusive) for which overlapping
2466
+ # variants should be returned.
2467
+ # Corresponds to the JSON property `start`
2468
+ # @return [String]
2469
+ attr_accessor :start
2470
+
2471
+ # The end of the window (0-based, exclusive) for which overlapping variants
2472
+ # should be returned.
2473
+ # Corresponds to the JSON property `end`
2474
+ # @return [String]
2475
+ attr_accessor :end
2476
+
2477
+ def initialize(**args)
2478
+ update!(**args)
2479
+ end
2480
+
2481
+ # Update properties of this object
2482
+ def update!(**args)
2483
+ @project_id = args[:project_id] unless args[:project_id].nil?
2484
+ @variant_set_id = args[:variant_set_id] unless args[:variant_set_id].nil?
2485
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
2486
+ @reference_name = args[:reference_name] unless args[:reference_name].nil?
2487
+ @start = args[:start] unless args[:start].nil?
2488
+ @end = args[:end] unless args[:end].nil?
2489
+ end
2490
+ end
2491
+
2492
+ #
2493
+ class StreamVariantsResponse
2494
+ include Google::Apis::Core::Hashable
2495
+
2496
+ #
2497
+ # Corresponds to the JSON property `variants`
2498
+ # @return [Array<Google::Apis::GenomicsV1::Variant>]
2499
+ attr_accessor :variants
2500
+
2501
+ def initialize(**args)
2502
+ update!(**args)
2503
+ end
2504
+
2505
+ # Update properties of this object
2506
+ def update!(**args)
2507
+ @variants = args[:variants] unless args[:variants].nil?
2508
+ end
2509
+ end
2510
+
2511
+ # The read group set import response.
2512
+ class ImportReadGroupSetsResponse
2513
+ include Google::Apis::Core::Hashable
2514
+
2515
+ # IDs of the read group sets that were created.
2516
+ # Corresponds to the JSON property `readGroupSetIds`
2517
+ # @return [Array<String>]
2518
+ attr_accessor :read_group_set_ids
2519
+
2520
+ def initialize(**args)
2521
+ update!(**args)
2522
+ end
2523
+
2524
+ # Update properties of this object
2525
+ def update!(**args)
2526
+ @read_group_set_ids = args[:read_group_set_ids] unless args[:read_group_set_ids].nil?
2527
+ end
2528
+ end
2529
+
2530
+ # The variant data import response.
2531
+ class ImportVariantsResponse
2532
+ include Google::Apis::Core::Hashable
2533
+
2534
+ # IDs of the call sets created during the import.
2535
+ # Corresponds to the JSON property `callSetIds`
2536
+ # @return [Array<String>]
2537
+ attr_accessor :call_set_ids
2538
+
2539
+ def initialize(**args)
2540
+ update!(**args)
2541
+ end
2542
+
2543
+ # Update properties of this object
2544
+ def update!(**args)
2545
+ @call_set_ids = args[:call_set_ids] unless args[:call_set_ids].nil?
2546
+ end
2547
+ end
2548
+
2549
+ # Metadata describing an Operation.
2550
+ class OperationMetadata
2551
+ include Google::Apis::Core::Hashable
2552
+
2553
+ # The Google Cloud Project in which the job is scoped.
2554
+ # Corresponds to the JSON property `projectId`
2555
+ # @return [String]
2556
+ attr_accessor :project_id
2557
+
2558
+ # The time at which the job was submitted to the Genomics service.
2559
+ # Corresponds to the JSON property `createTime`
2560
+ # @return [String]
2561
+ attr_accessor :create_time
2562
+
2563
+ # The original request that started the operation. Note that this will be in
2564
+ # current version of the API. If the operation was started with v1beta2 API and
2565
+ # a GetOperation is performed on v1 API, a v1 request will be returned.
2566
+ # Corresponds to the JSON property `request`
2567
+ # @return [Hash<String,Object>]
2568
+ attr_accessor :request
2569
+
2570
+ # Optional event messages that were generated during the job's execution. This
2571
+ # also contains any warnings that were generated during import or export.
2572
+ # Corresponds to the JSON property `events`
2573
+ # @return [Array<Google::Apis::GenomicsV1::OperationEvent>]
2574
+ attr_accessor :events
2575
+
2576
+ def initialize(**args)
2577
+ update!(**args)
2578
+ end
2579
+
2580
+ # Update properties of this object
2581
+ def update!(**args)
2582
+ @project_id = args[:project_id] unless args[:project_id].nil?
2583
+ @create_time = args[:create_time] unless args[:create_time].nil?
2584
+ @request = args[:request] unless args[:request].nil?
2585
+ @events = args[:events] unless args[:events].nil?
2586
+ end
2587
+ end
2588
+
2589
+ # An event that occurred during an Operation.
2590
+ class OperationEvent
2591
+ include Google::Apis::Core::Hashable
2592
+
2593
+ # Required description of event.
2594
+ # Corresponds to the JSON property `description`
2595
+ # @return [String]
2596
+ attr_accessor :description
2597
+
2598
+ def initialize(**args)
2599
+ update!(**args)
2600
+ end
2601
+
2602
+ # Update properties of this object
2603
+ def update!(**args)
2604
+ @description = args[:description] unless args[:description].nil?
2605
+ end
2606
+ end
2607
+ end
2608
+ end
2609
+ end