google-api-client 0.10.2 → 0.10.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/MIGRATING.md +22 -7
  4. data/README.md +4 -8
  5. data/api_names.yaml +1210 -37815
  6. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +32 -0
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +144 -0
  8. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +86 -0
  9. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +90 -0
  10. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +764 -764
  12. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +180 -180
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +421 -421
  14. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1/classes.rb +1 -0
  16. data/generated/google/apis/admin_reports_v1.rb +1 -1
  17. data/generated/google/apis/adsense_v1_4.rb +1 -1
  18. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  19. data/generated/google/apis/analyticsreporting_v4/classes.rb +187 -187
  20. data/generated/google/apis/analyticsreporting_v4/representations.rb +42 -42
  21. data/generated/google/apis/appengine_v1.rb +40 -0
  22. data/generated/google/apis/appengine_v1/classes.rb +2251 -0
  23. data/generated/google/apis/appengine_v1/representations.rb +858 -0
  24. data/generated/google/apis/appengine_v1/service.rb +894 -0
  25. data/generated/google/apis/bigquery_v2.rb +1 -1
  26. data/generated/google/apis/bigquery_v2/classes.rb +11 -6
  27. data/generated/google/apis/books_v1.rb +1 -1
  28. data/generated/google/apis/books_v1/classes.rb +26 -0
  29. data/generated/google/apis/books_v1/representations.rb +15 -0
  30. data/generated/google/apis/books_v1/service.rb +4 -1
  31. data/generated/google/apis/calendar_v3.rb +1 -1
  32. data/generated/google/apis/classroom_v1.rb +1 -1
  33. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1/classes.rb +638 -637
  35. data/generated/google/apis/cloudbuild_v1/representations.rb +110 -110
  36. data/generated/google/apis/cloudbuild_v1/service.rb +139 -139
  37. data/generated/google/apis/clouddebugger_v2.rb +3 -3
  38. data/generated/google/apis/clouddebugger_v2/classes.rb +131 -131
  39. data/generated/google/apis/clouddebugger_v2/representations.rb +25 -25
  40. data/generated/google/apis/clouderrorreporting_v1beta1.rb +36 -0
  41. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +590 -0
  42. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +252 -0
  43. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +350 -0
  44. data/generated/google/apis/cloudfunctions_v1.rb +35 -0
  45. data/generated/google/apis/cloudfunctions_v1/classes.rb +98 -0
  46. data/generated/google/apis/cloudfunctions_v1/representations.rb +57 -0
  47. data/generated/google/apis/cloudfunctions_v1/service.rb +89 -0
  48. data/generated/google/apis/cloudkms_v1/classes.rb +277 -270
  49. data/generated/google/apis/cloudkms_v1/representations.rb +73 -73
  50. data/generated/google/apis/cloudkms_v1/service.rb +194 -194
  51. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  52. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +1147 -1144
  53. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +188 -188
  54. data/generated/google/apis/cloudresourcemanager_v1/service.rb +513 -936
  55. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  56. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +307 -916
  57. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +63 -285
  58. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +333 -681
  59. data/generated/google/apis/cloudtrace_v1/classes.rb +38 -38
  60. data/generated/google/apis/cloudtrace_v1/representations.rb +13 -13
  61. data/generated/google/apis/cloudtrace_v1/service.rb +16 -16
  62. data/generated/google/apis/compute_beta.rb +1 -1
  63. data/generated/google/apis/compute_beta/classes.rb +32 -7
  64. data/generated/google/apis/compute_beta/representations.rb +2 -0
  65. data/generated/google/apis/compute_beta/service.rb +11 -11
  66. data/generated/google/apis/compute_v1.rb +1 -1
  67. data/generated/google/apis/compute_v1/classes.rb +95 -2
  68. data/generated/google/apis/compute_v1/representations.rb +33 -0
  69. data/generated/google/apis/dataflow_v1b3/classes.rb +3333 -3333
  70. data/generated/google/apis/dataflow_v1b3/representations.rb +759 -759
  71. data/generated/google/apis/dataflow_v1b3/service.rb +154 -154
  72. data/generated/google/apis/dataproc_v1.rb +1 -1
  73. data/generated/google/apis/dataproc_v1/classes.rb +1097 -1097
  74. data/generated/google/apis/dataproc_v1/representations.rb +200 -200
  75. data/generated/google/apis/dataproc_v1/service.rb +356 -356
  76. data/generated/google/apis/datastore_v1.rb +4 -4
  77. data/generated/google/apis/datastore_v1/classes.rb +701 -690
  78. data/generated/google/apis/datastore_v1/representations.rb +160 -160
  79. data/generated/google/apis/datastore_v1/service.rb +52 -52
  80. data/generated/google/apis/deploymentmanager_v2/classes.rb +4 -0
  81. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  82. data/generated/google/apis/drive_v2.rb +1 -1
  83. data/generated/google/apis/drive_v2/classes.rb +158 -35
  84. data/generated/google/apis/drive_v2/representations.rb +39 -0
  85. data/generated/google/apis/drive_v2/service.rb +4 -4
  86. data/generated/google/apis/drive_v3.rb +1 -1
  87. data/generated/google/apis/drive_v3/classes.rb +162 -33
  88. data/generated/google/apis/drive_v3/representations.rb +39 -0
  89. data/generated/google/apis/drive_v3/service.rb +4 -4
  90. data/generated/google/apis/firebasedynamiclinks_v1.rb +35 -0
  91. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +466 -0
  92. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +222 -0
  93. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +95 -0
  94. data/generated/google/apis/firebaserules_v1.rb +41 -0
  95. data/generated/google/apis/firebaserules_v1/classes.rb +425 -0
  96. data/generated/google/apis/firebaserules_v1/representations.rb +222 -0
  97. data/generated/google/apis/firebaserules_v1/service.rb +495 -0
  98. data/generated/google/apis/games_v1/classes.rb +4 -0
  99. data/generated/google/apis/genomics_v1.rb +7 -7
  100. data/generated/google/apis/genomics_v1/classes.rb +2336 -2335
  101. data/generated/google/apis/genomics_v1/representations.rb +387 -387
  102. data/generated/google/apis/genomics_v1/service.rb +1187 -1187
  103. data/generated/google/apis/gmail_v1/classes.rb +3 -0
  104. data/generated/google/apis/iam_v1.rb +1 -1
  105. data/generated/google/apis/iam_v1/classes.rb +123 -117
  106. data/generated/google/apis/iam_v1/representations.rb +33 -33
  107. data/generated/google/apis/iam_v1/service.rb +109 -109
  108. data/generated/google/apis/identitytoolkit_v3/classes.rb +5 -0
  109. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  110. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  111. data/generated/google/apis/kgsearch_v1/service.rb +4 -4
  112. data/generated/google/apis/language_v1.rb +36 -0
  113. data/generated/google/apis/language_v1/classes.rb +757 -0
  114. data/generated/google/apis/language_v1/representations.rb +338 -0
  115. data/generated/google/apis/language_v1/service.rb +185 -0
  116. data/generated/google/apis/language_v1beta1/classes.rb +407 -407
  117. data/generated/google/apis/language_v1beta1/representations.rb +103 -103
  118. data/generated/google/apis/language_v1beta1/service.rb +45 -45
  119. data/generated/google/apis/logging_v2.rb +46 -0
  120. data/generated/google/apis/logging_v2/classes.rb +1271 -0
  121. data/generated/google/apis/logging_v2/representations.rb +421 -0
  122. data/generated/google/apis/logging_v2/service.rb +1569 -0
  123. data/generated/google/apis/logging_v2beta1.rb +1 -1
  124. data/generated/google/apis/logging_v2beta1/classes.rb +886 -886
  125. data/generated/google/apis/logging_v2beta1/representations.rb +132 -132
  126. data/generated/google/apis/logging_v2beta1/service.rb +235 -235
  127. data/generated/google/apis/manufacturers_v1/classes.rb +147 -147
  128. data/generated/google/apis/manufacturers_v1/representations.rb +29 -29
  129. data/generated/google/apis/ml_v1.rb +34 -0
  130. data/generated/google/apis/ml_v1/classes.rb +1617 -0
  131. data/generated/google/apis/ml_v1/representations.rb +498 -0
  132. data/generated/google/apis/ml_v1/service.rb +769 -0
  133. data/generated/google/apis/monitoring_v3.rb +4 -4
  134. data/generated/google/apis/monitoring_v3/classes.rb +630 -630
  135. data/generated/google/apis/monitoring_v3/representations.rb +134 -134
  136. data/generated/google/apis/monitoring_v3/service.rb +240 -240
  137. data/generated/google/apis/pagespeedonline_v2/classes.rb +1 -0
  138. data/generated/google/apis/partners_v2.rb +1 -1
  139. data/generated/google/apis/partners_v2/classes.rb +639 -639
  140. data/generated/google/apis/partners_v2/representations.rb +168 -168
  141. data/generated/google/apis/partners_v2/service.rb +381 -381
  142. data/generated/google/apis/people_v1.rb +10 -10
  143. data/generated/google/apis/people_v1/classes.rb +524 -524
  144. data/generated/google/apis/people_v1/representations.rb +143 -143
  145. data/generated/google/apis/people_v1/service.rb +30 -30
  146. data/generated/google/apis/plus_domains_v1.rb +1 -1
  147. data/generated/google/apis/plus_v1.rb +1 -1
  148. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +454 -444
  149. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +90 -90
  150. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +110 -110
  151. data/generated/google/apis/pubsub_v1/classes.rb +175 -173
  152. data/generated/google/apis/pubsub_v1/representations.rb +53 -53
  153. data/generated/google/apis/pubsub_v1/service.rb +210 -210
  154. data/generated/google/apis/replicapool_v1beta2/classes.rb +2 -0
  155. data/generated/google/apis/runtimeconfig_v1.rb +38 -0
  156. data/generated/google/apis/runtimeconfig_v1/classes.rb +252 -0
  157. data/generated/google/apis/runtimeconfig_v1/representations.rb +98 -0
  158. data/generated/google/apis/runtimeconfig_v1/service.rb +176 -0
  159. data/generated/google/apis/script_v1.rb +1 -1
  160. data/generated/google/apis/script_v1/classes.rb +6 -6
  161. data/generated/google/apis/script_v1/representations.rb +1 -1
  162. data/generated/google/apis/searchconsole_v1.rb +31 -0
  163. data/generated/google/apis/searchconsole_v1/classes.rb +205 -0
  164. data/generated/google/apis/searchconsole_v1/representations.rb +129 -0
  165. data/generated/google/apis/searchconsole_v1/service.rb +88 -0
  166. data/generated/google/apis/servicecontrol_v1.rb +38 -0
  167. data/generated/google/apis/servicecontrol_v1/classes.rb +1675 -0
  168. data/generated/google/apis/servicecontrol_v1/representations.rb +601 -0
  169. data/generated/google/apis/servicecontrol_v1/service.rb +337 -0
  170. data/generated/google/apis/servicemanagement_v1.rb +45 -0
  171. data/generated/google/apis/servicemanagement_v1/classes.rb +4934 -0
  172. data/generated/google/apis/servicemanagement_v1/representations.rb +1526 -0
  173. data/generated/google/apis/servicemanagement_v1/service.rb +860 -0
  174. data/generated/google/apis/serviceuser_v1.rb +42 -0
  175. data/generated/google/apis/serviceuser_v1/classes.rb +3746 -0
  176. data/generated/google/apis/serviceuser_v1/representations.rb +1041 -0
  177. data/generated/google/apis/serviceuser_v1/service.rb +214 -0
  178. data/generated/google/apis/sheets_v4.rb +3 -3
  179. data/generated/google/apis/sheets_v4/classes.rb +4390 -4390
  180. data/generated/google/apis/sheets_v4/representations.rb +381 -381
  181. data/generated/google/apis/sheets_v4/service.rb +48 -48
  182. data/generated/google/apis/slides_v1.rb +3 -3
  183. data/generated/google/apis/slides_v1/classes.rb +2860 -2860
  184. data/generated/google/apis/slides_v1/representations.rb +693 -693
  185. data/generated/google/apis/slides_v1/service.rb +30 -30
  186. data/generated/google/apis/sourcerepo_v1.rb +34 -0
  187. data/generated/google/apis/sourcerepo_v1/classes.rb +687 -0
  188. data/generated/google/apis/sourcerepo_v1/representations.rb +285 -0
  189. data/generated/google/apis/sourcerepo_v1/service.rb +291 -0
  190. data/generated/google/apis/spanner_v1.rb +35 -0
  191. data/generated/google/apis/spanner_v1/classes.rb +3294 -0
  192. data/generated/google/apis/spanner_v1/representations.rb +984 -0
  193. data/generated/google/apis/spanner_v1/service.rb +1504 -0
  194. data/generated/google/apis/speech_v1beta1.rb +1 -1
  195. data/generated/google/apis/speech_v1beta1/classes.rb +197 -196
  196. data/generated/google/apis/speech_v1beta1/representations.rb +53 -53
  197. data/generated/google/apis/speech_v1beta1/service.rb +27 -27
  198. data/generated/google/apis/storage_v1.rb +1 -1
  199. data/generated/google/apis/storage_v1/classes.rb +131 -0
  200. data/generated/google/apis/storage_v1/representations.rb +51 -0
  201. data/generated/google/apis/storage_v1/service.rb +182 -0
  202. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  203. data/generated/google/apis/storagetransfer_v1/classes.rb +732 -661
  204. data/generated/google/apis/storagetransfer_v1/representations.rb +132 -132
  205. data/generated/google/apis/storagetransfer_v1/service.rb +174 -197
  206. data/generated/google/apis/surveys_v2.rb +40 -0
  207. data/generated/google/apis/surveys_v2/classes.rb +806 -0
  208. data/generated/google/apis/surveys_v2/representations.rb +347 -0
  209. data/generated/google/apis/surveys_v2/service.rb +477 -0
  210. data/generated/google/apis/tagmanager_v2.rb +52 -0
  211. data/generated/google/apis/tagmanager_v2/classes.rb +2435 -0
  212. data/generated/google/apis/tagmanager_v2/representations.rb +993 -0
  213. data/generated/google/apis/tagmanager_v2/service.rb +2865 -0
  214. data/generated/google/apis/toolresults_v1beta3.rb +34 -0
  215. data/generated/google/apis/toolresults_v1beta3/classes.rb +2160 -0
  216. data/generated/google/apis/toolresults_v1beta3/representations.rb +729 -0
  217. data/generated/google/apis/toolresults_v1beta3/service.rb +1236 -0
  218. data/generated/google/apis/tracing_v1.rb +40 -0
  219. data/generated/google/apis/tracing_v1/classes.rb +664 -0
  220. data/generated/google/apis/tracing_v1/representations.rb +279 -0
  221. data/generated/google/apis/tracing_v1/service.rb +225 -0
  222. data/generated/google/apis/vision_v1.rb +1 -1
  223. data/generated/google/apis/vision_v1/classes.rb +1223 -1222
  224. data/generated/google/apis/vision_v1/representations.rb +234 -234
  225. data/generated/google/apis/vision_v1/service.rb +10 -10
  226. data/generated/google/apis/webfonts_v1.rb +33 -0
  227. data/generated/google/apis/webfonts_v1/classes.rb +113 -0
  228. data/generated/google/apis/webfonts_v1/representations.rb +62 -0
  229. data/generated/google/apis/webfonts_v1/service.rb +102 -0
  230. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  231. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  232. data/generated/google/apis/youtube_partner_v1/classes.rb +31 -0
  233. data/generated/google/apis/youtube_partner_v1/representations.rb +6 -0
  234. data/generated/google/apis/youtube_partner_v1/service.rb +41 -0
  235. data/generated/google/apis/youtube_v3/classes.rb +1 -0
  236. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  237. data/generated/google/apis/youtubereporting_v1/classes.rb +76 -76
  238. data/generated/google/apis/youtubereporting_v1/representations.rb +25 -25
  239. data/generated/google/apis/youtubereporting_v1/service.rb +95 -95
  240. data/lib/google/apis/generator/annotator.rb +5 -4
  241. data/lib/google/apis/generator/templates/_class.tmpl +3 -0
  242. data/lib/google/apis/version.rb +1 -1
  243. data/samples/cli/lib/samples/adsense.rb +99 -0
  244. data/samples/cli/lib/samples/analytics.rb +18 -0
  245. data/samples/cli/lib/samples/gmail.rb +33 -0
  246. data/samples/cli/lib/samples/vision.rb +69 -0
  247. metadata +89 -4
  248. data/sync.rb +0 -71
