google-api-client 0.8.7 → 0.9.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,235 @@
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 ReplicapoolV1beta2
24
+
25
+ class InstanceGroupManager
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+ end
28
+
29
+ class InstanceGroupManagerList
30
+ class Representation < Google::Apis::Core::JsonRepresentation; end
31
+ end
32
+
33
+ class AbandonInstancesRequest
34
+ class Representation < Google::Apis::Core::JsonRepresentation; end
35
+ end
36
+
37
+ class DeleteInstancesRequest
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+ end
40
+
41
+ class RecreateInstancesRequest
42
+ class Representation < Google::Apis::Core::JsonRepresentation; end
43
+ end
44
+
45
+ class SetInstanceTemplateRequest
46
+ class Representation < Google::Apis::Core::JsonRepresentation; end
47
+ end
48
+
49
+ class SetTargetPoolsRequest
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+ end
52
+
53
+ class Operation
54
+ class Representation < Google::Apis::Core::JsonRepresentation; end
55
+
56
+ class Error
57
+ class Representation < Google::Apis::Core::JsonRepresentation; end
58
+
59
+ class Error
60
+ class Representation < Google::Apis::Core::JsonRepresentation; end
61
+ end
62
+ end
63
+
64
+ class Warning
65
+ class Representation < Google::Apis::Core::JsonRepresentation; end
66
+
67
+ class Datum
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+ end
70
+ end
71
+ end
72
+
73
+ class OperationList
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+ end
76
+
77
+ class ReplicaPoolAutoHealingPolicy
78
+ class Representation < Google::Apis::Core::JsonRepresentation; end
79
+ end
80
+
81
+ class InstanceGroupManager
82
+ # @private
83
+ class Representation < Google::Apis::Core::JsonRepresentation
84
+ collection :auto_healing_policies, as: 'autoHealingPolicies', class: Google::Apis::ReplicapoolV1beta2::ReplicaPoolAutoHealingPolicy, decorator: Google::Apis::ReplicapoolV1beta2::ReplicaPoolAutoHealingPolicy::Representation
85
+
86
+ property :base_instance_name, as: 'baseInstanceName'
87
+ property :creation_timestamp, as: 'creationTimestamp'
88
+ property :current_size, as: 'currentSize'
89
+ property :description, as: 'description'
90
+ property :fingerprint, :base64 => true, as: 'fingerprint'
91
+ property :group, as: 'group'
92
+ property :id, as: 'id'
93
+ property :instance_template, as: 'instanceTemplate'
94
+ property :kind, as: 'kind'
95
+ property :name, as: 'name'
96
+ property :self_link, as: 'selfLink'
97
+ collection :target_pools, as: 'targetPools'
98
+ property :target_size, as: 'targetSize'
99
+ end
100
+ end
101
+
102
+ class InstanceGroupManagerList
103
+ # @private
104
+ class Representation < Google::Apis::Core::JsonRepresentation
105
+ property :id, as: 'id'
106
+ collection :items, as: 'items', class: Google::Apis::ReplicapoolV1beta2::InstanceGroupManager, decorator: Google::Apis::ReplicapoolV1beta2::InstanceGroupManager::Representation
107
+
108
+ property :kind, as: 'kind'
109
+ property :next_page_token, as: 'nextPageToken'
110
+ property :self_link, as: 'selfLink'
111
+ end
112
+ end
113
+
114
+ class AbandonInstancesRequest
115
+ # @private
116
+ class Representation < Google::Apis::Core::JsonRepresentation
117
+ collection :instances, as: 'instances'
118
+ end
119
+ end
120
+
121
+ class DeleteInstancesRequest
122
+ # @private
123
+ class Representation < Google::Apis::Core::JsonRepresentation
124
+ collection :instances, as: 'instances'
125
+ end
126
+ end
127
+
128
+ class RecreateInstancesRequest
129
+ # @private
130
+ class Representation < Google::Apis::Core::JsonRepresentation
131
+ collection :instances, as: 'instances'
132
+ end
133
+ end
134
+
135
+ class SetInstanceTemplateRequest
136
+ # @private
137
+ class Representation < Google::Apis::Core::JsonRepresentation
138
+ property :instance_template, as: 'instanceTemplate'
139
+ end
140
+ end
141
+
142
+ class SetTargetPoolsRequest
143
+ # @private
144
+ class Representation < Google::Apis::Core::JsonRepresentation
145
+ property :fingerprint, :base64 => true, as: 'fingerprint'
146
+ collection :target_pools, as: 'targetPools'
147
+ end
148
+ end
149
+
150
+ class Operation
151
+ # @private
152
+ class Representation < Google::Apis::Core::JsonRepresentation
153
+ property :client_operation_id, as: 'clientOperationId'
154
+ property :creation_timestamp, as: 'creationTimestamp'
155
+ property :end_time, as: 'endTime'
156
+ property :error, as: 'error', class: Google::Apis::ReplicapoolV1beta2::Operation::Error, decorator: Google::Apis::ReplicapoolV1beta2::Operation::Error::Representation
157
+
158
+ property :http_error_message, as: 'httpErrorMessage'
159
+ property :http_error_status_code, as: 'httpErrorStatusCode'
160
+ property :id, as: 'id'
161
+ property :insert_time, as: 'insertTime'
162
+ property :kind, as: 'kind'
163
+ property :name, as: 'name'
164
+ property :operation_type, as: 'operationType'
165
+ property :progress, as: 'progress'
166
+ property :region, as: 'region'
167
+ property :self_link, as: 'selfLink'
168
+ property :start_time, as: 'startTime'
169
+ property :status, as: 'status'
170
+ property :status_message, as: 'statusMessage'
171
+ property :target_id, as: 'targetId'
172
+ property :target_link, as: 'targetLink'
173
+ property :user, as: 'user'
174
+ collection :warnings, as: 'warnings', class: Google::Apis::ReplicapoolV1beta2::Operation::Warning, decorator: Google::Apis::ReplicapoolV1beta2::Operation::Warning::Representation
175
+
176
+ property :zone, as: 'zone'
177
+ end
178
+
179
+ class Error
180
+ # @private
181
+ class Representation < Google::Apis::Core::JsonRepresentation
182
+ collection :errors, as: 'errors', class: Google::Apis::ReplicapoolV1beta2::Operation::Error::Error, decorator: Google::Apis::ReplicapoolV1beta2::Operation::Error::Error::Representation
183
+
184
+ end
185
+
186
+ class Error
187
+ # @private
188
+ class Representation < Google::Apis::Core::JsonRepresentation
189
+ property :code, as: 'code'
190
+ property :location, as: 'location'
191
+ property :message, as: 'message'
192
+ end
193
+ end
194
+ end
195
+
196
+ class Warning
197
+ # @private
198
+ class Representation < Google::Apis::Core::JsonRepresentation
199
+ property :code, as: 'code'
200
+ collection :data, as: 'data', class: Google::Apis::ReplicapoolV1beta2::Operation::Warning::Datum, decorator: Google::Apis::ReplicapoolV1beta2::Operation::Warning::Datum::Representation
201
+
202
+ property :message, as: 'message'
203
+ end
204
+
205
+ class Datum
206
+ # @private
207
+ class Representation < Google::Apis::Core::JsonRepresentation
208
+ property :key, as: 'key'
209
+ property :value, as: 'value'
210
+ end
211
+ end
212
+ end
213
+ end
214
+
215
+ class OperationList
216
+ # @private
217
+ class Representation < Google::Apis::Core::JsonRepresentation
218
+ property :id, as: 'id'
219
+ collection :items, as: 'items', class: Google::Apis::ReplicapoolV1beta2::Operation, decorator: Google::Apis::ReplicapoolV1beta2::Operation::Representation
220
+
221
+ property :kind, as: 'kind'
222
+ property :next_page_token, as: 'nextPageToken'
223
+ property :self_link, as: 'selfLink'
224
+ end
225
+ end
226
+
227
+ class ReplicaPoolAutoHealingPolicy
228
+ # @private
229
+ class Representation < Google::Apis::Core::JsonRepresentation
230
+ property :health_check, as: 'healthCheck'
231
+ end
232
+ end
233
+ end
234
+ end
235
+ end
@@ -0,0 +1,620 @@
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/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module ReplicapoolV1beta2
23
+ # Google Compute Engine Instance Group Manager API
24
+ #
25
+ # The Google Compute Engine Instance Group Manager API provides groups of
26
+ # homogenous Compute Engine Instances.
27
+ #
28
+ # @example
29
+ # require 'google/apis/replicapool_v1beta2'
30
+ #
31
+ # Replicapool = Google::Apis::ReplicapoolV1beta2 # Alias the module
32
+ # service = Replicapool::ReplicapoolService.new
33
+ #
34
+ # @see https://developers.google.com/compute/docs/instance-groups/manager/v1beta2
35
+ class ReplicapoolService < Google::Apis::Core::BaseService
36
+ # @return [String]
37
+ # API key. Your API key identifies your project and provides you with API access,
38
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
39
+ attr_accessor :key
40
+
41
+ # @return [String]
42
+ # Available to use for quota purposes for server-side applications. Can be any
43
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
44
+ # Overrides userIp if both are provided.
45
+ attr_accessor :quota_user
46
+
47
+ # @return [String]
48
+ # IP address of the site where the request originates. Use this if you want to
49
+ # enforce per-user limits.
50
+ attr_accessor :user_ip
51
+
52
+ def initialize
53
+ super('https://www.googleapis.com/', 'replicapool/v1beta2/projects/')
54
+ end
55
+
56
+ # Removes the specified instances from the managed instance group, and from any
57
+ # target pools of which they were members, without deleting the instances.
58
+ # @param [String] project
59
+ # The Google Developers Console project name.
60
+ # @param [String] zone
61
+ # The name of the zone in which the instance group manager resides.
62
+ # @param [String] instance_group_manager
63
+ # The name of the instance group manager.
64
+ # @param [Google::Apis::ReplicapoolV1beta2::AbandonInstancesRequest] abandon_instances_request_object
65
+ # @param [String] fields
66
+ # Selector specifying which fields to include in a partial response.
67
+ # @param [String] quota_user
68
+ # Available to use for quota purposes for server-side applications. Can be any
69
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
70
+ # Overrides userIp if both are provided.
71
+ # @param [String] user_ip
72
+ # IP address of the site where the request originates. Use this if you want to
73
+ # enforce per-user limits.
74
+ # @param [Google::Apis::RequestOptions] options
75
+ # Request-specific options
76
+ #
77
+ # @yield [result, err] Result & error if block supplied
78
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
79
+ # @yieldparam err [StandardError] error object if request failed
80
+ #
81
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
82
+ #
83
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
84
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
85
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
86
+ def abandon_instances(project, zone, instance_group_manager, abandon_instances_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
87
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances'
88
+ command = make_simple_command(:post, path, options)
89
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::AbandonInstancesRequest::Representation
90
+ command.request_object = abandon_instances_request_object
91
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
92
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
93
+ command.params['project'] = project unless project.nil?
94
+ command.params['zone'] = zone unless zone.nil?
95
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
96
+ command.query['fields'] = fields unless fields.nil?
97
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
98
+ command.query['userIp'] = user_ip unless user_ip.nil?
99
+ execute_or_queue_command(command, &block)
100
+ end
101
+
102
+ # Deletes the instance group manager and all instances contained within. If you'
103
+ # d like to delete the manager without deleting the instances, you must first
104
+ # abandon the instances to remove them from the group.
105
+ # @param [String] project
106
+ # The Google Developers Console project name.
107
+ # @param [String] zone
108
+ # The name of the zone in which the instance group manager resides.
109
+ # @param [String] instance_group_manager
110
+ # Name of the Instance Group Manager resource to delete.
111
+ # @param [String] fields
112
+ # Selector specifying which fields to include in a partial response.
113
+ # @param [String] quota_user
114
+ # Available to use for quota purposes for server-side applications. Can be any
115
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
116
+ # Overrides userIp if both are provided.
117
+ # @param [String] user_ip
118
+ # IP address of the site where the request originates. Use this if you want to
119
+ # enforce per-user limits.
120
+ # @param [Google::Apis::RequestOptions] options
121
+ # Request-specific options
122
+ #
123
+ # @yield [result, err] Result & error if block supplied
124
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
125
+ # @yieldparam err [StandardError] error object if request failed
126
+ #
127
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
128
+ #
129
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
130
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
131
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
132
+ def delete_instance_group_manager(project, zone, instance_group_manager, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
133
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}'
134
+ command = make_simple_command(:delete, path, options)
135
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
136
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
137
+ command.params['project'] = project unless project.nil?
138
+ command.params['zone'] = zone unless zone.nil?
139
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
140
+ command.query['fields'] = fields unless fields.nil?
141
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
142
+ command.query['userIp'] = user_ip unless user_ip.nil?
143
+ execute_or_queue_command(command, &block)
144
+ end
145
+
146
+ # Deletes the specified instances. The instances are deleted, then removed from
147
+ # the instance group and any target pools of which they were a member. The
148
+ # targetSize of the instance group manager is reduced by the number of instances
149
+ # deleted.
150
+ # @param [String] project
151
+ # The Google Developers Console project name.
152
+ # @param [String] zone
153
+ # The name of the zone in which the instance group manager resides.
154
+ # @param [String] instance_group_manager
155
+ # The name of the instance group manager.
156
+ # @param [Google::Apis::ReplicapoolV1beta2::DeleteInstancesRequest] delete_instances_request_object
157
+ # @param [String] fields
158
+ # Selector specifying which fields to include in a partial response.
159
+ # @param [String] quota_user
160
+ # Available to use for quota purposes for server-side applications. Can be any
161
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
162
+ # Overrides userIp if both are provided.
163
+ # @param [String] user_ip
164
+ # IP address of the site where the request originates. Use this if you want to
165
+ # enforce per-user limits.
166
+ # @param [Google::Apis::RequestOptions] options
167
+ # Request-specific options
168
+ #
169
+ # @yield [result, err] Result & error if block supplied
170
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
171
+ # @yieldparam err [StandardError] error object if request failed
172
+ #
173
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
174
+ #
175
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
176
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
177
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
178
+ def delete_instances(project, zone, instance_group_manager, delete_instances_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
179
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances'
180
+ command = make_simple_command(:post, path, options)
181
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::DeleteInstancesRequest::Representation
182
+ command.request_object = delete_instances_request_object
183
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
184
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
185
+ command.params['project'] = project unless project.nil?
186
+ command.params['zone'] = zone unless zone.nil?
187
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
188
+ command.query['fields'] = fields unless fields.nil?
189
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
190
+ command.query['userIp'] = user_ip unless user_ip.nil?
191
+ execute_or_queue_command(command, &block)
192
+ end
193
+
194
+ # Returns the specified Instance Group Manager resource.
195
+ # @param [String] project
196
+ # The Google Developers Console project name.
197
+ # @param [String] zone
198
+ # The name of the zone in which the instance group manager resides.
199
+ # @param [String] instance_group_manager
200
+ # Name of the instance resource to return.
201
+ # @param [String] fields
202
+ # Selector specifying which fields to include in a partial response.
203
+ # @param [String] quota_user
204
+ # Available to use for quota purposes for server-side applications. Can be any
205
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
206
+ # Overrides userIp if both are provided.
207
+ # @param [String] user_ip
208
+ # IP address of the site where the request originates. Use this if you want to
209
+ # enforce per-user limits.
210
+ # @param [Google::Apis::RequestOptions] options
211
+ # Request-specific options
212
+ #
213
+ # @yield [result, err] Result & error if block supplied
214
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::InstanceGroupManager] parsed result object
215
+ # @yieldparam err [StandardError] error object if request failed
216
+ #
217
+ # @return [Google::Apis::ReplicapoolV1beta2::InstanceGroupManager]
218
+ #
219
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
220
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
221
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
222
+ def get_instance_group_manager(project, zone, instance_group_manager, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
223
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}'
224
+ command = make_simple_command(:get, path, options)
225
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::InstanceGroupManager::Representation
226
+ command.response_class = Google::Apis::ReplicapoolV1beta2::InstanceGroupManager
227
+ command.params['project'] = project unless project.nil?
228
+ command.params['zone'] = zone unless zone.nil?
229
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
230
+ command.query['fields'] = fields unless fields.nil?
231
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
232
+ command.query['userIp'] = user_ip unless user_ip.nil?
233
+ execute_or_queue_command(command, &block)
234
+ end
235
+
236
+ # Creates an instance group manager, as well as the instance group and the
237
+ # specified number of instances.
238
+ # @param [String] project
239
+ # The Google Developers Console project name.
240
+ # @param [String] zone
241
+ # The name of the zone in which the instance group manager resides.
242
+ # @param [Google::Apis::ReplicapoolV1beta2::InstanceGroupManager] instance_group_manager_object
243
+ # @param [Fixnum] size
244
+ # Number of instances that should exist.
245
+ # @param [String] fields
246
+ # Selector specifying which fields to include in a partial response.
247
+ # @param [String] quota_user
248
+ # Available to use for quota purposes for server-side applications. Can be any
249
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
250
+ # Overrides userIp if both are provided.
251
+ # @param [String] user_ip
252
+ # IP address of the site where the request originates. Use this if you want to
253
+ # enforce per-user limits.
254
+ # @param [Google::Apis::RequestOptions] options
255
+ # Request-specific options
256
+ #
257
+ # @yield [result, err] Result & error if block supplied
258
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
259
+ # @yieldparam err [StandardError] error object if request failed
260
+ #
261
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
262
+ #
263
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
264
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
265
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
266
+ def insert_instance_group_manager(project, zone, instance_group_manager_object = nil, size: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
267
+ path = '{project}/zones/{zone}/instanceGroupManagers'
268
+ command = make_simple_command(:post, path, options)
269
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::InstanceGroupManager::Representation
270
+ command.request_object = instance_group_manager_object
271
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
272
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
273
+ command.params['project'] = project unless project.nil?
274
+ command.params['zone'] = zone unless zone.nil?
275
+ command.query['size'] = size unless size.nil?
276
+ command.query['fields'] = fields unless fields.nil?
277
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
278
+ command.query['userIp'] = user_ip unless user_ip.nil?
279
+ execute_or_queue_command(command, &block)
280
+ end
281
+
282
+ # Retrieves the list of Instance Group Manager resources contained within the
283
+ # specified zone.
284
+ # @param [String] project
285
+ # The Google Developers Console project name.
286
+ # @param [String] zone
287
+ # The name of the zone in which the instance group manager resides.
288
+ # @param [String] filter
289
+ # Optional. Filter expression for filtering listed resources.
290
+ # @param [Fixnum] max_results
291
+ # Optional. Maximum count of results to be returned. Maximum value is 500 and
292
+ # default value is 500.
293
+ # @param [String] page_token
294
+ # Optional. Tag returned by a previous list request truncated by maxResults.
295
+ # Used to continue a previous list request.
296
+ # @param [String] fields
297
+ # Selector specifying which fields to include in a partial response.
298
+ # @param [String] quota_user
299
+ # Available to use for quota purposes for server-side applications. Can be any
300
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
301
+ # Overrides userIp if both are provided.
302
+ # @param [String] user_ip
303
+ # IP address of the site where the request originates. Use this if you want to
304
+ # enforce per-user limits.
305
+ # @param [Google::Apis::RequestOptions] options
306
+ # Request-specific options
307
+ #
308
+ # @yield [result, err] Result & error if block supplied
309
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::InstanceGroupManagerList] parsed result object
310
+ # @yieldparam err [StandardError] error object if request failed
311
+ #
312
+ # @return [Google::Apis::ReplicapoolV1beta2::InstanceGroupManagerList]
313
+ #
314
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
315
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
316
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
317
+ def list_instance_group_managers(project, zone, filter: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
318
+ path = '{project}/zones/{zone}/instanceGroupManagers'
319
+ command = make_simple_command(:get, path, options)
320
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::InstanceGroupManagerList::Representation
321
+ command.response_class = Google::Apis::ReplicapoolV1beta2::InstanceGroupManagerList
322
+ command.params['project'] = project unless project.nil?
323
+ command.params['zone'] = zone unless zone.nil?
324
+ command.query['filter'] = filter unless filter.nil?
325
+ command.query['maxResults'] = max_results unless max_results.nil?
326
+ command.query['pageToken'] = page_token unless page_token.nil?
327
+ command.query['fields'] = fields unless fields.nil?
328
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
329
+ command.query['userIp'] = user_ip unless user_ip.nil?
330
+ execute_or_queue_command(command, &block)
331
+ end
332
+
333
+ # Recreates the specified instances. The instances are deleted, then recreated
334
+ # using the instance group manager's current instance template.
335
+ # @param [String] project
336
+ # The Google Developers Console project name.
337
+ # @param [String] zone
338
+ # The name of the zone in which the instance group manager resides.
339
+ # @param [String] instance_group_manager
340
+ # The name of the instance group manager.
341
+ # @param [Google::Apis::ReplicapoolV1beta2::RecreateInstancesRequest] recreate_instances_request_object
342
+ # @param [String] fields
343
+ # Selector specifying which fields to include in a partial response.
344
+ # @param [String] quota_user
345
+ # Available to use for quota purposes for server-side applications. Can be any
346
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
347
+ # Overrides userIp if both are provided.
348
+ # @param [String] user_ip
349
+ # IP address of the site where the request originates. Use this if you want to
350
+ # enforce per-user limits.
351
+ # @param [Google::Apis::RequestOptions] options
352
+ # Request-specific options
353
+ #
354
+ # @yield [result, err] Result & error if block supplied
355
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
356
+ # @yieldparam err [StandardError] error object if request failed
357
+ #
358
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
359
+ #
360
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
361
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
362
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
363
+ def recreate_instances(project, zone, instance_group_manager, recreate_instances_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
364
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances'
365
+ command = make_simple_command(:post, path, options)
366
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::RecreateInstancesRequest::Representation
367
+ command.request_object = recreate_instances_request_object
368
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
369
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
370
+ command.params['project'] = project unless project.nil?
371
+ command.params['zone'] = zone unless zone.nil?
372
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
373
+ command.query['fields'] = fields unless fields.nil?
374
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
375
+ command.query['userIp'] = user_ip unless user_ip.nil?
376
+ execute_or_queue_command(command, &block)
377
+ end
378
+
379
+ # Resizes the managed instance group up or down. If resized up, new instances
380
+ # are created using the current instance template. If resized down, instances
381
+ # are removed in the order outlined in Resizing a managed instance group.
382
+ # @param [String] project
383
+ # The Google Developers Console project name.
384
+ # @param [String] zone
385
+ # The name of the zone in which the instance group manager resides.
386
+ # @param [String] instance_group_manager
387
+ # The name of the instance group manager.
388
+ # @param [Fixnum] size
389
+ # Number of instances that should exist in this Instance Group Manager.
390
+ # @param [String] fields
391
+ # Selector specifying which fields to include in a partial response.
392
+ # @param [String] quota_user
393
+ # Available to use for quota purposes for server-side applications. Can be any
394
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
395
+ # Overrides userIp if both are provided.
396
+ # @param [String] user_ip
397
+ # IP address of the site where the request originates. Use this if you want to
398
+ # enforce per-user limits.
399
+ # @param [Google::Apis::RequestOptions] options
400
+ # Request-specific options
401
+ #
402
+ # @yield [result, err] Result & error if block supplied
403
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
404
+ # @yieldparam err [StandardError] error object if request failed
405
+ #
406
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
407
+ #
408
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
409
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
410
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
411
+ def resize_instance(project, zone, instance_group_manager, size: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
412
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize'
413
+ command = make_simple_command(:post, path, options)
414
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
415
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
416
+ command.params['project'] = project unless project.nil?
417
+ command.params['zone'] = zone unless zone.nil?
418
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
419
+ command.query['size'] = size unless size.nil?
420
+ command.query['fields'] = fields unless fields.nil?
421
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
422
+ command.query['userIp'] = user_ip unless user_ip.nil?
423
+ execute_or_queue_command(command, &block)
424
+ end
425
+
426
+ # Sets the instance template to use when creating new instances in this group.
427
+ # Existing instances are not affected.
428
+ # @param [String] project
429
+ # The Google Developers Console project name.
430
+ # @param [String] zone
431
+ # The name of the zone in which the instance group manager resides.
432
+ # @param [String] instance_group_manager
433
+ # The name of the instance group manager.
434
+ # @param [Google::Apis::ReplicapoolV1beta2::SetInstanceTemplateRequest] set_instance_template_request_object
435
+ # @param [String] fields
436
+ # Selector specifying which fields to include in a partial response.
437
+ # @param [String] quota_user
438
+ # Available to use for quota purposes for server-side applications. Can be any
439
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
440
+ # Overrides userIp if both are provided.
441
+ # @param [String] user_ip
442
+ # IP address of the site where the request originates. Use this if you want to
443
+ # enforce per-user limits.
444
+ # @param [Google::Apis::RequestOptions] options
445
+ # Request-specific options
446
+ #
447
+ # @yield [result, err] Result & error if block supplied
448
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
449
+ # @yieldparam err [StandardError] error object if request failed
450
+ #
451
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
452
+ #
453
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
454
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
455
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
456
+ def set_instance_template(project, zone, instance_group_manager, set_instance_template_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
457
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate'
458
+ command = make_simple_command(:post, path, options)
459
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::SetInstanceTemplateRequest::Representation
460
+ command.request_object = set_instance_template_request_object
461
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
462
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
463
+ command.params['project'] = project unless project.nil?
464
+ command.params['zone'] = zone unless zone.nil?
465
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
466
+ command.query['fields'] = fields unless fields.nil?
467
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
468
+ command.query['userIp'] = user_ip unless user_ip.nil?
469
+ execute_or_queue_command(command, &block)
470
+ end
471
+
472
+ # Modifies the target pools to which all new instances in this group are
473
+ # assigned. Existing instances in the group are not affected.
474
+ # @param [String] project
475
+ # The Google Developers Console project name.
476
+ # @param [String] zone
477
+ # The name of the zone in which the instance group manager resides.
478
+ # @param [String] instance_group_manager
479
+ # The name of the instance group manager.
480
+ # @param [Google::Apis::ReplicapoolV1beta2::SetTargetPoolsRequest] set_target_pools_request_object
481
+ # @param [String] fields
482
+ # Selector specifying which fields to include in a partial response.
483
+ # @param [String] quota_user
484
+ # Available to use for quota purposes for server-side applications. Can be any
485
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
486
+ # Overrides userIp if both are provided.
487
+ # @param [String] user_ip
488
+ # IP address of the site where the request originates. Use this if you want to
489
+ # enforce per-user limits.
490
+ # @param [Google::Apis::RequestOptions] options
491
+ # Request-specific options
492
+ #
493
+ # @yield [result, err] Result & error if block supplied
494
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
495
+ # @yieldparam err [StandardError] error object if request failed
496
+ #
497
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
498
+ #
499
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
500
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
501
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
502
+ def set_target_pools(project, zone, instance_group_manager, set_target_pools_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
503
+ path = '{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools'
504
+ command = make_simple_command(:post, path, options)
505
+ command.request_representation = Google::Apis::ReplicapoolV1beta2::SetTargetPoolsRequest::Representation
506
+ command.request_object = set_target_pools_request_object
507
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
508
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
509
+ command.params['project'] = project unless project.nil?
510
+ command.params['zone'] = zone unless zone.nil?
511
+ command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil?
512
+ command.query['fields'] = fields unless fields.nil?
513
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
514
+ command.query['userIp'] = user_ip unless user_ip.nil?
515
+ execute_or_queue_command(command, &block)
516
+ end
517
+
518
+ # Retrieves the specified zone-specific operation resource.
519
+ # @param [String] project
520
+ # Name of the project scoping this request.
521
+ # @param [String] zone
522
+ # Name of the zone scoping this request.
523
+ # @param [String] operation
524
+ # Name of the operation resource to return.
525
+ # @param [String] fields
526
+ # Selector specifying which fields to include in a partial response.
527
+ # @param [String] quota_user
528
+ # Available to use for quota purposes for server-side applications. Can be any
529
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
530
+ # Overrides userIp if both are provided.
531
+ # @param [String] user_ip
532
+ # IP address of the site where the request originates. Use this if you want to
533
+ # enforce per-user limits.
534
+ # @param [Google::Apis::RequestOptions] options
535
+ # Request-specific options
536
+ #
537
+ # @yield [result, err] Result & error if block supplied
538
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::Operation] parsed result object
539
+ # @yieldparam err [StandardError] error object if request failed
540
+ #
541
+ # @return [Google::Apis::ReplicapoolV1beta2::Operation]
542
+ #
543
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
544
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
545
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
546
+ def get_zone_operation(project, zone, operation, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
547
+ path = '{project}/zones/{zone}/operations/{operation}'
548
+ command = make_simple_command(:get, path, options)
549
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::Operation::Representation
550
+ command.response_class = Google::Apis::ReplicapoolV1beta2::Operation
551
+ command.params['project'] = project unless project.nil?
552
+ command.params['zone'] = zone unless zone.nil?
553
+ command.params['operation'] = operation unless operation.nil?
554
+ command.query['fields'] = fields unless fields.nil?
555
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
556
+ command.query['userIp'] = user_ip unless user_ip.nil?
557
+ execute_or_queue_command(command, &block)
558
+ end
559
+
560
+ # Retrieves the list of operation resources contained within the specified zone.
561
+ # @param [String] project
562
+ # Name of the project scoping this request.
563
+ # @param [String] zone
564
+ # Name of the zone scoping this request.
565
+ # @param [String] filter
566
+ # Optional. Filter expression for filtering listed resources.
567
+ # @param [Fixnum] max_results
568
+ # Optional. Maximum count of results to be returned. Maximum value is 500 and
569
+ # default value is 500.
570
+ # @param [String] page_token
571
+ # Optional. Tag returned by a previous list request truncated by maxResults.
572
+ # Used to continue a previous list request.
573
+ # @param [String] fields
574
+ # Selector specifying which fields to include in a partial response.
575
+ # @param [String] quota_user
576
+ # Available to use for quota purposes for server-side applications. Can be any
577
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
578
+ # Overrides userIp if both are provided.
579
+ # @param [String] user_ip
580
+ # IP address of the site where the request originates. Use this if you want to
581
+ # enforce per-user limits.
582
+ # @param [Google::Apis::RequestOptions] options
583
+ # Request-specific options
584
+ #
585
+ # @yield [result, err] Result & error if block supplied
586
+ # @yieldparam result [Google::Apis::ReplicapoolV1beta2::OperationList] parsed result object
587
+ # @yieldparam err [StandardError] error object if request failed
588
+ #
589
+ # @return [Google::Apis::ReplicapoolV1beta2::OperationList]
590
+ #
591
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
592
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
593
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
594
+ def list_zone_operations(project, zone, filter: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
595
+ path = '{project}/zones/{zone}/operations'
596
+ command = make_simple_command(:get, path, options)
597
+ command.response_representation = Google::Apis::ReplicapoolV1beta2::OperationList::Representation
598
+ command.response_class = Google::Apis::ReplicapoolV1beta2::OperationList
599
+ command.params['project'] = project unless project.nil?
600
+ command.params['zone'] = zone unless zone.nil?
601
+ command.query['filter'] = filter unless filter.nil?
602
+ command.query['maxResults'] = max_results unless max_results.nil?
603
+ command.query['pageToken'] = page_token unless page_token.nil?
604
+ command.query['fields'] = fields unless fields.nil?
605
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
606
+ command.query['userIp'] = user_ip unless user_ip.nil?
607
+ execute_or_queue_command(command, &block)
608
+ end
609
+
610
+ protected
611
+
612
+ def apply_command_defaults(command)
613
+ command.query['key'] = key unless key.nil?
614
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
615
+ command.query['userIp'] = user_ip unless user_ip.nil?
616
+ end
617
+ end
618
+ end
619
+ end
620
+ end