@@ -46,36 +46,6 @@ module Google
46
46
  super('https://slides.googleapis.com/', '')
47
47
  end
48
48
 
49
- # Gets the latest version of the specified presentation.
50
- # @param [String] presentation_id
51
- # The ID of the presentation to retrieve.
52
- # @param [String] fields
53
- # Selector specifying which fields to include in a partial response.
54
- # @param [String] quota_user
55
- # Available to use for quota purposes for server-side applications. Can be any
56
- # arbitrary string assigned to a user, but should not exceed 40 characters.
57
- # @param [Google::Apis::RequestOptions] options
58
- # Request-specific options
59
- #
60
- # @yield [result, err] Result & error if block supplied
61
- # @yieldparam result [Google::Apis::SlidesV1::Presentation] parsed result object
62
- # @yieldparam err [StandardError] error object if request failed
63
- #
64
- # @return [Google::Apis::SlidesV1::Presentation]
65
- #
66
- # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
67
- # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
68
- # @raise [Google::Apis::AuthorizationError] Authorization is required
69
- def get_presentation(presentation_id, fields: nil, quota_user: nil, options: nil, &block)
70
- command = make_simple_command(:get, 'v1/presentations/{+presentationId}', options)
71
- command.response_representation = Google::Apis::SlidesV1::Presentation::Representation
72
- command.response_class = Google::Apis::SlidesV1::Presentation
73
- command.params['presentationId'] = presentation_id unless presentation_id.nil?
74
- command.query['fields'] = fields unless fields.nil?
75
- command.query['quotaUser'] = quota_user unless quota_user.nil?
76
- execute_or_queue_command(command, &block)
77
- end
78
-
79
49
  # Creates a new presentation using the title given in the request. Other
80
50
  # fields in the request are ignored.
81
51
  # Returns the created presentation.
@@ -157,6 +127,36 @@ module Google
157
127
  execute_or_queue_command(command, &block)
158
128
  end
159
129
 
130
+ # Gets the latest version of the specified presentation.
131
+ # @param [String] presentation_id
132
+ # The ID of the presentation to retrieve.
133
+ # @param [String] fields
134
+ # Selector specifying which fields to include in a partial response.
135
+ # @param [String] quota_user
136
+ # Available to use for quota purposes for server-side applications. Can be any
137
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
138
+ # @param [Google::Apis::RequestOptions] options
139
+ # Request-specific options
140
+ #
141
+ # @yield [result, err] Result & error if block supplied
142
+ # @yieldparam result [Google::Apis::SlidesV1::Presentation] parsed result object
143
+ # @yieldparam err [StandardError] error object if request failed
144
+ #
145
+ # @return [Google::Apis::SlidesV1::Presentation]
146
+ #
147
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
148
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
149
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
150
+ def get_presentation(presentation_id, fields: nil, quota_user: nil, options: nil, &block)
151
+ command = make_simple_command(:get, 'v1/presentations/{+presentationId}', options)
152
+ command.response_representation = Google::Apis::SlidesV1::Presentation::Representation
153
+ command.response_class = Google::Apis::SlidesV1::Presentation
154
+ command.params['presentationId'] = presentation_id unless presentation_id.nil?
155
+ command.query['fields'] = fields unless fields.nil?
156
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
157
+ execute_or_queue_command(command, &block)
158
+ end
159
+
160
160
  # Generates a thumbnail of the latest version of the specified page in the
161
161
  # presentation and returns a URL to the thumbnail image.
162
162
  # @param [String] presentation_id
@@ -0,0 +1,34 @@
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/sourcerepo_v1/service.rb'
16
+ require 'google/apis/sourcerepo_v1/classes.rb'
17
+ require 'google/apis/sourcerepo_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Source Repositories API
22
+ #
23
+ # Access source code repositories hosted by Google.
24
+ #
25
+ # @see https://cloud.google.com/eap/cloud-repositories/cloud-sourcerepo-api
26
+ module SourcerepoV1
27
+ VERSION = 'V1'
28
+ REVISION = '20170327'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,687 @@
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 SourcerepoV1
24
+
25
+ # Response message for `TestIamPermissions` method.
26
+ class TestIamPermissionsResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
30
+ # allowed.
31
+ # Corresponds to the JSON property `permissions`
32
+ # @return [Array<String>]
33
+ attr_accessor :permissions
34
+
35
+ def initialize(**args)
36
+ update!(**args)
37
+ end
38
+
39
+ # Update properties of this object
40
+ def update!(**args)
41
+ @permissions = args[:permissions] if args.key?(:permissions)
42
+ end
43
+ end
44
+
45
+ # Response for ListRepos.
46
+ class ListReposResponse
47
+ include Google::Apis::Core::Hashable
48
+
49
+ # The listed repos.
50
+ # Corresponds to the JSON property `repos`
51
+ # @return [Array<Google::Apis::SourcerepoV1::Repo>]
52
+ attr_accessor :repos
53
+
54
+ def initialize(**args)
55
+ update!(**args)
56
+ end
57
+
58
+ # Update properties of this object
59
+ def update!(**args)
60
+ @repos = args[:repos] if args.key?(:repos)
61
+ end
62
+ end
63
+
64
+ # A condition to be met.
65
+ class Condition
66
+ include Google::Apis::Core::Hashable
67
+
68
+ # Trusted attributes supplied by any service that owns resources and uses
69
+ # the IAM system for access control.
70
+ # Corresponds to the JSON property `sys`
71
+ # @return [String]
72
+ attr_accessor :sys
73
+
74
+ # DEPRECATED. Use 'values' instead.
75
+ # Corresponds to the JSON property `value`
76
+ # @return [String]
77
+ attr_accessor :value
78
+
79
+ # Trusted attributes supplied by the IAM system.
80
+ # Corresponds to the JSON property `iam`
81
+ # @return [String]
82
+ attr_accessor :iam
83
+
84
+ # The objects of the condition. This is mutually exclusive with 'value'.
85
+ # Corresponds to the JSON property `values`
86
+ # @return [Array<String>]
87
+ attr_accessor :values
88
+
89
+ # An operator to apply the subject with.
90
+ # Corresponds to the JSON property `op`
91
+ # @return [String]
92
+ attr_accessor :op
93
+
94
+ # Trusted attributes discharged by the service.
95
+ # Corresponds to the JSON property `svc`
96
+ # @return [String]
97
+ attr_accessor :svc
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ @sys = args[:sys] if args.key?(:sys)
106
+ @value = args[:value] if args.key?(:value)
107
+ @iam = args[:iam] if args.key?(:iam)
108
+ @values = args[:values] if args.key?(:values)
109
+ @op = args[:op] if args.key?(:op)
110
+ @svc = args[:svc] if args.key?(:svc)
111
+ end
112
+ end
113
+
114
+ # Options for counters
115
+ class CounterOptions
116
+ include Google::Apis::Core::Hashable
117
+
118
+ # The metric to update.
119
+ # Corresponds to the JSON property `metric`
120
+ # @return [String]
121
+ attr_accessor :metric
122
+
123
+ # The field value to attribute.
124
+ # Corresponds to the JSON property `field`
125
+ # @return [String]
126
+ attr_accessor :field
127
+
128
+ def initialize(**args)
129
+ update!(**args)
130
+ end
131
+
132
+ # Update properties of this object
133
+ def update!(**args)
134
+ @metric = args[:metric] if args.key?(:metric)
135
+ @field = args[:field] if args.key?(:field)
136
+ end
137
+ end
138
+
139
+ # Provides the configuration for logging a type of permissions.
140
+ # Example:
141
+ # `
142
+ # "audit_log_configs": [
143
+ # `
144
+ # "log_type": "DATA_READ",
145
+ # "exempted_members": [
146
+ # "user:foo@gmail.com"
147
+ # ]
148
+ # `,
149
+ # `
150
+ # "log_type": "DATA_WRITE",
151
+ # `
152
+ # ]
153
+ # `
154
+ # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
155
+ # foo@gmail.com from DATA_READ logging.
156
+ class AuditLogConfig
157
+ include Google::Apis::Core::Hashable
158
+
159
+ # Specifies the identities that do not cause logging for this type of
160
+ # permission.
161
+ # Follows the same format of Binding.members.
162
+ # Corresponds to the JSON property `exemptedMembers`
163
+ # @return [Array<String>]
164
+ attr_accessor :exempted_members
165
+
166
+ # The log type that this config enables.
167
+ # Corresponds to the JSON property `logType`
168
+ # @return [String]
169
+ attr_accessor :log_type
170
+
171
+ def initialize(**args)
172
+ update!(**args)
173
+ end
174
+
175
+ # Update properties of this object
176
+ def update!(**args)
177
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
178
+ @log_type = args[:log_type] if args.key?(:log_type)
179
+ end
180
+ end
181
+
182
+ # A rule to be applied in a Policy.
183
+ class Rule
184
+ include Google::Apis::Core::Hashable
185
+
186
+ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
187
+ # that match the LOG action.
188
+ # Corresponds to the JSON property `logConfig`
189
+ # @return [Array<Google::Apis::SourcerepoV1::LogConfig>]
190
+ attr_accessor :log_config
191
+
192
+ # If one or more 'in' clauses are specified, the rule matches if
193
+ # the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.
194
+ # Corresponds to the JSON property `in`
195
+ # @return [Array<String>]
196
+ attr_accessor :in
197
+
198
+ # A permission is a string of form '<service>.<resource type>.<verb>'
199
+ # (e.g., 'storage.buckets.list'). A value of '*' matches all permissions,
200
+ # and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.
201
+ # Corresponds to the JSON property `permissions`
202
+ # @return [Array<String>]
203
+ attr_accessor :permissions
204
+
205
+ # Required
206
+ # Corresponds to the JSON property `action`
207
+ # @return [String]
208
+ attr_accessor :action
209
+
210
+ # If one or more 'not_in' clauses are specified, the rule matches
211
+ # if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
212
+ # The format for in and not_in entries is the same as for members in a
213
+ # Binding (see google/iam/v1/policy.proto).
214
+ # Corresponds to the JSON property `notIn`
215
+ # @return [Array<String>]
216
+ attr_accessor :not_in
217
+
218
+ # Human-readable description of the rule.
219
+ # Corresponds to the JSON property `description`
220
+ # @return [String]
221
+ attr_accessor :description
222
+
223
+ # Additional restrictions that must be met
224
+ # Corresponds to the JSON property `conditions`
225
+ # @return [Array<Google::Apis::SourcerepoV1::Condition>]
226
+ attr_accessor :conditions
227
+
228
+ def initialize(**args)
229
+ update!(**args)
230
+ end
231
+
232
+ # Update properties of this object
233
+ def update!(**args)
234
+ @log_config = args[:log_config] if args.key?(:log_config)
235
+ @in = args[:in] if args.key?(:in)
236
+ @permissions = args[:permissions] if args.key?(:permissions)
237
+ @action = args[:action] if args.key?(:action)
238
+ @not_in = args[:not_in] if args.key?(:not_in)
239
+ @description = args[:description] if args.key?(:description)
240
+ @conditions = args[:conditions] if args.key?(:conditions)
241
+ end
242
+ end
243
+
244
+ # Specifies what kind of log the caller must write
245
+ class LogConfig
246
+ include Google::Apis::Core::Hashable
247
+
248
+ # Write a Data Access (Gin) log
249
+ # Corresponds to the JSON property `dataAccess`
250
+ # @return [Google::Apis::SourcerepoV1::DataAccessOptions]
251
+ attr_accessor :data_access
252
+
253
+ # Write a Cloud Audit log
254
+ # Corresponds to the JSON property `cloudAudit`
255
+ # @return [Google::Apis::SourcerepoV1::CloudAuditOptions]
256
+ attr_accessor :cloud_audit
257
+
258
+ # Options for counters
259
+ # Corresponds to the JSON property `counter`
260
+ # @return [Google::Apis::SourcerepoV1::CounterOptions]
261
+ attr_accessor :counter
262
+
263
+ def initialize(**args)
264
+ update!(**args)
265
+ end
266
+
267
+ # Update properties of this object
268
+ def update!(**args)
269
+ @data_access = args[:data_access] if args.key?(:data_access)
270
+ @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit)
271
+ @counter = args[:counter] if args.key?(:counter)
272
+ end
273
+ end
274
+
275
+ # Request message for `TestIamPermissions` method.
276
+ class TestIamPermissionsRequest
277
+ include Google::Apis::Core::Hashable
278
+
279
+ # The set of permissions to check for the `resource`. Permissions with
280
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
281
+ # information see
282
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
283
+ # Corresponds to the JSON property `permissions`
284
+ # @return [Array<String>]
285
+ attr_accessor :permissions
286
+
287
+ def initialize(**args)
288
+ update!(**args)
289
+ end
290
+
291
+ # Update properties of this object
292
+ def update!(**args)
293
+ @permissions = args[:permissions] if args.key?(:permissions)
294
+ end
295
+ end
296
+
297
+ # Defines an Identity and Access Management (IAM) policy. It is used to
298
+ # specify access control policies for Cloud Platform resources.
299
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
300
+ # `members` to a `role`, where the members can be user accounts, Google groups,
301
+ # Google domains, and service accounts. A `role` is a named list of permissions
302
+ # defined by IAM.
303
+ # **Example**
304
+ # `
305
+ # "bindings": [
306
+ # `
307
+ # "role": "roles/owner",
308
+ # "members": [
309
+ # "user:mike@example.com",
310
+ # "group:admins@example.com",
311
+ # "domain:google.com",
312
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
313
+ # ]
314
+ # `,
315
+ # `
316
+ # "role": "roles/viewer",
317
+ # "members": ["user:sean@example.com"]
318
+ # `
319
+ # ]
320
+ # `
321
+ # For a description of IAM and its features, see the
322
+ # [IAM developer's guide](https://cloud.google.com/iam).
323
+ class Policy
324
+ include Google::Apis::Core::Hashable
325
+
326
+ # `etag` is used for optimistic concurrency control as a way to help
327
+ # prevent simultaneous updates of a policy from overwriting each other.
328
+ # It is strongly suggested that systems make use of the `etag` in the
329
+ # read-modify-write cycle to perform policy updates in order to avoid race
330
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
331
+ # systems are expected to put that etag in the request to `setIamPolicy` to
332
+ # ensure that their change will be applied to the same version of the policy.
333
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
334
+ # policy is overwritten blindly.
335
+ # Corresponds to the JSON property `etag`
336
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
337
+ # @return [String]
338
+ attr_accessor :etag
339
+
340
+ #
341
+ # Corresponds to the JSON property `iamOwned`
342
+ # @return [Boolean]
343
+ attr_accessor :iam_owned
344
+ alias_method :iam_owned?, :iam_owned
345
+
346
+ # If more than one rule is specified, the rules are applied in the following
347
+ # manner:
348
+ # - All matching LOG rules are always applied.
349
+ # - If any DENY/DENY_WITH_LOG rule matches, permission is denied.
350
+ # Logging will be applied if one or more matching rule requires logging.
351
+ # - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is
352
+ # granted.
353
+ # Logging will be applied if one or more matching rule requires logging.
354
+ # - Otherwise, if no rule applies, permission is denied.
355
+ # Corresponds to the JSON property `rules`
356
+ # @return [Array<Google::Apis::SourcerepoV1::Rule>]
357
+ attr_accessor :rules
358
+
359
+ # Version of the `Policy`. The default version is 0.
360
+ # Corresponds to the JSON property `version`
361
+ # @return [Fixnum]
362
+ attr_accessor :version
363
+
364
+ # Specifies cloud audit logging configuration for this policy.
365
+ # Corresponds to the JSON property `auditConfigs`
366
+ # @return [Array<Google::Apis::SourcerepoV1::AuditConfig>]
367
+ attr_accessor :audit_configs
368
+
369
+ # Associates a list of `members` to a `role`.
370
+ # Multiple `bindings` must not be specified for the same `role`.
371
+ # `bindings` with no members will result in an error.
372
+ # Corresponds to the JSON property `bindings`
373
+ # @return [Array<Google::Apis::SourcerepoV1::Binding>]
374
+ attr_accessor :bindings
375
+
376
+ def initialize(**args)
377
+ update!(**args)
378
+ end
379
+
380
+ # Update properties of this object
381
+ def update!(**args)
382
+ @etag = args[:etag] if args.key?(:etag)
383
+ @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
384
+ @rules = args[:rules] if args.key?(:rules)
385
+ @version = args[:version] if args.key?(:version)
386
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
387
+ @bindings = args[:bindings] if args.key?(:bindings)
388
+ end
389
+ end
390
+
391
+ # Write a Data Access (Gin) log
392
+ class DataAccessOptions
393
+ include Google::Apis::Core::Hashable
394
+
395
+ def initialize(**args)
396
+ update!(**args)
397
+ end
398
+
399
+ # Update properties of this object
400
+ def update!(**args)
401
+ end
402
+ end
403
+
404
+ # Specifies the audit configuration for a service.
405
+ # The configuration determines which permission types are logged, and what
406
+ # identities, if any, are exempted from logging.
407
+ # An AuditConifg must have one or more AuditLogConfigs.
408
+ # If there are AuditConfigs for both `allServices` and a specific service,
409
+ # the union of the two AuditConfigs is used for that service: the log_types
410
+ # specified in each AuditConfig are enabled, and the exempted_members in each
411
+ # AuditConfig are exempted.
412
+ # Example Policy with multiple AuditConfigs:
413
+ # `
414
+ # "audit_configs": [
415
+ # `
416
+ # "service": "allServices"
417
+ # "audit_log_configs": [
418
+ # `
419
+ # "log_type": "DATA_READ",
420
+ # "exempted_members": [
421
+ # "user:foo@gmail.com"
422
+ # ]
423
+ # `,
424
+ # `
425
+ # "log_type": "DATA_WRITE",
426
+ # `,
427
+ # `
428
+ # "log_type": "ADMIN_READ",
429
+ # `
430
+ # ]
431
+ # `,
432
+ # `
433
+ # "service": "fooservice@googleapis.com"
434
+ # "audit_log_configs": [
435
+ # `
436
+ # "log_type": "DATA_READ",
437
+ # `,
438
+ # `
439
+ # "log_type": "DATA_WRITE",
440
+ # "exempted_members": [
441
+ # "user:bar@gmail.com"
442
+ # ]
443
+ # `
444
+ # ]
445
+ # `
446
+ # ]
447
+ # `
448
+ # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
449
+ # logging. It also exempts foo@gmail.com from DATA_READ logging, and
450
+ # bar@gmail.com from DATA_WRITE logging.
451
+ class AuditConfig
452
+ include Google::Apis::Core::Hashable
453
+
454
+ # The configuration for logging of each type of permission.
455
+ # Next ID: 4
456
+ # Corresponds to the JSON property `auditLogConfigs`
457
+ # @return [Array<Google::Apis::SourcerepoV1::AuditLogConfig>]
458
+ attr_accessor :audit_log_configs
459
+
460
+ #
461
+ # Corresponds to the JSON property `exemptedMembers`
462
+ # @return [Array<String>]
463
+ attr_accessor :exempted_members
464
+
465
+ # Specifies a service that will be enabled for audit logging.
466
+ # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
467
+ # `allServices` is a special value that covers all services.
468
+ # Corresponds to the JSON property `service`
469
+ # @return [String]
470
+ attr_accessor :service
471
+
472
+ def initialize(**args)
473
+ update!(**args)
474
+ end
475
+
476
+ # Update properties of this object
477
+ def update!(**args)
478
+ @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
479
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
480
+ @service = args[:service] if args.key?(:service)
481
+ end
482
+ end
483
+
484
+ # Request message for `SetIamPolicy` method.
485
+ class SetIamPolicyRequest
486
+ include Google::Apis::Core::Hashable
487
+
488
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
489
+ # the fields in the mask will be modified. If no mask is provided, the
490
+ # following default mask is used:
491
+ # paths: "bindings, etag"
492
+ # This field is only used by Cloud IAM.
493
+ # Corresponds to the JSON property `updateMask`
494
+ # @return [String]
495
+ attr_accessor :update_mask
496
+
497
+ # Defines an Identity and Access Management (IAM) policy. It is used to
498
+ # specify access control policies for Cloud Platform resources.
499
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
500
+ # `members` to a `role`, where the members can be user accounts, Google groups,
501
+ # Google domains, and service accounts. A `role` is a named list of permissions
502
+ # defined by IAM.
503
+ # **Example**
504
+ # `
505
+ # "bindings": [
506
+ # `
507
+ # "role": "roles/owner",
508
+ # "members": [
509
+ # "user:mike@example.com",
510
+ # "group:admins@example.com",
511
+ # "domain:google.com",
512
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
513
+ # ]
514
+ # `,
515
+ # `
516
+ # "role": "roles/viewer",
517
+ # "members": ["user:sean@example.com"]
518
+ # `
519
+ # ]
520
+ # `
521
+ # For a description of IAM and its features, see the
522
+ # [IAM developer's guide](https://cloud.google.com/iam).
523
+ # Corresponds to the JSON property `policy`
524
+ # @return [Google::Apis::SourcerepoV1::Policy]
525
+ attr_accessor :policy
526
+
527
+ def initialize(**args)
528
+ update!(**args)
529
+ end
530
+
531
+ # Update properties of this object
532
+ def update!(**args)
533
+ @update_mask = args[:update_mask] if args.key?(:update_mask)
534
+ @policy = args[:policy] if args.key?(:policy)
535
+ end
536
+ end
537
+
538
+ # Write a Cloud Audit log
539
+ class CloudAuditOptions
540
+ include Google::Apis::Core::Hashable
541
+
542
+ def initialize(**args)
543
+ update!(**args)
544
+ end
545
+
546
+ # Update properties of this object
547
+ def update!(**args)
548
+ end
549
+ end
550
+
551
+ # Associates `members` with a `role`.
552
+ class Binding
553
+ include Google::Apis::Core::Hashable
554
+
555
+ # Specifies the identities requesting access for a Cloud Platform resource.
556
+ # `members` can have the following values:
557
+ # * `allUsers`: A special identifier that represents anyone who is
558
+ # on the internet; with or without a Google account.
559
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone
560
+ # who is authenticated with a Google account or a service account.
561
+ # * `user:`emailid``: An email address that represents a specific Google
562
+ # account. For example, `alice@gmail.com` or `joe@example.com`.
563
+ # * `serviceAccount:`emailid``: An email address that represents a service
564
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
565
+ # * `group:`emailid``: An email address that represents a Google group.
566
+ # For example, `admins@example.com`.
567
+ # * `domain:`domain``: A Google Apps domain name that represents all the
568
+ # users of that domain. For example, `google.com` or `example.com`.
569
+ # Corresponds to the JSON property `members`
570
+ # @return [Array<String>]
571
+ attr_accessor :members
572
+
573
+ # Role that is assigned to `members`.
574
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
575
+ # Required
576
+ # Corresponds to the JSON property `role`
577
+ # @return [String]
578
+ attr_accessor :role
579
+
580
+ def initialize(**args)
581
+ update!(**args)
582
+ end
583
+
584
+ # Update properties of this object
585
+ def update!(**args)
586
+ @members = args[:members] if args.key?(:members)
587
+ @role = args[:role] if args.key?(:role)
588
+ end
589
+ end
590
+
591
+ # A generic empty message that you can re-use to avoid defining duplicated
592
+ # empty messages in your APIs. A typical example is to use it as the request
593
+ # or the response type of an API method. For instance:
594
+ # service Foo `
595
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
596
+ # `
597
+ # The JSON representation for `Empty` is empty JSON object ````.
598
+ class Empty
599
+ include Google::Apis::Core::Hashable
600
+
601
+ def initialize(**args)
602
+ update!(**args)
603
+ end
604
+
605
+ # Update properties of this object
606
+ def update!(**args)
607
+ end
608
+ end
609
+
610
+ # Configuration to automatically mirror a repository from another
611
+ # hosting service, for example GitHub or BitBucket.
612
+ class MirrorConfig
613
+ include Google::Apis::Core::Hashable
614
+
615
+ # URL of the main repository at the other hosting service.
616
+ # Corresponds to the JSON property `url`
617
+ # @return [String]
618
+ attr_accessor :url
619
+
620
+ # ID of the webhook listening to updates to trigger mirroring.
621
+ # Removing this webook from the other hosting service will stop
622
+ # Google Cloud Source Repositories from receiving notifications,
623
+ # and thereby disabling mirroring.
624
+ # Corresponds to the JSON property `webhookId`
625
+ # @return [String]
626
+ attr_accessor :webhook_id
627
+
628
+ # ID of the SSH deploy key at the other hosting service.
629
+ # Removing this key from the other service would deauthorize
630
+ # Google Cloud Source Repositories from mirroring.
631
+ # Corresponds to the JSON property `deployKeyId`
632
+ # @return [String]
633
+ attr_accessor :deploy_key_id
634
+
635
+ def initialize(**args)
636
+ update!(**args)
637
+ end
638
+
639
+ # Update properties of this object
640
+ def update!(**args)
641
+ @url = args[:url] if args.key?(:url)
642
+ @webhook_id = args[:webhook_id] if args.key?(:webhook_id)
643
+ @deploy_key_id = args[:deploy_key_id] if args.key?(:deploy_key_id)
644
+ end
645
+ end
646
+
647
+ # A repository (or repo) is a Git repository storing versioned source content.
648
+ class Repo
649
+ include Google::Apis::Core::Hashable
650
+
651
+ # URL to clone the repository from Google Cloud Source Repositories.
652
+ # Corresponds to the JSON property `url`
653
+ # @return [String]
654
+ attr_accessor :url
655
+
656
+ # The size in bytes of the repo.
657
+ # Corresponds to the JSON property `size`
658
+ # @return [String]
659
+ attr_accessor :size
660
+
661
+ # Resource name of the repository, of the form
662
+ # `projects/<project>/repos/<repo>`.
663
+ # Corresponds to the JSON property `name`
664
+ # @return [String]
665
+ attr_accessor :name
666
+
667
+ # Configuration to automatically mirror a repository from another
668
+ # hosting service, for example GitHub or BitBucket.
669
+ # Corresponds to the JSON property `mirrorConfig`
670
+ # @return [Google::Apis::SourcerepoV1::MirrorConfig]
671
+ attr_accessor :mirror_config
672
+
673
+ def initialize(**args)
674
+ update!(**args)
675
+ end
676
+
677
+ # Update properties of this object
678
+ def update!(**args)
679
+ @url = args[:url] if args.key?(:url)
680
+ @size = args[:size] if args.key?(:size)
681
+ @name = args[:name] if args.key?(:name)
682
+ @mirror_config = args[:mirror_config] if args.key?(:mirror_config)
683
+ end
684
+ end
685
+ end
686
+ end
687
+ end