google-api-client 0.11.1 → 0.11.2

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 (252) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/api_names.yaml +42335 -1
  4. data/generated/google/apis/acceleratedmobilepageurl_v1.rb +3 -3
  5. data/generated/google/apis/acceleratedmobilepageurl_v1/classes.rb +28 -28
  6. data/generated/google/apis/acceleratedmobilepageurl_v1/representations.rb +12 -12
  7. data/generated/google/apis/acceleratedmobilepageurl_v1/service.rb +2 -2
  8. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  9. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +757 -757
  10. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +162 -162
  11. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +48 -48
  12. data/generated/google/apis/admin_directory_v1.rb +1 -1
  13. data/generated/google/apis/admin_directory_v1/classes.rb +75 -7
  14. data/generated/google/apis/admin_directory_v1/representations.rb +20 -0
  15. data/generated/google/apis/admin_directory_v1/service.rb +61 -61
  16. data/generated/google/apis/adsense_v1_4.rb +1 -1
  17. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  18. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  19. data/generated/google/apis/analyticsreporting_v4/classes.rb +403 -403
  20. data/generated/google/apis/analyticsreporting_v4/representations.rb +108 -108
  21. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  22. data/generated/google/apis/androidenterprise_v1/classes.rb +36 -11
  23. data/generated/google/apis/androidenterprise_v1/representations.rb +2 -0
  24. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  25. data/generated/google/apis/appengine_v1.rb +6 -5
  26. data/generated/google/apis/appengine_v1/classes.rb +1429 -1421
  27. data/generated/google/apis/appengine_v1/representations.rb +331 -331
  28. data/generated/google/apis/appengine_v1/service.rb +173 -168
  29. data/generated/google/apis/appstate_v1.rb +1 -1
  30. data/generated/google/apis/bigquery_v2.rb +1 -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/cloudbilling_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  35. data/generated/google/apis/cloudbuild_v1/classes.rb +624 -618
  36. data/generated/google/apis/cloudbuild_v1/representations.rb +126 -125
  37. data/generated/google/apis/cloudbuild_v1/service.rb +87 -87
  38. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  39. data/generated/google/apis/clouddebugger_v2/classes.rb +267 -267
  40. data/generated/google/apis/clouddebugger_v2/representations.rb +83 -83
  41. data/generated/google/apis/clouddebugger_v2/service.rb +137 -137
  42. data/generated/google/apis/clouderrorreporting_v1beta1.rb +1 -1
  43. data/generated/google/apis/clouderrorreporting_v1beta1/classes.rb +131 -131
  44. data/generated/google/apis/clouderrorreporting_v1beta1/representations.rb +28 -28
  45. data/generated/google/apis/clouderrorreporting_v1beta1/service.rb +17 -17
  46. data/generated/google/apis/cloudfunctions_v1.rb +1 -4
  47. data/generated/google/apis/cloudfunctions_v1/classes.rb +7 -47
  48. data/generated/google/apis/cloudfunctions_v1/representations.rb +1 -17
  49. data/generated/google/apis/cloudfunctions_v1/service.rb +0 -30
  50. data/generated/google/apis/cloudkms_v1.rb +1 -1
  51. data/generated/google/apis/cloudkms_v1/classes.rb +625 -625
  52. data/generated/google/apis/cloudkms_v1/representations.rb +132 -132
  53. data/generated/google/apis/cloudkms_v1/service.rb +272 -272
  54. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  55. data/generated/google/apis/cloudresourcemanager_v1.rb +4 -4
  56. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +242 -242
  57. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +43 -43
  58. data/generated/google/apis/cloudresourcemanager_v1/service.rb +505 -505
  59. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  60. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +172 -172
  61. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +39 -39
  62. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +310 -310
  63. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  64. data/generated/google/apis/cloudtrace_v1/classes.rb +96 -69
  65. data/generated/google/apis/cloudtrace_v1/representations.rb +16 -16
  66. data/generated/google/apis/cloudtrace_v1/service.rb +42 -15
  67. data/generated/google/apis/compute_beta.rb +1 -1
  68. data/generated/google/apis/compute_beta/classes.rb +194 -25
  69. data/generated/google/apis/compute_beta/representations.rb +42 -0
  70. data/generated/google/apis/compute_beta/service.rb +196 -100
  71. data/generated/google/apis/compute_v1.rb +1 -1
  72. data/generated/google/apis/compute_v1/classes.rb +69 -18
  73. data/generated/google/apis/compute_v1/representations.rb +16 -0
  74. data/generated/google/apis/compute_v1/service.rb +84 -26
  75. data/generated/google/apis/container_v1.rb +3 -3
  76. data/generated/google/apis/container_v1/classes.rb +794 -586
  77. data/generated/google/apis/container_v1/representations.rb +202 -118
  78. data/generated/google/apis/container_v1/service.rb +396 -167
  79. data/generated/google/apis/content_v2.rb +1 -1
  80. data/generated/google/apis/content_v2/service.rb +4 -4
  81. data/generated/google/apis/dataproc_v1.rb +1 -1
  82. data/generated/google/apis/dataproc_v1/classes.rb +487 -484
  83. data/generated/google/apis/dataproc_v1/representations.rb +83 -83
  84. data/generated/google/apis/dataproc_v1/service.rb +299 -297
  85. data/generated/google/apis/datastore_v1.rb +1 -1
  86. data/generated/google/apis/datastore_v1/classes.rb +703 -703
  87. data/generated/google/apis/datastore_v1/representations.rb +148 -148
  88. data/generated/google/apis/datastore_v1/service.rb +62 -62
  89. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  90. data/generated/google/apis/deploymentmanager_v2/classes.rb +7 -5
  91. data/generated/google/apis/dfareporting_v2_6.rb +1 -1
  92. data/generated/google/apis/dfareporting_v2_6/classes.rb +66 -53
  93. data/generated/google/apis/dfareporting_v2_6/service.rb +30 -30
  94. data/generated/google/apis/dfareporting_v2_7.rb +1 -1
  95. data/generated/google/apis/dfareporting_v2_7/classes.rb +69 -55
  96. data/generated/google/apis/dfareporting_v2_7/service.rb +38 -37
  97. data/generated/google/apis/dfareporting_v2_8.rb +40 -0
  98. data/generated/google/apis/dfareporting_v2_8/classes.rb +12046 -0
  99. data/generated/google/apis/dfareporting_v2_8/representations.rb +4310 -0
  100. data/generated/google/apis/dfareporting_v2_8/service.rb +9135 -0
  101. data/generated/google/apis/dns_v1.rb +1 -1
  102. data/generated/google/apis/dns_v2beta1.rb +1 -1
  103. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  104. data/generated/google/apis/drive_v2.rb +1 -1
  105. data/generated/google/apis/drive_v2/classes.rb +15 -0
  106. data/generated/google/apis/drive_v2/representations.rb +2 -0
  107. data/generated/google/apis/drive_v2/service.rb +2 -1
  108. data/generated/google/apis/drive_v3.rb +1 -1
  109. data/generated/google/apis/drive_v3/classes.rb +16 -0
  110. data/generated/google/apis/drive_v3/representations.rb +2 -0
  111. data/generated/google/apis/drive_v3/service.rb +2 -1
  112. data/generated/google/apis/firebasedynamiclinks_v1.rb +2 -3
  113. data/generated/google/apis/firebasedynamiclinks_v1/classes.rb +159 -159
  114. data/generated/google/apis/firebasedynamiclinks_v1/representations.rb +55 -55
  115. data/generated/google/apis/firebasedynamiclinks_v1/service.rb +5 -6
  116. data/generated/google/apis/firebaserules_v1.rb +1 -1
  117. data/generated/google/apis/firebaserules_v1/classes.rb +73 -73
  118. data/generated/google/apis/firebaserules_v1/representations.rb +25 -25
  119. data/generated/google/apis/firebaserules_v1/service.rb +118 -118
  120. data/generated/google/apis/fusiontables_v2.rb +1 -1
  121. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  122. data/generated/google/apis/games_management_v1management.rb +1 -1
  123. data/generated/google/apis/games_v1.rb +1 -1
  124. data/generated/google/apis/genomics_v1.rb +1 -1
  125. data/generated/google/apis/genomics_v1/classes.rb +920 -920
  126. data/generated/google/apis/genomics_v1/representations.rb +202 -202
  127. data/generated/google/apis/genomics_v1/service.rb +1092 -1092
  128. data/generated/google/apis/gmail_v1.rb +1 -1
  129. data/generated/google/apis/iam_v1.rb +1 -1
  130. data/generated/google/apis/iam_v1/classes.rb +455 -435
  131. data/generated/google/apis/iam_v1/representations.rb +96 -93
  132. data/generated/google/apis/iam_v1/service.rb +157 -157
  133. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  134. data/generated/google/apis/identitytoolkit_v3/classes.rb +12 -0
  135. data/generated/google/apis/identitytoolkit_v3/representations.rb +2 -0
  136. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  137. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  138. data/generated/google/apis/kgsearch_v1/service.rb +9 -9
  139. data/generated/google/apis/language_v1.rb +1 -1
  140. data/generated/google/apis/language_v1/classes.rb +455 -455
  141. data/generated/google/apis/language_v1/representations.rb +102 -102
  142. data/generated/google/apis/language_v1/service.rb +42 -42
  143. data/generated/google/apis/language_v1beta1.rb +1 -1
  144. data/generated/google/apis/language_v1beta1/classes.rb +216 -215
  145. data/generated/google/apis/language_v1beta1/representations.rb +75 -75
  146. data/generated/google/apis/language_v1beta1/service.rb +45 -45
  147. data/generated/google/apis/logging_v2.rb +1 -1
  148. data/generated/google/apis/logging_v2/classes.rb +908 -895
  149. data/generated/google/apis/logging_v2/representations.rb +121 -120
  150. data/generated/google/apis/logging_v2/service.rb +489 -489
  151. data/generated/google/apis/logging_v2beta1.rb +4 -4
  152. data/generated/google/apis/logging_v2beta1/classes.rb +928 -915
  153. data/generated/google/apis/logging_v2beta1/representations.rb +121 -120
  154. data/generated/google/apis/logging_v2beta1/service.rb +249 -249
  155. data/generated/google/apis/manufacturers_v1.rb +1 -1
  156. data/generated/google/apis/manufacturers_v1/classes.rb +294 -294
  157. data/generated/google/apis/manufacturers_v1/representations.rb +84 -84
  158. data/generated/google/apis/manufacturers_v1/service.rb +8 -8
  159. data/generated/google/apis/mirror_v1.rb +1 -1
  160. data/generated/google/apis/ml_v1.rb +1 -1
  161. data/generated/google/apis/ml_v1/classes.rb +1186 -1183
  162. data/generated/google/apis/ml_v1/representations.rb +177 -177
  163. data/generated/google/apis/ml_v1/service.rb +244 -244
  164. data/generated/google/apis/monitoring_v3.rb +1 -1
  165. data/generated/google/apis/monitoring_v3/classes.rb +866 -866
  166. data/generated/google/apis/monitoring_v3/representations.rb +163 -163
  167. data/generated/google/apis/monitoring_v3/service.rb +355 -316
  168. data/generated/google/apis/oauth2_v2.rb +1 -1
  169. data/generated/google/apis/partners_v2.rb +1 -1
  170. data/generated/google/apis/partners_v2/classes.rb +1499 -1499
  171. data/generated/google/apis/partners_v2/representations.rb +368 -368
  172. data/generated/google/apis/partners_v2/service.rb +512 -512
  173. data/generated/google/apis/people_v1.rb +10 -10
  174. data/generated/google/apis/people_v1/classes.rb +544 -423
  175. data/generated/google/apis/people_v1/representations.rb +127 -109
  176. data/generated/google/apis/people_v1/service.rb +8 -8
  177. data/generated/google/apis/plus_domains_v1.rb +1 -1
  178. data/generated/google/apis/plus_v1.rb +1 -1
  179. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  180. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +200 -200
  181. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +41 -41
  182. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +80 -80
  183. data/generated/google/apis/pubsub_v1.rb +1 -1
  184. data/generated/google/apis/pubsub_v1/classes.rb +377 -377
  185. data/generated/google/apis/pubsub_v1/representations.rb +82 -82
  186. data/generated/google/apis/pubsub_v1/service.rb +93 -93
  187. data/generated/google/apis/runtimeconfig_v1.rb +6 -4
  188. data/generated/google/apis/runtimeconfig_v1/classes.rb +22 -22
  189. data/generated/google/apis/runtimeconfig_v1/representations.rb +2 -2
  190. data/generated/google/apis/runtimeconfig_v1/service.rb +57 -55
  191. data/generated/google/apis/script_v1.rb +14 -14
  192. data/generated/google/apis/script_v1/classes.rb +113 -58
  193. data/generated/google/apis/script_v1/representations.rb +43 -14
  194. data/generated/google/apis/script_v1/service.rb +6 -6
  195. data/generated/google/apis/searchconsole_v1.rb +1 -1
  196. data/generated/google/apis/searchconsole_v1/classes.rb +67 -67
  197. data/generated/google/apis/searchconsole_v1/representations.rb +29 -29
  198. data/generated/google/apis/searchconsole_v1/service.rb +6 -6
  199. data/generated/google/apis/servicecontrol_v1.rb +4 -4
  200. data/generated/google/apis/servicecontrol_v1/classes.rb +1125 -1125
  201. data/generated/google/apis/servicecontrol_v1/representations.rb +213 -213
  202. data/generated/google/apis/servicecontrol_v1/service.rb +92 -92
  203. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  204. data/generated/google/apis/servicemanagement_v1/classes.rb +3364 -3622
  205. data/generated/google/apis/servicemanagement_v1/representations.rb +546 -530
  206. data/generated/google/apis/servicemanagement_v1/service.rb +262 -152
  207. data/generated/google/apis/serviceuser_v1.rb +4 -4
  208. data/generated/google/apis/serviceuser_v1/classes.rb +2616 -2874
  209. data/generated/google/apis/serviceuser_v1/representations.rb +294 -278
  210. data/generated/google/apis/serviceuser_v1/service.rb +19 -19
  211. data/generated/google/apis/sheets_v4.rb +4 -1
  212. data/generated/google/apis/sheets_v4/classes.rb +4315 -4313
  213. data/generated/google/apis/sheets_v4/representations.rb +858 -858
  214. data/generated/google/apis/sheets_v4/service.rb +115 -115
  215. data/generated/google/apis/slides_v1.rb +1 -1
  216. data/generated/google/apis/slides_v1/classes.rb +2890 -2890
  217. data/generated/google/apis/slides_v1/representations.rb +638 -638
  218. data/generated/google/apis/slides_v1/service.rb +36 -36
  219. data/generated/google/apis/sourcerepo_v1.rb +1 -1
  220. data/generated/google/apis/sourcerepo_v1/classes.rb +283 -283
  221. data/generated/google/apis/sourcerepo_v1/representations.rb +67 -67
  222. data/generated/google/apis/sourcerepo_v1/service.rb +88 -88
  223. data/generated/google/apis/spanner_v1.rb +1 -1
  224. data/generated/google/apis/spanner_v1/classes.rb +2258 -2233
  225. data/generated/google/apis/spanner_v1/representations.rb +325 -325
  226. data/generated/google/apis/spanner_v1/service.rb +466 -466
  227. data/generated/google/apis/speech_v1beta1.rb +2 -2
  228. data/generated/google/apis/speech_v1beta1/classes.rb +97 -97
  229. data/generated/google/apis/speech_v1beta1/representations.rb +29 -29
  230. data/generated/google/apis/speech_v1beta1/service.rb +49 -49
  231. data/generated/google/apis/storage_v1.rb +1 -1
  232. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  233. data/generated/google/apis/storagetransfer_v1/classes.rb +786 -786
  234. data/generated/google/apis/storagetransfer_v1/representations.rb +133 -133
  235. data/generated/google/apis/storagetransfer_v1/service.rb +30 -30
  236. data/generated/google/apis/surveys_v2.rb +1 -1
  237. data/generated/google/apis/surveys_v2/classes.rb +0 -12
  238. data/generated/google/apis/surveys_v2/representations.rb +0 -4
  239. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  240. data/generated/google/apis/vision_v1.rb +1 -1
  241. data/generated/google/apis/vision_v1/classes.rb +1301 -1302
  242. data/generated/google/apis/vision_v1/representations.rb +183 -183
  243. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  244. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  245. data/generated/google/apis/youtube_partner_v1/classes.rb +10 -0
  246. data/generated/google/apis/youtube_partner_v1/representations.rb +1 -0
  247. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  248. data/generated/google/apis/youtubereporting_v1/classes.rb +64 -64
  249. data/generated/google/apis/youtubereporting_v1/representations.rb +12 -12
  250. data/generated/google/apis/youtubereporting_v1/service.rb +94 -94
  251. data/lib/google/apis/version.rb +1 -1
  252. metadata +7 -3
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/storage/docs/json_api/
26
26
  module StorageV1
27
27
  VERSION = 'V1'
28
- REVISION = '20170322'
28
+ REVISION = '20170329'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/storage/transfer
27
27
  module StoragetransferV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170327'
29
+ REVISION = '20170428'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -22,19 +22,47 @@ module Google
22
22
  module Apis
23
23
  module StoragetransferV1
24
24
 
25
- # The response message for Operations.ListOperations.
26
- class ListOperationsResponse
25
+ # An HttpData specifies a list of objects on the web to be transferred over
26
+ # HTTP. The information of the objects to be transferred is contained in a
27
+ # file referenced by a URL. The first line in the file must be
28
+ # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines
29
+ # specify the information of the list of objects, one object per list entry.
30
+ # Each entry has the following tab-delimited fields:
31
+ # * HTTP URL - The location of the object.
32
+ # * Length - The size of the object in bytes.
33
+ # * MD5 - The base64-encoded MD5 hash of the object.
34
+ # For an example of a valid TSV file, see
35
+ # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)
36
+ # When transferring data based on a URL list, keep the following in mind:
37
+ # * When an object located at `http(s)://hostname:port/<URL-path>` is
38
+ # transferred
39
+ # to a data sink, the name of the object at the data sink is
40
+ # `<hostname>/<URL-path>`.
41
+ # * If the specified size of an object does not match the actual size of the
42
+ # object fetched, the object will not be transferred.
43
+ # * If the specified MD5 does not match the MD5 computed from the transferred
44
+ # bytes, the object transfer will fail. For more information, see
45
+ # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
46
+ # * Ensure that each URL you specify is publicly accessible. For
47
+ # example, in Google Cloud Storage you can
48
+ # [share an object publicly]
49
+ # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
50
+ # a link to it.
51
+ # * Storage Transfer Service obeys `robots.txt` rules and requires the source
52
+ # HTTP server to support `Range` requests and to return a `Content-Length`
53
+ # header in each response.
54
+ # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
55
+ # to transfer.
56
+ class HttpData
27
57
  include Google::Apis::Core::Hashable
28
58
 
29
- # The standard List next-page token.
30
- # Corresponds to the JSON property `nextPageToken`
59
+ # The URL that points to the file that stores the object list entries.
60
+ # This file must allow public access. Currently, only URLs with HTTP and
61
+ # HTTPS schemes are supported.
62
+ # Required.
63
+ # Corresponds to the JSON property `listUrl`
31
64
  # @return [String]
32
- attr_accessor :next_page_token
33
-
34
- # A list of operations that matches the specified filter in the request.
35
- # Corresponds to the JSON property `operations`
36
- # @return [Array<Google::Apis::StoragetransferV1::Operation>]
37
- attr_accessor :operations
65
+ attr_accessor :list_url
38
66
 
39
67
  def initialize(**args)
40
68
  update!(**args)
@@ -42,19 +70,23 @@ module Google
42
70
 
43
71
  # Update properties of this object
44
72
  def update!(**args)
45
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
46
- @operations = args[:operations] if args.key?(:operations)
73
+ @list_url = args[:list_url] if args.key?(:list_url)
47
74
  end
48
75
  end
49
76
 
50
- # Google service account
51
- class GoogleServiceAccount
77
+ # In a GcsData, an object's name is the Google Cloud Storage object's name and
78
+ # its `lastModificationTime` refers to the object's updated time, which changes
79
+ # when the content or the metadata of the object is updated.
80
+ class GcsData
52
81
  include Google::Apis::Core::Hashable
53
82
 
83
+ # Google Cloud Storage bucket name (see
84
+ # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#
85
+ # requirements)).
54
86
  # Required.
55
- # Corresponds to the JSON property `accountEmail`
87
+ # Corresponds to the JSON property `bucketName`
56
88
  # @return [String]
57
- attr_accessor :account_email
89
+ attr_accessor :bucket_name
58
90
 
59
91
  def initialize(**args)
60
92
  update!(**args)
@@ -62,37 +94,23 @@ module Google
62
94
 
63
95
  # Update properties of this object
64
96
  def update!(**args)
65
- @account_email = args[:account_email] if args.key?(:account_email)
97
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
66
98
  end
67
99
  end
68
100
 
69
- # Represents a time of day. The date and time zone are either not significant
70
- # or are specified elsewhere. An API may choose to allow leap seconds. Related
71
- # types are google.type.Date and `google.protobuf.Timestamp`.
72
- class TimeOfDay
101
+ # Response from ListTransferJobs.
102
+ class ListTransferJobsResponse
73
103
  include Google::Apis::Core::Hashable
74
104
 
75
- # Minutes of hour of day. Must be from 0 to 59.
76
- # Corresponds to the JSON property `minutes`
77
- # @return [Fixnum]
78
- attr_accessor :minutes
79
-
80
- # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
81
- # to allow the value "24:00:00" for scenarios like business closing time.
82
- # Corresponds to the JSON property `hours`
83
- # @return [Fixnum]
84
- attr_accessor :hours
85
-
86
- # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
87
- # Corresponds to the JSON property `nanos`
88
- # @return [Fixnum]
89
- attr_accessor :nanos
105
+ # A list of transfer jobs.
106
+ # Corresponds to the JSON property `transferJobs`
107
+ # @return [Array<Google::Apis::StoragetransferV1::TransferJob>]
108
+ attr_accessor :transfer_jobs
90
109
 
91
- # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
92
- # allow the value 60 if it allows leap-seconds.
93
- # Corresponds to the JSON property `seconds`
94
- # @return [Fixnum]
95
- attr_accessor :seconds
110
+ # The list next page token.
111
+ # Corresponds to the JSON property `nextPageToken`
112
+ # @return [String]
113
+ attr_accessor :next_page_token
96
114
 
97
115
  def initialize(**args)
98
116
  update!(**args)
@@ -100,28 +118,36 @@ module Google
100
118
 
101
119
  # Update properties of this object
102
120
  def update!(**args)
103
- @minutes = args[:minutes] if args.key?(:minutes)
104
- @hours = args[:hours] if args.key?(:hours)
105
- @nanos = args[:nanos] if args.key?(:nanos)
106
- @seconds = args[:seconds] if args.key?(:seconds)
121
+ @transfer_jobs = args[:transfer_jobs] if args.key?(:transfer_jobs)
122
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
107
123
  end
108
124
  end
109
125
 
110
- # An entry describing an error that has occurred.
111
- class ErrorLogEntry
126
+ # Request passed to UpdateTransferJob.
127
+ class UpdateTransferJobRequest
112
128
  include Google::Apis::Core::Hashable
113
129
 
114
- # A URL that refers to the target (a data source, a data sink,
115
- # or an object) with which the error is associated.
130
+ # This resource represents the configuration of a transfer job that runs
131
+ # periodically.
132
+ # Corresponds to the JSON property `transferJob`
133
+ # @return [Google::Apis::StoragetransferV1::TransferJob]
134
+ attr_accessor :transfer_job
135
+
136
+ # The ID of the Google Cloud Platform Console project that owns the job.
116
137
  # Required.
117
- # Corresponds to the JSON property `url`
138
+ # Corresponds to the JSON property `projectId`
118
139
  # @return [String]
119
- attr_accessor :url
140
+ attr_accessor :project_id
120
141
 
121
- # A list of messages that carry the error details.
122
- # Corresponds to the JSON property `errorDetails`
123
- # @return [Array<String>]
124
- attr_accessor :error_details
142
+ # The field mask of the fields in `transferJob` that are to be updated in
143
+ # this request. Fields in `transferJob` that can be updated are:
144
+ # `description`, `transferSpec`, and `status`. To update the `transferSpec`
145
+ # of the job, a complete transfer specification has to be provided. An
146
+ # incomplete specification which misses any required fields will be rejected
147
+ # with the error `INVALID_ARGUMENT`.
148
+ # Corresponds to the JSON property `updateTransferJobFieldMask`
149
+ # @return [String]
150
+ attr_accessor :update_transfer_job_field_mask
125
151
 
126
152
  def initialize(**args)
127
153
  update!(**args)
@@ -129,70 +155,68 @@ module Google
129
155
 
130
156
  # Update properties of this object
131
157
  def update!(**args)
132
- @url = args[:url] if args.key?(:url)
133
- @error_details = args[:error_details] if args.key?(:error_details)
158
+ @transfer_job = args[:transfer_job] if args.key?(:transfer_job)
159
+ @project_id = args[:project_id] if args.key?(:project_id)
160
+ @update_transfer_job_field_mask = args[:update_transfer_job_field_mask] if args.key?(:update_transfer_job_field_mask)
134
161
  end
135
162
  end
136
163
 
137
- # This resource represents the configuration of a transfer job that runs
138
- # periodically.
139
- class TransferJob
164
+ # Conditions that determine which objects will be transferred.
165
+ class ObjectConditions
140
166
  include Google::Apis::Core::Hashable
141
167
 
142
- # This field cannot be changed by user requests.
143
- # Corresponds to the JSON property `creationTime`
144
- # @return [String]
145
- attr_accessor :creation_time
146
-
147
- # Configuration for running a transfer.
148
- # Corresponds to the JSON property `transferSpec`
149
- # @return [Google::Apis::StoragetransferV1::TransferSpec]
150
- attr_accessor :transfer_spec
151
-
152
- # Status of the job. This value MUST be specified for
153
- # `CreateTransferJobRequests`.
154
- # NOTE: The effect of the new job status takes place during a subsequent job
155
- # run. For example, if you change the job status from `ENABLED` to
156
- # `DISABLED`, and an operation spawned by the transfer is running, the status
157
- # change would not affect the current operation.
158
- # Corresponds to the JSON property `status`
159
- # @return [String]
160
- attr_accessor :status
161
-
162
- # Transfers can be scheduled to recur or to run just once.
163
- # Corresponds to the JSON property `schedule`
164
- # @return [Google::Apis::StoragetransferV1::Schedule]
165
- attr_accessor :schedule
166
-
167
- # A globally unique name assigned by Storage Transfer Service when the
168
- # job is created. This field should be left empty in requests to create a new
169
- # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
170
- # error.
171
- # Corresponds to the JSON property `name`
172
- # @return [String]
173
- attr_accessor :name
174
-
175
- # This field cannot be changed by user requests.
176
- # Corresponds to the JSON property `deletionTime`
177
- # @return [String]
178
- attr_accessor :deletion_time
168
+ # If `includePrefixes` is specified, objects that satisfy the object
169
+ # conditions must have names that start with one of the `includePrefixes`
170
+ # and that do not start with any of the `excludePrefixes`. If `includePrefixes`
171
+ # is not specified, all objects except those that have names starting with
172
+ # one of the `excludePrefixes` must satisfy the object conditions.
173
+ # Requirements:
174
+ # * Each include-prefix and exclude-prefix can contain any sequence of
175
+ # Unicode characters, of max length 1024 bytes when UTF8-encoded, and
176
+ # must not contain Carriage Return or Line Feed characters. Wildcard
177
+ # matching and regular expression matching are not supported.
178
+ # * Each include-prefix and exclude-prefix must omit the leading slash.
179
+ # For example, to include the `requests.gz` object in a transfer from
180
+ # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
181
+ # prefix as `logs/y=2015/requests.gz`.
182
+ # * None of the include-prefix or the exclude-prefix values can be empty,
183
+ # if specified.
184
+ # * Each include-prefix must include a distinct portion of the object
185
+ # namespace, i.e., no include-prefix may be a prefix of another
186
+ # include-prefix.
187
+ # * Each exclude-prefix must exclude a distinct portion of the object
188
+ # namespace, i.e., no exclude-prefix may be a prefix of another
189
+ # exclude-prefix.
190
+ # * If `includePrefixes` is specified, then each exclude-prefix must start
191
+ # with the value of a path explicitly included by `includePrefixes`.
192
+ # The max size of `includePrefixes` is 1000.
193
+ # Corresponds to the JSON property `includePrefixes`
194
+ # @return [Array<String>]
195
+ attr_accessor :include_prefixes
179
196
 
180
- # The ID of the Google Cloud Platform Console project that owns the job.
181
- # Required.
182
- # Corresponds to the JSON property `projectId`
197
+ # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value
198
+ # and `maxTimeElapsedSinceLastModification` takes the maximum possible
199
+ # value of Duration. Objects that satisfy the object conditions
200
+ # must either have a `lastModificationTime` greater or equal to
201
+ # `NOW` - `maxTimeElapsedSinceLastModification` and less than
202
+ # `NOW` - `minTimeElapsedSinceLastModification`, or not have a
203
+ # `lastModificationTime`.
204
+ # Corresponds to the JSON property `minTimeElapsedSinceLastModification`
183
205
  # @return [String]
184
- attr_accessor :project_id
206
+ attr_accessor :min_time_elapsed_since_last_modification
185
207
 
186
- # This field cannot be changed by user requests.
187
- # Corresponds to the JSON property `lastModificationTime`
188
- # @return [String]
189
- attr_accessor :last_modification_time
208
+ # `excludePrefixes` must follow the requirements described for
209
+ # `includePrefixes`.
210
+ # The max size of `excludePrefixes` is 1000.
211
+ # Corresponds to the JSON property `excludePrefixes`
212
+ # @return [Array<String>]
213
+ attr_accessor :exclude_prefixes
190
214
 
191
- # A description provided by the user for the job. Its max length is 1024
192
- # bytes when Unicode-encoded.
193
- # Corresponds to the JSON property `description`
215
+ # `maxTimeElapsedSinceLastModification` is the complement to
216
+ # `minTimeElapsedSinceLastModification`.
217
+ # Corresponds to the JSON property `maxTimeElapsedSinceLastModification`
194
218
  # @return [String]
195
- attr_accessor :description
219
+ attr_accessor :max_time_elapsed_since_last_modification
196
220
 
197
221
  def initialize(**args)
198
222
  update!(**args)
@@ -200,210 +224,176 @@ module Google
200
224
 
201
225
  # Update properties of this object
202
226
  def update!(**args)
203
- @creation_time = args[:creation_time] if args.key?(:creation_time)
204
- @transfer_spec = args[:transfer_spec] if args.key?(:transfer_spec)
205
- @status = args[:status] if args.key?(:status)
206
- @schedule = args[:schedule] if args.key?(:schedule)
207
- @name = args[:name] if args.key?(:name)
208
- @deletion_time = args[:deletion_time] if args.key?(:deletion_time)
209
- @project_id = args[:project_id] if args.key?(:project_id)
210
- @last_modification_time = args[:last_modification_time] if args.key?(:last_modification_time)
211
- @description = args[:description] if args.key?(:description)
227
+ @include_prefixes = args[:include_prefixes] if args.key?(:include_prefixes)
228
+ @min_time_elapsed_since_last_modification = args[:min_time_elapsed_since_last_modification] if args.key?(:min_time_elapsed_since_last_modification)
229
+ @exclude_prefixes = args[:exclude_prefixes] if args.key?(:exclude_prefixes)
230
+ @max_time_elapsed_since_last_modification = args[:max_time_elapsed_since_last_modification] if args.key?(:max_time_elapsed_since_last_modification)
212
231
  end
213
232
  end
214
233
 
215
- # Transfers can be scheduled to recur or to run just once.
216
- class Schedule
217
- include Google::Apis::Core::Hashable
218
-
219
- # Represents a whole calendar date, e.g. date of birth. The time of day and
220
- # time zone are either specified elsewhere or are not significant. The date
221
- # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
222
- # represent a year and month where the day is not significant, e.g. credit card
223
- # expiration date. The year may be 0 to represent a month and day independent
224
- # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
225
- # and `google.protobuf.Timestamp`.
226
- # Corresponds to the JSON property `scheduleEndDate`
227
- # @return [Google::Apis::StoragetransferV1::Date]
228
- attr_accessor :schedule_end_date
229
-
230
- # Represents a time of day. The date and time zone are either not significant
231
- # or are specified elsewhere. An API may choose to allow leap seconds. Related
232
- # types are google.type.Date and `google.protobuf.Timestamp`.
233
- # Corresponds to the JSON property `startTimeOfDay`
234
- # @return [Google::Apis::StoragetransferV1::TimeOfDay]
235
- attr_accessor :start_time_of_day
236
-
237
- # Represents a whole calendar date, e.g. date of birth. The time of day and
238
- # time zone are either specified elsewhere or are not significant. The date
239
- # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
240
- # represent a year and month where the day is not significant, e.g. credit card
241
- # expiration date. The year may be 0 to represent a month and day independent
242
- # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
243
- # and `google.protobuf.Timestamp`.
244
- # Corresponds to the JSON property `scheduleStartDate`
245
- # @return [Google::Apis::StoragetransferV1::Date]
246
- attr_accessor :schedule_start_date
247
-
248
- def initialize(**args)
249
- update!(**args)
250
- end
251
-
252
- # Update properties of this object
253
- def update!(**args)
254
- @schedule_end_date = args[:schedule_end_date] if args.key?(:schedule_end_date)
255
- @start_time_of_day = args[:start_time_of_day] if args.key?(:start_time_of_day)
256
- @schedule_start_date = args[:schedule_start_date] if args.key?(:schedule_start_date)
257
- end
258
- end
259
-
260
- # Represents a whole calendar date, e.g. date of birth. The time of day and
261
- # time zone are either specified elsewhere or are not significant. The date
262
- # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
263
- # represent a year and month where the day is not significant, e.g. credit card
264
- # expiration date. The year may be 0 to represent a month and day independent
265
- # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
266
- # and `google.protobuf.Timestamp`.
267
- class Date
268
- include Google::Apis::Core::Hashable
269
-
270
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
271
- # a year.
272
- # Corresponds to the JSON property `year`
273
- # @return [Fixnum]
274
- attr_accessor :year
275
-
276
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
277
- # if specifying a year/month where the day is not significant.
278
- # Corresponds to the JSON property `day`
279
- # @return [Fixnum]
280
- attr_accessor :day
281
-
282
- # Month of year. Must be from 1 to 12.
283
- # Corresponds to the JSON property `month`
284
- # @return [Fixnum]
285
- attr_accessor :month
286
-
287
- def initialize(**args)
288
- update!(**args)
289
- end
290
-
291
- # Update properties of this object
292
- def update!(**args)
293
- @year = args[:year] if args.key?(:year)
294
- @day = args[:day] if args.key?(:day)
295
- @month = args[:month] if args.key?(:month)
296
- end
297
- end
298
-
299
- # A description of the execution of a transfer.
300
- class TransferOperation
234
+ # This resource represents a long-running operation that is the result of a
235
+ # network API call.
236
+ class Operation
301
237
  include Google::Apis::Core::Hashable
302
238
 
303
- # Start time of this transfer execution.
304
- # Corresponds to the JSON property `startTime`
305
- # @return [String]
306
- attr_accessor :start_time
307
-
308
- # The name of the transfer job that triggers this transfer operation.
309
- # Corresponds to the JSON property `transferJobName`
310
- # @return [String]
311
- attr_accessor :transfer_job_name
312
-
313
- # Configuration for running a transfer.
314
- # Corresponds to the JSON property `transferSpec`
315
- # @return [Google::Apis::StoragetransferV1::TransferSpec]
316
- attr_accessor :transfer_spec
239
+ # The `Status` type defines a logical error model that is suitable for different
240
+ # programming environments, including REST APIs and RPC APIs. It is used by
241
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
242
+ # - Simple to use and understand for most users
243
+ # - Flexible enough to meet unexpected needs
244
+ # # Overview
245
+ # The `Status` message contains three pieces of data: error code, error message,
246
+ # and error details. The error code should be an enum value of
247
+ # google.rpc.Code, but it may accept additional error codes if needed. The
248
+ # error message should be a developer-facing English message that helps
249
+ # developers *understand* and *resolve* the error. If a localized user-facing
250
+ # error message is needed, put the localized message in the error details or
251
+ # localize it in the client. The optional error details may contain arbitrary
252
+ # information about the error. There is a predefined set of error detail types
253
+ # in the package `google.rpc` which can be used for common error conditions.
254
+ # # Language mapping
255
+ # The `Status` message is the logical representation of the error model, but it
256
+ # is not necessarily the actual wire format. When the `Status` message is
257
+ # exposed in different client libraries and different wire protocols, it can be
258
+ # mapped differently. For example, it will likely be mapped to some exceptions
259
+ # in Java, but more likely mapped to some error codes in C.
260
+ # # Other uses
261
+ # The error model and the `Status` message can be used in a variety of
262
+ # environments, either with or without APIs, to provide a
263
+ # consistent developer experience across different environments.
264
+ # Example uses of this error model include:
265
+ # - Partial errors. If a service needs to return partial errors to the client,
266
+ # it may embed the `Status` in the normal response to indicate the partial
267
+ # errors.
268
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
269
+ # have a `Status` message for error reporting purpose.
270
+ # - Batch operations. If a client uses batch request and batch response, the
271
+ # `Status` message should be used directly inside batch response, one for
272
+ # each error sub-response.
273
+ # - Asynchronous operations. If an API call embeds asynchronous operation
274
+ # results in its response, the status of those operations should be
275
+ # represented directly using the `Status` message.
276
+ # - Logging. If some API errors are stored in logs, the message `Status` could
277
+ # be used directly after any stripping needed for security/privacy reasons.
278
+ # Corresponds to the JSON property `error`
279
+ # @return [Google::Apis::StoragetransferV1::Status]
280
+ attr_accessor :error
317
281
 
318
- # A collection of counters that report the progress of a transfer operation.
319
- # Corresponds to the JSON property `counters`
320
- # @return [Google::Apis::StoragetransferV1::TransferCounters]
321
- attr_accessor :counters
282
+ # Represents the transfer operation object.
283
+ # Corresponds to the JSON property `metadata`
284
+ # @return [Hash<String,Object>]
285
+ attr_accessor :metadata
322
286
 
323
- # Status of the transfer operation.
324
- # Corresponds to the JSON property `status`
325
- # @return [String]
326
- attr_accessor :status
287
+ # If the value is `false`, it means the operation is still in progress.
288
+ # If true, the operation is completed, and either `error` or `response` is
289
+ # available.
290
+ # Corresponds to the JSON property `done`
291
+ # @return [Boolean]
292
+ attr_accessor :done
293
+ alias_method :done?, :done
327
294
 
328
- # Summarizes errors encountered with sample error log entries.
329
- # Corresponds to the JSON property `errorBreakdowns`
330
- # @return [Array<Google::Apis::StoragetransferV1::ErrorSummary>]
331
- attr_accessor :error_breakdowns
295
+ # The normal response of the operation in case of success. If the original
296
+ # method returns no data on success, such as `Delete`, the response is
297
+ # `google.protobuf.Empty`. If the original method is standard
298
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
299
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
300
+ # is the original method name. For example, if the original method name
301
+ # is `TakeSnapshot()`, the inferred response type is
302
+ # `TakeSnapshotResponse`.
303
+ # Corresponds to the JSON property `response`
304
+ # @return [Hash<String,Object>]
305
+ attr_accessor :response
332
306
 
333
- # A globally unique ID assigned by the system.
307
+ # The server-assigned name, which is only unique within the same service that
308
+ # originally returns it. If you use the default HTTP mapping, the `name` should
309
+ # have the format of `transferOperations/some/unique/name`.
334
310
  # Corresponds to the JSON property `name`
335
311
  # @return [String]
336
312
  attr_accessor :name
337
313
 
338
- # The ID of the Google Cloud Platform Console project that owns the operation.
339
- # Required.
340
- # Corresponds to the JSON property `projectId`
341
- # @return [String]
342
- attr_accessor :project_id
343
-
344
- # End time of this transfer execution.
345
- # Corresponds to the JSON property `endTime`
346
- # @return [String]
347
- attr_accessor :end_time
348
-
349
314
  def initialize(**args)
350
315
  update!(**args)
351
316
  end
352
317
 
353
318
  # Update properties of this object
354
319
  def update!(**args)
355
- @start_time = args[:start_time] if args.key?(:start_time)
356
- @transfer_job_name = args[:transfer_job_name] if args.key?(:transfer_job_name)
357
- @transfer_spec = args[:transfer_spec] if args.key?(:transfer_spec)
358
- @counters = args[:counters] if args.key?(:counters)
359
- @status = args[:status] if args.key?(:status)
360
- @error_breakdowns = args[:error_breakdowns] if args.key?(:error_breakdowns)
320
+ @error = args[:error] if args.key?(:error)
321
+ @metadata = args[:metadata] if args.key?(:metadata)
322
+ @done = args[:done] if args.key?(:done)
323
+ @response = args[:response] if args.key?(:response)
361
324
  @name = args[:name] if args.key?(:name)
362
- @project_id = args[:project_id] if args.key?(:project_id)
363
- @end_time = args[:end_time] if args.key?(:end_time)
364
325
  end
365
326
  end
366
327
 
367
- # An AwsS3Data can be a data source, but not a data sink.
368
- # In an AwsS3Data, an object's name is the S3 object's key name.
369
- class AwsS3Data
328
+ # Configuration for running a transfer.
329
+ class TransferSpec
370
330
  include Google::Apis::Core::Hashable
371
331
 
372
- # S3 Bucket name (see
373
- # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-
374
- # bucket-get-location-example.html)).
375
- # Required.
376
- # Corresponds to the JSON property `bucketName`
377
- # @return [String]
378
- attr_accessor :bucket_name
379
-
380
- # AWS access key (see
381
- # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-
382
- # security-credentials.html)).
383
- # Corresponds to the JSON property `awsAccessKey`
384
- # @return [Google::Apis::StoragetransferV1::AwsAccessKey]
385
- attr_accessor :aws_access_key
332
+ # In a GcsData, an object's name is the Google Cloud Storage object's name and
333
+ # its `lastModificationTime` refers to the object's updated time, which changes
334
+ # when the content or the metadata of the object is updated.
335
+ # Corresponds to the JSON property `gcsDataSource`
336
+ # @return [Google::Apis::StoragetransferV1::GcsData]
337
+ attr_accessor :gcs_data_source
386
338
 
387
- def initialize(**args)
388
- update!(**args)
389
- end
339
+ # TransferOptions uses three boolean parameters to define the actions
340
+ # to be performed on objects in a transfer.
341
+ # Corresponds to the JSON property `transferOptions`
342
+ # @return [Google::Apis::StoragetransferV1::TransferOptions]
343
+ attr_accessor :transfer_options
390
344
 
391
- # Update properties of this object
392
- def update!(**args)
393
- @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
394
- @aws_access_key = args[:aws_access_key] if args.key?(:aws_access_key)
395
- end
396
- end
345
+ # An AwsS3Data can be a data source, but not a data sink.
346
+ # In an AwsS3Data, an object's name is the S3 object's key name.
347
+ # Corresponds to the JSON property `awsS3DataSource`
348
+ # @return [Google::Apis::StoragetransferV1::AwsS3Data]
349
+ attr_accessor :aws_s3_data_source
397
350
 
398
- # A generic empty message that you can re-use to avoid defining duplicated
399
- # empty messages in your APIs. A typical example is to use it as the request
400
- # or the response type of an API method. For instance:
401
- # service Foo `
402
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
403
- # `
404
- # The JSON representation for `Empty` is empty JSON object ````.
405
- class Empty
406
- include Google::Apis::Core::Hashable
351
+ # An HttpData specifies a list of objects on the web to be transferred over
352
+ # HTTP. The information of the objects to be transferred is contained in a
353
+ # file referenced by a URL. The first line in the file must be
354
+ # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines
355
+ # specify the information of the list of objects, one object per list entry.
356
+ # Each entry has the following tab-delimited fields:
357
+ # * HTTP URL - The location of the object.
358
+ # * Length - The size of the object in bytes.
359
+ # * MD5 - The base64-encoded MD5 hash of the object.
360
+ # For an example of a valid TSV file, see
361
+ # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)
362
+ # When transferring data based on a URL list, keep the following in mind:
363
+ # * When an object located at `http(s)://hostname:port/<URL-path>` is
364
+ # transferred
365
+ # to a data sink, the name of the object at the data sink is
366
+ # `<hostname>/<URL-path>`.
367
+ # * If the specified size of an object does not match the actual size of the
368
+ # object fetched, the object will not be transferred.
369
+ # * If the specified MD5 does not match the MD5 computed from the transferred
370
+ # bytes, the object transfer will fail. For more information, see
371
+ # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
372
+ # * Ensure that each URL you specify is publicly accessible. For
373
+ # example, in Google Cloud Storage you can
374
+ # [share an object publicly]
375
+ # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
376
+ # a link to it.
377
+ # * Storage Transfer Service obeys `robots.txt` rules and requires the source
378
+ # HTTP server to support `Range` requests and to return a `Content-Length`
379
+ # header in each response.
380
+ # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
381
+ # to transfer.
382
+ # Corresponds to the JSON property `httpDataSource`
383
+ # @return [Google::Apis::StoragetransferV1::HttpData]
384
+ attr_accessor :http_data_source
385
+
386
+ # Conditions that determine which objects will be transferred.
387
+ # Corresponds to the JSON property `objectConditions`
388
+ # @return [Google::Apis::StoragetransferV1::ObjectConditions]
389
+ attr_accessor :object_conditions
390
+
391
+ # In a GcsData, an object's name is the Google Cloud Storage object's name and
392
+ # its `lastModificationTime` refers to the object's updated time, which changes
393
+ # when the content or the metadata of the object is updated.
394
+ # Corresponds to the JSON property `gcsDataSink`
395
+ # @return [Google::Apis::StoragetransferV1::GcsData]
396
+ attr_accessor :gcs_data_sink
407
397
 
408
398
  def initialize(**args)
409
399
  update!(**args)
@@ -411,26 +401,38 @@ module Google
411
401
 
412
402
  # Update properties of this object
413
403
  def update!(**args)
404
+ @gcs_data_source = args[:gcs_data_source] if args.key?(:gcs_data_source)
405
+ @transfer_options = args[:transfer_options] if args.key?(:transfer_options)
406
+ @aws_s3_data_source = args[:aws_s3_data_source] if args.key?(:aws_s3_data_source)
407
+ @http_data_source = args[:http_data_source] if args.key?(:http_data_source)
408
+ @object_conditions = args[:object_conditions] if args.key?(:object_conditions)
409
+ @gcs_data_sink = args[:gcs_data_sink] if args.key?(:gcs_data_sink)
414
410
  end
415
411
  end
416
412
 
417
- # AWS access key (see
418
- # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-
419
- # security-credentials.html)).
420
- class AwsAccessKey
413
+ # TransferOptions uses three boolean parameters to define the actions
414
+ # to be performed on objects in a transfer.
415
+ class TransferOptions
421
416
  include Google::Apis::Core::Hashable
422
417
 
423
- # AWS access key ID.
424
- # Required.
425
- # Corresponds to the JSON property `accessKeyId`
426
- # @return [String]
427
- attr_accessor :access_key_id
418
+ # Whether objects that exist only in the sink should be deleted.
419
+ # Corresponds to the JSON property `deleteObjectsUniqueInSink`
420
+ # @return [Boolean]
421
+ attr_accessor :delete_objects_unique_in_sink
422
+ alias_method :delete_objects_unique_in_sink?, :delete_objects_unique_in_sink
428
423
 
429
- # AWS secret access key. This field is not returned in RPC responses.
430
- # Required.
431
- # Corresponds to the JSON property `secretAccessKey`
432
- # @return [String]
433
- attr_accessor :secret_access_key
424
+ # Whether overwriting objects that already exist in the sink is allowed.
425
+ # Corresponds to the JSON property `overwriteObjectsAlreadyExistingInSink`
426
+ # @return [Boolean]
427
+ attr_accessor :overwrite_objects_already_existing_in_sink
428
+ alias_method :overwrite_objects_already_existing_in_sink?, :overwrite_objects_already_existing_in_sink
429
+
430
+ # Whether objects should be deleted from the source after they are
431
+ # transferred to the sink.
432
+ # Corresponds to the JSON property `deleteObjectsFromSourceAfterTransfer`
433
+ # @return [Boolean]
434
+ attr_accessor :delete_objects_from_source_after_transfer
435
+ alias_method :delete_objects_from_source_after_transfer?, :delete_objects_from_source_after_transfer
434
436
 
435
437
  def initialize(**args)
436
438
  update!(**args)
@@ -438,159 +440,110 @@ module Google
438
440
 
439
441
  # Update properties of this object
440
442
  def update!(**args)
441
- @access_key_id = args[:access_key_id] if args.key?(:access_key_id)
442
- @secret_access_key = args[:secret_access_key] if args.key?(:secret_access_key)
443
+ @delete_objects_unique_in_sink = args[:delete_objects_unique_in_sink] if args.key?(:delete_objects_unique_in_sink)
444
+ @overwrite_objects_already_existing_in_sink = args[:overwrite_objects_already_existing_in_sink] if args.key?(:overwrite_objects_already_existing_in_sink)
445
+ @delete_objects_from_source_after_transfer = args[:delete_objects_from_source_after_transfer] if args.key?(:delete_objects_from_source_after_transfer)
443
446
  end
444
447
  end
445
448
 
446
- # Request passed to PauseTransferOperation.
447
- class PauseTransferOperationRequest
449
+ # The `Status` type defines a logical error model that is suitable for different
450
+ # programming environments, including REST APIs and RPC APIs. It is used by
451
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
452
+ # - Simple to use and understand for most users
453
+ # - Flexible enough to meet unexpected needs
454
+ # # Overview
455
+ # The `Status` message contains three pieces of data: error code, error message,
456
+ # and error details. The error code should be an enum value of
457
+ # google.rpc.Code, but it may accept additional error codes if needed. The
458
+ # error message should be a developer-facing English message that helps
459
+ # developers *understand* and *resolve* the error. If a localized user-facing
460
+ # error message is needed, put the localized message in the error details or
461
+ # localize it in the client. The optional error details may contain arbitrary
462
+ # information about the error. There is a predefined set of error detail types
463
+ # in the package `google.rpc` which can be used for common error conditions.
464
+ # # Language mapping
465
+ # The `Status` message is the logical representation of the error model, but it
466
+ # is not necessarily the actual wire format. When the `Status` message is
467
+ # exposed in different client libraries and different wire protocols, it can be
468
+ # mapped differently. For example, it will likely be mapped to some exceptions
469
+ # in Java, but more likely mapped to some error codes in C.
470
+ # # Other uses
471
+ # The error model and the `Status` message can be used in a variety of
472
+ # environments, either with or without APIs, to provide a
473
+ # consistent developer experience across different environments.
474
+ # Example uses of this error model include:
475
+ # - Partial errors. If a service needs to return partial errors to the client,
476
+ # it may embed the `Status` in the normal response to indicate the partial
477
+ # errors.
478
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
479
+ # have a `Status` message for error reporting purpose.
480
+ # - Batch operations. If a client uses batch request and batch response, the
481
+ # `Status` message should be used directly inside batch response, one for
482
+ # each error sub-response.
483
+ # - Asynchronous operations. If an API call embeds asynchronous operation
484
+ # results in its response, the status of those operations should be
485
+ # represented directly using the `Status` message.
486
+ # - Logging. If some API errors are stored in logs, the message `Status` could
487
+ # be used directly after any stripping needed for security/privacy reasons.
488
+ class Status
448
489
  include Google::Apis::Core::Hashable
449
490
 
491
+ # The status code, which should be an enum value of google.rpc.Code.
492
+ # Corresponds to the JSON property `code`
493
+ # @return [Fixnum]
494
+ attr_accessor :code
495
+
496
+ # A developer-facing error message, which should be in English. Any
497
+ # user-facing error message should be localized and sent in the
498
+ # google.rpc.Status.details field, or localized by the client.
499
+ # Corresponds to the JSON property `message`
500
+ # @return [String]
501
+ attr_accessor :message
502
+
503
+ # A list of messages that carry the error details. There will be a
504
+ # common set of message types for APIs to use.
505
+ # Corresponds to the JSON property `details`
506
+ # @return [Array<Hash<String,Object>>]
507
+ attr_accessor :details
508
+
450
509
  def initialize(**args)
451
510
  update!(**args)
452
511
  end
453
512
 
454
513
  # Update properties of this object
455
514
  def update!(**args)
515
+ @code = args[:code] if args.key?(:code)
516
+ @message = args[:message] if args.key?(:message)
517
+ @details = args[:details] if args.key?(:details)
456
518
  end
457
519
  end
458
520
 
459
- # A collection of counters that report the progress of a transfer operation.
460
- class TransferCounters
521
+ # Request passed to ResumeTransferOperation.
522
+ class ResumeTransferOperationRequest
461
523
  include Google::Apis::Core::Hashable
462
524
 
463
- # Objects in the data source that are not transferred because they already
464
- # exist in the data sink.
465
- # Corresponds to the JSON property `objectsFromSourceSkippedBySync`
466
- # @return [Fixnum]
467
- attr_accessor :objects_from_source_skipped_by_sync
468
-
469
- # Bytes found in the data source that are scheduled to be transferred,
470
- # which will be copied, excluded based on conditions, or skipped due to
471
- # failures.
472
- # Corresponds to the JSON property `bytesFoundFromSource`
473
- # @return [Fixnum]
474
- attr_accessor :bytes_found_from_source
475
-
476
- # Objects found in the data source that are scheduled to be transferred,
477
- # which will be copied, excluded based on conditions, or skipped due to
478
- # failures.
479
- # Corresponds to the JSON property `objectsFoundFromSource`
480
- # @return [Fixnum]
481
- attr_accessor :objects_found_from_source
482
-
483
- # Bytes that are deleted from the data source.
484
- # Corresponds to the JSON property `bytesDeletedFromSource`
485
- # @return [Fixnum]
486
- attr_accessor :bytes_deleted_from_source
487
-
488
- # Objects that failed to be deleted from the data sink.
489
- # Corresponds to the JSON property `objectsFailedToDeleteFromSink`
490
- # @return [Fixnum]
491
- attr_accessor :objects_failed_to_delete_from_sink
492
-
493
- # Objects found only in the data sink that are scheduled to be deleted.
494
- # Corresponds to the JSON property `objectsFoundOnlyFromSink`
495
- # @return [Fixnum]
496
- attr_accessor :objects_found_only_from_sink
497
-
498
- # Objects that are deleted from the data sink.
499
- # Corresponds to the JSON property `objectsDeletedFromSink`
500
- # @return [Fixnum]
501
- attr_accessor :objects_deleted_from_sink
502
-
503
- # Bytes in the data source that are not transferred because they already
504
- # exist in the data sink.
505
- # Corresponds to the JSON property `bytesFromSourceSkippedBySync`
506
- # @return [Fixnum]
507
- attr_accessor :bytes_from_source_skipped_by_sync
508
-
509
- # Bytes that are deleted from the data sink.
510
- # Corresponds to the JSON property `bytesDeletedFromSink`
511
- # @return [Fixnum]
512
- attr_accessor :bytes_deleted_from_sink
513
-
514
- # Bytes that failed to be deleted from the data sink.
515
- # Corresponds to the JSON property `bytesFailedToDeleteFromSink`
516
- # @return [Fixnum]
517
- attr_accessor :bytes_failed_to_delete_from_sink
518
-
519
- # Bytes in the data source that failed during the transfer.
520
- # Corresponds to the JSON property `bytesFromSourceFailed`
521
- # @return [Fixnum]
522
- attr_accessor :bytes_from_source_failed
523
-
524
- # Objects in the data source that failed during the transfer.
525
- # Corresponds to the JSON property `objectsFromSourceFailed`
526
- # @return [Fixnum]
527
- attr_accessor :objects_from_source_failed
528
-
529
- # Objects that are copied to the data sink.
530
- # Corresponds to the JSON property `objectsCopiedToSink`
531
- # @return [Fixnum]
532
- attr_accessor :objects_copied_to_sink
533
-
534
- # Bytes found only in the data sink that are scheduled to be deleted.
535
- # Corresponds to the JSON property `bytesFoundOnlyFromSink`
536
- # @return [Fixnum]
537
- attr_accessor :bytes_found_only_from_sink
538
-
539
- # Objects that are deleted from the data source.
540
- # Corresponds to the JSON property `objectsDeletedFromSource`
541
- # @return [Fixnum]
542
- attr_accessor :objects_deleted_from_source
543
-
544
- # Bytes that are copied to the data sink.
545
- # Corresponds to the JSON property `bytesCopiedToSink`
546
- # @return [Fixnum]
547
- attr_accessor :bytes_copied_to_sink
548
-
549
525
  def initialize(**args)
550
526
  update!(**args)
551
527
  end
552
528
 
553
529
  # Update properties of this object
554
530
  def update!(**args)
555
- @objects_from_source_skipped_by_sync = args[:objects_from_source_skipped_by_sync] if args.key?(:objects_from_source_skipped_by_sync)
556
- @bytes_found_from_source = args[:bytes_found_from_source] if args.key?(:bytes_found_from_source)
557
- @objects_found_from_source = args[:objects_found_from_source] if args.key?(:objects_found_from_source)
558
- @bytes_deleted_from_source = args[:bytes_deleted_from_source] if args.key?(:bytes_deleted_from_source)
559
- @objects_failed_to_delete_from_sink = args[:objects_failed_to_delete_from_sink] if args.key?(:objects_failed_to_delete_from_sink)
560
- @objects_found_only_from_sink = args[:objects_found_only_from_sink] if args.key?(:objects_found_only_from_sink)
561
- @objects_deleted_from_sink = args[:objects_deleted_from_sink] if args.key?(:objects_deleted_from_sink)
562
- @bytes_from_source_skipped_by_sync = args[:bytes_from_source_skipped_by_sync] if args.key?(:bytes_from_source_skipped_by_sync)
563
- @bytes_deleted_from_sink = args[:bytes_deleted_from_sink] if args.key?(:bytes_deleted_from_sink)
564
- @bytes_failed_to_delete_from_sink = args[:bytes_failed_to_delete_from_sink] if args.key?(:bytes_failed_to_delete_from_sink)
565
- @bytes_from_source_failed = args[:bytes_from_source_failed] if args.key?(:bytes_from_source_failed)
566
- @objects_from_source_failed = args[:objects_from_source_failed] if args.key?(:objects_from_source_failed)
567
- @objects_copied_to_sink = args[:objects_copied_to_sink] if args.key?(:objects_copied_to_sink)
568
- @bytes_found_only_from_sink = args[:bytes_found_only_from_sink] if args.key?(:bytes_found_only_from_sink)
569
- @objects_deleted_from_source = args[:objects_deleted_from_source] if args.key?(:objects_deleted_from_source)
570
- @bytes_copied_to_sink = args[:bytes_copied_to_sink] if args.key?(:bytes_copied_to_sink)
571
531
  end
572
532
  end
573
533
 
574
- # A summary of errors by error code, plus a count and sample error log
575
- # entries.
576
- class ErrorSummary
534
+ # The response message for Operations.ListOperations.
535
+ class ListOperationsResponse
577
536
  include Google::Apis::Core::Hashable
578
537
 
579
- # Required.
580
- # Corresponds to the JSON property `errorCode`
581
- # @return [String]
582
- attr_accessor :error_code
583
-
584
- # Count of this type of error.
585
- # Required.
586
- # Corresponds to the JSON property `errorCount`
587
- # @return [Fixnum]
588
- attr_accessor :error_count
538
+ # A list of operations that matches the specified filter in the request.
539
+ # Corresponds to the JSON property `operations`
540
+ # @return [Array<Google::Apis::StoragetransferV1::Operation>]
541
+ attr_accessor :operations
589
542
 
590
- # Error samples.
591
- # Corresponds to the JSON property `errorLogEntries`
592
- # @return [Array<Google::Apis::StoragetransferV1::ErrorLogEntry>]
593
- attr_accessor :error_log_entries
543
+ # The standard List next-page token.
544
+ # Corresponds to the JSON property `nextPageToken`
545
+ # @return [String]
546
+ attr_accessor :next_page_token
594
547
 
595
548
  def initialize(**args)
596
549
  update!(**args)
@@ -598,53 +551,19 @@ module Google
598
551
 
599
552
  # Update properties of this object
600
553
  def update!(**args)
601
- @error_code = args[:error_code] if args.key?(:error_code)
602
- @error_count = args[:error_count] if args.key?(:error_count)
603
- @error_log_entries = args[:error_log_entries] if args.key?(:error_log_entries)
554
+ @operations = args[:operations] if args.key?(:operations)
555
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
604
556
  end
605
557
  end
606
558
 
607
- # An HttpData specifies a list of objects on the web to be transferred over
608
- # HTTP. The information of the objects to be transferred is contained in a
609
- # file referenced by a URL. The first line in the file must be
610
- # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines
611
- # specify the information of the list of objects, one object per list entry.
612
- # Each entry has the following tab-delimited fields:
613
- # * HTTP URL - The location of the object.
614
- # * Length - The size of the object in bytes.
615
- # * MD5 - The base64-encoded MD5 hash of the object.
616
- # For an example of a valid TSV file, see
617
- # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)
618
- # When transferring data based on a URL list, keep the following in mind:
619
- # * When an object located at `http(s)://hostname:port/<URL-path>` is
620
- # transferred
621
- # to a data sink, the name of the object at the data sink is
622
- # `<hostname>/<URL-path>`.
623
- # * If the specified size of an object does not match the actual size of the
624
- # object fetched, the object will not be transferred.
625
- # * If the specified MD5 does not match the MD5 computed from the transferred
626
- # bytes, the object transfer will fail. For more information, see
627
- # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
628
- # * Ensure that each URL you specify is publicly accessible. For
629
- # example, in Google Cloud Storage you can
630
- # [share an object publicly]
631
- # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
632
- # a link to it.
633
- # * Storage Transfer Service obeys `robots.txt` rules and requires the source
634
- # HTTP server to support `Range` requests and to return a `Content-Length`
635
- # header in each response.
636
- # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
637
- # to transfer.
638
- class HttpData
559
+ # Google service account
560
+ class GoogleServiceAccount
639
561
  include Google::Apis::Core::Hashable
640
562
 
641
- # The URL that points to the file that stores the object list entries.
642
- # This file must allow public access. Currently, only URLs with HTTP and
643
- # HTTPS schemes are supported.
644
563
  # Required.
645
- # Corresponds to the JSON property `listUrl`
564
+ # Corresponds to the JSON property `accountEmail`
646
565
  # @return [String]
647
- attr_accessor :list_url
566
+ attr_accessor :account_email
648
567
 
649
568
  def initialize(**args)
650
569
  update!(**args)
@@ -652,23 +571,37 @@ module Google
652
571
 
653
572
  # Update properties of this object
654
573
  def update!(**args)
655
- @list_url = args[:list_url] if args.key?(:list_url)
574
+ @account_email = args[:account_email] if args.key?(:account_email)
656
575
  end
657
576
  end
658
577
 
659
- # In a GcsData, an object's name is the Google Cloud Storage object's name and
660
- # its `lastModificationTime` refers to the object's updated time, which changes
661
- # when the content or the metadata of the object is updated.
662
- class GcsData
578
+ # Represents a time of day. The date and time zone are either not significant
579
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
580
+ # types are google.type.Date and `google.protobuf.Timestamp`.
581
+ class TimeOfDay
663
582
  include Google::Apis::Core::Hashable
664
583
 
665
- # Google Cloud Storage bucket name (see
666
- # [Bucket Name Requirements](https://cloud.google.com/storage/docs/bucket-naming#
667
- # requirements)).
668
- # Required.
669
- # Corresponds to the JSON property `bucketName`
670
- # @return [String]
671
- attr_accessor :bucket_name
584
+ # Minutes of hour of day. Must be from 0 to 59.
585
+ # Corresponds to the JSON property `minutes`
586
+ # @return [Fixnum]
587
+ attr_accessor :minutes
588
+
589
+ # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
590
+ # to allow the value "24:00:00" for scenarios like business closing time.
591
+ # Corresponds to the JSON property `hours`
592
+ # @return [Fixnum]
593
+ attr_accessor :hours
594
+
595
+ # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
596
+ # Corresponds to the JSON property `nanos`
597
+ # @return [Fixnum]
598
+ attr_accessor :nanos
599
+
600
+ # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
601
+ # allow the value 60 if it allows leap-seconds.
602
+ # Corresponds to the JSON property `seconds`
603
+ # @return [Fixnum]
604
+ attr_accessor :seconds
672
605
 
673
606
  def initialize(**args)
674
607
  update!(**args)
@@ -676,23 +609,28 @@ module Google
676
609
 
677
610
  # Update properties of this object
678
611
  def update!(**args)
679
- @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
612
+ @minutes = args[:minutes] if args.key?(:minutes)
613
+ @hours = args[:hours] if args.key?(:hours)
614
+ @nanos = args[:nanos] if args.key?(:nanos)
615
+ @seconds = args[:seconds] if args.key?(:seconds)
680
616
  end
681
617
  end
682
618
 
683
- # Response from ListTransferJobs.
684
- class ListTransferJobsResponse
619
+ # An entry describing an error that has occurred.
620
+ class ErrorLogEntry
685
621
  include Google::Apis::Core::Hashable
686
622
 
687
- # The list next page token.
688
- # Corresponds to the JSON property `nextPageToken`
623
+ # A URL that refers to the target (a data source, a data sink,
624
+ # or an object) with which the error is associated.
625
+ # Required.
626
+ # Corresponds to the JSON property `url`
689
627
  # @return [String]
690
- attr_accessor :next_page_token
628
+ attr_accessor :url
691
629
 
692
- # A list of transfer jobs.
693
- # Corresponds to the JSON property `transferJobs`
694
- # @return [Array<Google::Apis::StoragetransferV1::TransferJob>]
695
- attr_accessor :transfer_jobs
630
+ # A list of messages that carry the error details.
631
+ # Corresponds to the JSON property `errorDetails`
632
+ # @return [Array<String>]
633
+ attr_accessor :error_details
696
634
 
697
635
  def initialize(**args)
698
636
  update!(**args)
@@ -700,20 +638,48 @@ module Google
700
638
 
701
639
  # Update properties of this object
702
640
  def update!(**args)
703
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
704
- @transfer_jobs = args[:transfer_jobs] if args.key?(:transfer_jobs)
641
+ @url = args[:url] if args.key?(:url)
642
+ @error_details = args[:error_details] if args.key?(:error_details)
705
643
  end
706
644
  end
707
645
 
708
- # Request passed to UpdateTransferJob.
709
- class UpdateTransferJobRequest
646
+ # This resource represents the configuration of a transfer job that runs
647
+ # periodically.
648
+ class TransferJob
710
649
  include Google::Apis::Core::Hashable
711
650
 
712
- # This resource represents the configuration of a transfer job that runs
713
- # periodically.
714
- # Corresponds to the JSON property `transferJob`
715
- # @return [Google::Apis::StoragetransferV1::TransferJob]
716
- attr_accessor :transfer_job
651
+ # Status of the job. This value MUST be specified for
652
+ # `CreateTransferJobRequests`.
653
+ # NOTE: The effect of the new job status takes place during a subsequent job
654
+ # run. For example, if you change the job status from `ENABLED` to
655
+ # `DISABLED`, and an operation spawned by the transfer is running, the status
656
+ # change would not affect the current operation.
657
+ # Corresponds to the JSON property `status`
658
+ # @return [String]
659
+ attr_accessor :status
660
+
661
+ # Transfers can be scheduled to recur or to run just once.
662
+ # Corresponds to the JSON property `schedule`
663
+ # @return [Google::Apis::StoragetransferV1::Schedule]
664
+ attr_accessor :schedule
665
+
666
+ # This field cannot be changed by user requests.
667
+ # Corresponds to the JSON property `deletionTime`
668
+ # @return [String]
669
+ attr_accessor :deletion_time
670
+
671
+ # A globally unique name assigned by Storage Transfer Service when the
672
+ # job is created. This field should be left empty in requests to create a new
673
+ # transfer job; otherwise, the requests result in an `INVALID_ARGUMENT`
674
+ # error.
675
+ # Corresponds to the JSON property `name`
676
+ # @return [String]
677
+ attr_accessor :name
678
+
679
+ # This field cannot be changed by user requests.
680
+ # Corresponds to the JSON property `lastModificationTime`
681
+ # @return [String]
682
+ attr_accessor :last_modification_time
717
683
 
718
684
  # The ID of the Google Cloud Platform Console project that owns the job.
719
685
  # Required.
@@ -721,15 +687,21 @@ module Google
721
687
  # @return [String]
722
688
  attr_accessor :project_id
723
689
 
724
- # The field mask of the fields in `transferJob` that are to be updated in
725
- # this request. Fields in `transferJob` that can be updated are:
726
- # `description`, `transferSpec`, and `status`. To update the `transferSpec`
727
- # of the job, a complete transfer specification has to be provided. An
728
- # incomplete specification which misses any required fields will be rejected
729
- # with the error `INVALID_ARGUMENT`.
730
- # Corresponds to the JSON property `updateTransferJobFieldMask`
690
+ # A description provided by the user for the job. Its max length is 1024
691
+ # bytes when Unicode-encoded.
692
+ # Corresponds to the JSON property `description`
731
693
  # @return [String]
732
- attr_accessor :update_transfer_job_field_mask
694
+ attr_accessor :description
695
+
696
+ # Configuration for running a transfer.
697
+ # Corresponds to the JSON property `transferSpec`
698
+ # @return [Google::Apis::StoragetransferV1::TransferSpec]
699
+ attr_accessor :transfer_spec
700
+
701
+ # This field cannot be changed by user requests.
702
+ # Corresponds to the JSON property `creationTime`
703
+ # @return [String]
704
+ attr_accessor :creation_time
733
705
 
734
706
  def initialize(**args)
735
707
  update!(**args)
@@ -737,68 +709,89 @@ module Google
737
709
 
738
710
  # Update properties of this object
739
711
  def update!(**args)
740
- @transfer_job = args[:transfer_job] if args.key?(:transfer_job)
712
+ @status = args[:status] if args.key?(:status)
713
+ @schedule = args[:schedule] if args.key?(:schedule)
714
+ @deletion_time = args[:deletion_time] if args.key?(:deletion_time)
715
+ @name = args[:name] if args.key?(:name)
716
+ @last_modification_time = args[:last_modification_time] if args.key?(:last_modification_time)
741
717
  @project_id = args[:project_id] if args.key?(:project_id)
742
- @update_transfer_job_field_mask = args[:update_transfer_job_field_mask] if args.key?(:update_transfer_job_field_mask)
718
+ @description = args[:description] if args.key?(:description)
719
+ @transfer_spec = args[:transfer_spec] if args.key?(:transfer_spec)
720
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
743
721
  end
744
722
  end
745
723
 
746
- # Conditions that determine which objects will be transferred.
747
- class ObjectConditions
724
+ # Transfers can be scheduled to recur or to run just once.
725
+ class Schedule
748
726
  include Google::Apis::Core::Hashable
749
727
 
750
- # If `includePrefixes` is specified, objects that satisfy the object
751
- # conditions must have names that start with one of the `includePrefixes`
752
- # and that do not start with any of the `excludePrefixes`. If `includePrefixes`
753
- # is not specified, all objects except those that have names starting with
754
- # one of the `excludePrefixes` must satisfy the object conditions.
755
- # Requirements:
756
- # * Each include-prefix and exclude-prefix can contain any sequence of
757
- # Unicode characters, of max length 1024 bytes when UTF8-encoded, and
758
- # must not contain Carriage Return or Line Feed characters. Wildcard
759
- # matching and regular expression matching are not supported.
760
- # * Each include-prefix and exclude-prefix must omit the leading slash.
761
- # For example, to include the `requests.gz` object in a transfer from
762
- # `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include
763
- # prefix as `logs/y=2015/requests.gz`.
764
- # * None of the include-prefix or the exclude-prefix values can be empty,
765
- # if specified.
766
- # * Each include-prefix must include a distinct portion of the object
767
- # namespace, i.e., no include-prefix may be a prefix of another
768
- # include-prefix.
769
- # * Each exclude-prefix must exclude a distinct portion of the object
770
- # namespace, i.e., no exclude-prefix may be a prefix of another
771
- # exclude-prefix.
772
- # * If `includePrefixes` is specified, then each exclude-prefix must start
773
- # with the value of a path explicitly included by `includePrefixes`.
774
- # The max size of `includePrefixes` is 1000.
775
- # Corresponds to the JSON property `includePrefixes`
776
- # @return [Array<String>]
777
- attr_accessor :include_prefixes
728
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
729
+ # time zone are either specified elsewhere or are not significant. The date
730
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
731
+ # represent a year and month where the day is not significant, e.g. credit card
732
+ # expiration date. The year may be 0 to represent a month and day independent
733
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
734
+ # and `google.protobuf.Timestamp`.
735
+ # Corresponds to the JSON property `scheduleEndDate`
736
+ # @return [Google::Apis::StoragetransferV1::Date]
737
+ attr_accessor :schedule_end_date
738
+
739
+ # Represents a time of day. The date and time zone are either not significant
740
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
741
+ # types are google.type.Date and `google.protobuf.Timestamp`.
742
+ # Corresponds to the JSON property `startTimeOfDay`
743
+ # @return [Google::Apis::StoragetransferV1::TimeOfDay]
744
+ attr_accessor :start_time_of_day
745
+
746
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
747
+ # time zone are either specified elsewhere or are not significant. The date
748
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
749
+ # represent a year and month where the day is not significant, e.g. credit card
750
+ # expiration date. The year may be 0 to represent a month and day independent
751
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
752
+ # and `google.protobuf.Timestamp`.
753
+ # Corresponds to the JSON property `scheduleStartDate`
754
+ # @return [Google::Apis::StoragetransferV1::Date]
755
+ attr_accessor :schedule_start_date
756
+
757
+ def initialize(**args)
758
+ update!(**args)
759
+ end
760
+
761
+ # Update properties of this object
762
+ def update!(**args)
763
+ @schedule_end_date = args[:schedule_end_date] if args.key?(:schedule_end_date)
764
+ @start_time_of_day = args[:start_time_of_day] if args.key?(:start_time_of_day)
765
+ @schedule_start_date = args[:schedule_start_date] if args.key?(:schedule_start_date)
766
+ end
767
+ end
778
768
 
779
- # If unspecified, `minTimeElapsedSinceLastModification` takes a zero value
780
- # and `maxTimeElapsedSinceLastModification` takes the maximum possible
781
- # value of Duration. Objects that satisfy the object conditions
782
- # must either have a `lastModificationTime` greater or equal to
783
- # `NOW` - `maxTimeElapsedSinceLastModification` and less than
784
- # `NOW` - `minTimeElapsedSinceLastModification`, or not have a
785
- # `lastModificationTime`.
786
- # Corresponds to the JSON property `minTimeElapsedSinceLastModification`
787
- # @return [String]
788
- attr_accessor :min_time_elapsed_since_last_modification
769
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
770
+ # time zone are either specified elsewhere or are not significant. The date
771
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
772
+ # represent a year and month where the day is not significant, e.g. credit card
773
+ # expiration date. The year may be 0 to represent a month and day independent
774
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
775
+ # and `google.protobuf.Timestamp`.
776
+ class Date
777
+ include Google::Apis::Core::Hashable
789
778
 
790
- # `excludePrefixes` must follow the requirements described for
791
- # `includePrefixes`.
792
- # The max size of `excludePrefixes` is 1000.
793
- # Corresponds to the JSON property `excludePrefixes`
794
- # @return [Array<String>]
795
- attr_accessor :exclude_prefixes
779
+ # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
780
+ # a year.
781
+ # Corresponds to the JSON property `year`
782
+ # @return [Fixnum]
783
+ attr_accessor :year
796
784
 
797
- # `maxTimeElapsedSinceLastModification` is the complement to
798
- # `minTimeElapsedSinceLastModification`.
799
- # Corresponds to the JSON property `maxTimeElapsedSinceLastModification`
800
- # @return [String]
801
- attr_accessor :max_time_elapsed_since_last_modification
785
+ # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
786
+ # if specifying a year/month where the day is not significant.
787
+ # Corresponds to the JSON property `day`
788
+ # @return [Fixnum]
789
+ attr_accessor :day
790
+
791
+ # Month of year. Must be from 1 to 12.
792
+ # Corresponds to the JSON property `month`
793
+ # @return [Fixnum]
794
+ attr_accessor :month
802
795
 
803
796
  def initialize(**args)
804
797
  update!(**args)
@@ -806,92 +799,61 @@ module Google
806
799
 
807
800
  # Update properties of this object
808
801
  def update!(**args)
809
- @include_prefixes = args[:include_prefixes] if args.key?(:include_prefixes)
810
- @min_time_elapsed_since_last_modification = args[:min_time_elapsed_since_last_modification] if args.key?(:min_time_elapsed_since_last_modification)
811
- @exclude_prefixes = args[:exclude_prefixes] if args.key?(:exclude_prefixes)
812
- @max_time_elapsed_since_last_modification = args[:max_time_elapsed_since_last_modification] if args.key?(:max_time_elapsed_since_last_modification)
802
+ @year = args[:year] if args.key?(:year)
803
+ @day = args[:day] if args.key?(:day)
804
+ @month = args[:month] if args.key?(:month)
813
805
  end
814
806
  end
815
807
 
816
- # This resource represents a long-running operation that is the result of a
817
- # network API call.
818
- class Operation
808
+ # A description of the execution of a transfer.
809
+ class TransferOperation
819
810
  include Google::Apis::Core::Hashable
820
811
 
821
- # The normal response of the operation in case of success. If the original
822
- # method returns no data on success, such as `Delete`, the response is
823
- # `google.protobuf.Empty`. If the original method is standard
824
- # `Get`/`Create`/`Update`, the response should be the resource. For other
825
- # methods, the response should have the type `XxxResponse`, where `Xxx`
826
- # is the original method name. For example, if the original method name
827
- # is `TakeSnapshot()`, the inferred response type is
828
- # `TakeSnapshotResponse`.
829
- # Corresponds to the JSON property `response`
830
- # @return [Hash<String,Object>]
831
- attr_accessor :response
812
+ # End time of this transfer execution.
813
+ # Corresponds to the JSON property `endTime`
814
+ # @return [String]
815
+ attr_accessor :end_time
832
816
 
833
- # The server-assigned name, which is only unique within the same service that
834
- # originally returns it. If you use the default HTTP mapping, the `name` should
835
- # have the format of `transferOperations/some/unique/name`.
836
- # Corresponds to the JSON property `name`
817
+ # Start time of this transfer execution.
818
+ # Corresponds to the JSON property `startTime`
837
819
  # @return [String]
838
- attr_accessor :name
820
+ attr_accessor :start_time
839
821
 
840
- # The `Status` type defines a logical error model that is suitable for different
841
- # programming environments, including REST APIs and RPC APIs. It is used by
842
- # [gRPC](https://github.com/grpc). The error model is designed to be:
843
- # - Simple to use and understand for most users
844
- # - Flexible enough to meet unexpected needs
845
- # # Overview
846
- # The `Status` message contains three pieces of data: error code, error message,
847
- # and error details. The error code should be an enum value of
848
- # google.rpc.Code, but it may accept additional error codes if needed. The
849
- # error message should be a developer-facing English message that helps
850
- # developers *understand* and *resolve* the error. If a localized user-facing
851
- # error message is needed, put the localized message in the error details or
852
- # localize it in the client. The optional error details may contain arbitrary
853
- # information about the error. There is a predefined set of error detail types
854
- # in the package `google.rpc` which can be used for common error conditions.
855
- # # Language mapping
856
- # The `Status` message is the logical representation of the error model, but it
857
- # is not necessarily the actual wire format. When the `Status` message is
858
- # exposed in different client libraries and different wire protocols, it can be
859
- # mapped differently. For example, it will likely be mapped to some exceptions
860
- # in Java, but more likely mapped to some error codes in C.
861
- # # Other uses
862
- # The error model and the `Status` message can be used in a variety of
863
- # environments, either with or without APIs, to provide a
864
- # consistent developer experience across different environments.
865
- # Example uses of this error model include:
866
- # - Partial errors. If a service needs to return partial errors to the client,
867
- # it may embed the `Status` in the normal response to indicate the partial
868
- # errors.
869
- # - Workflow errors. A typical workflow has multiple steps. Each step may
870
- # have a `Status` message for error reporting purpose.
871
- # - Batch operations. If a client uses batch request and batch response, the
872
- # `Status` message should be used directly inside batch response, one for
873
- # each error sub-response.
874
- # - Asynchronous operations. If an API call embeds asynchronous operation
875
- # results in its response, the status of those operations should be
876
- # represented directly using the `Status` message.
877
- # - Logging. If some API errors are stored in logs, the message `Status` could
878
- # be used directly after any stripping needed for security/privacy reasons.
879
- # Corresponds to the JSON property `error`
880
- # @return [Google::Apis::StoragetransferV1::Status]
881
- attr_accessor :error
822
+ # The name of the transfer job that triggers this transfer operation.
823
+ # Corresponds to the JSON property `transferJobName`
824
+ # @return [String]
825
+ attr_accessor :transfer_job_name
882
826
 
883
- # Represents the transfer operation object.
884
- # Corresponds to the JSON property `metadata`
885
- # @return [Hash<String,Object>]
886
- attr_accessor :metadata
827
+ # Configuration for running a transfer.
828
+ # Corresponds to the JSON property `transferSpec`
829
+ # @return [Google::Apis::StoragetransferV1::TransferSpec]
830
+ attr_accessor :transfer_spec
887
831
 
888
- # If the value is `false`, it means the operation is still in progress.
889
- # If true, the operation is completed, and either `error` or `response` is
890
- # available.
891
- # Corresponds to the JSON property `done`
892
- # @return [Boolean]
893
- attr_accessor :done
894
- alias_method :done?, :done
832
+ # Status of the transfer operation.
833
+ # Corresponds to the JSON property `status`
834
+ # @return [String]
835
+ attr_accessor :status
836
+
837
+ # A collection of counters that report the progress of a transfer operation.
838
+ # Corresponds to the JSON property `counters`
839
+ # @return [Google::Apis::StoragetransferV1::TransferCounters]
840
+ attr_accessor :counters
841
+
842
+ # Summarizes errors encountered with sample error log entries.
843
+ # Corresponds to the JSON property `errorBreakdowns`
844
+ # @return [Array<Google::Apis::StoragetransferV1::ErrorSummary>]
845
+ attr_accessor :error_breakdowns
846
+
847
+ # A globally unique ID assigned by the system.
848
+ # Corresponds to the JSON property `name`
849
+ # @return [String]
850
+ attr_accessor :name
851
+
852
+ # The ID of the Google Cloud Platform Console project that owns the operation.
853
+ # Required.
854
+ # Corresponds to the JSON property `projectId`
855
+ # @return [String]
856
+ attr_accessor :project_id
895
857
 
896
858
  def initialize(**args)
897
859
  update!(**args)
@@ -899,83 +861,58 @@ module Google
899
861
 
900
862
  # Update properties of this object
901
863
  def update!(**args)
902
- @response = args[:response] if args.key?(:response)
864
+ @end_time = args[:end_time] if args.key?(:end_time)
865
+ @start_time = args[:start_time] if args.key?(:start_time)
866
+ @transfer_job_name = args[:transfer_job_name] if args.key?(:transfer_job_name)
867
+ @transfer_spec = args[:transfer_spec] if args.key?(:transfer_spec)
868
+ @status = args[:status] if args.key?(:status)
869
+ @counters = args[:counters] if args.key?(:counters)
870
+ @error_breakdowns = args[:error_breakdowns] if args.key?(:error_breakdowns)
903
871
  @name = args[:name] if args.key?(:name)
904
- @error = args[:error] if args.key?(:error)
905
- @metadata = args[:metadata] if args.key?(:metadata)
906
- @done = args[:done] if args.key?(:done)
872
+ @project_id = args[:project_id] if args.key?(:project_id)
907
873
  end
908
874
  end
909
875
 
910
- # Configuration for running a transfer.
911
- class TransferSpec
876
+ # An AwsS3Data can be a data source, but not a data sink.
877
+ # In an AwsS3Data, an object's name is the S3 object's key name.
878
+ class AwsS3Data
912
879
  include Google::Apis::Core::Hashable
913
880
 
914
- # An AwsS3Data can be a data source, but not a data sink.
915
- # In an AwsS3Data, an object's name is the S3 object's key name.
916
- # Corresponds to the JSON property `awsS3DataSource`
917
- # @return [Google::Apis::StoragetransferV1::AwsS3Data]
918
- attr_accessor :aws_s3_data_source
919
-
920
- # An HttpData specifies a list of objects on the web to be transferred over
921
- # HTTP. The information of the objects to be transferred is contained in a
922
- # file referenced by a URL. The first line in the file must be
923
- # "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines
924
- # specify the information of the list of objects, one object per list entry.
925
- # Each entry has the following tab-delimited fields:
926
- # * HTTP URL - The location of the object.
927
- # * Length - The size of the object in bytes.
928
- # * MD5 - The base64-encoded MD5 hash of the object.
929
- # For an example of a valid TSV file, see
930
- # [Transferring data from URLs](https://cloud.google.com/storage/transfer/#urls)
931
- # When transferring data based on a URL list, keep the following in mind:
932
- # * When an object located at `http(s)://hostname:port/<URL-path>` is
933
- # transferred
934
- # to a data sink, the name of the object at the data sink is
935
- # `<hostname>/<URL-path>`.
936
- # * If the specified size of an object does not match the actual size of the
937
- # object fetched, the object will not be transferred.
938
- # * If the specified MD5 does not match the MD5 computed from the transferred
939
- # bytes, the object transfer will fail. For more information, see
940
- # [Generating MD5 hashes](https://cloud.google.com/storage/transfer/#md5)
941
- # * Ensure that each URL you specify is publicly accessible. For
942
- # example, in Google Cloud Storage you can
943
- # [share an object publicly]
944
- # (https://cloud.google.com/storage/docs/cloud-console#_sharingdata) and get
945
- # a link to it.
946
- # * Storage Transfer Service obeys `robots.txt` rules and requires the source
947
- # HTTP server to support `Range` requests and to return a `Content-Length`
948
- # header in each response.
949
- # * [ObjectConditions](#ObjectConditions) have no effect when filtering objects
950
- # to transfer.
951
- # Corresponds to the JSON property `httpDataSource`
952
- # @return [Google::Apis::StoragetransferV1::HttpData]
953
- attr_accessor :http_data_source
881
+ # AWS access key (see
882
+ # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-
883
+ # security-credentials.html)).
884
+ # Corresponds to the JSON property `awsAccessKey`
885
+ # @return [Google::Apis::StoragetransferV1::AwsAccessKey]
886
+ attr_accessor :aws_access_key
954
887
 
955
- # Conditions that determine which objects will be transferred.
956
- # Corresponds to the JSON property `objectConditions`
957
- # @return [Google::Apis::StoragetransferV1::ObjectConditions]
958
- attr_accessor :object_conditions
888
+ # S3 Bucket name (see
889
+ # [Creating a bucket](http://docs.aws.amazon.com/AmazonS3/latest/dev/create-
890
+ # bucket-get-location-example.html)).
891
+ # Required.
892
+ # Corresponds to the JSON property `bucketName`
893
+ # @return [String]
894
+ attr_accessor :bucket_name
959
895
 
960
- # In a GcsData, an object's name is the Google Cloud Storage object's name and
961
- # its `lastModificationTime` refers to the object's updated time, which changes
962
- # when the content or the metadata of the object is updated.
963
- # Corresponds to the JSON property `gcsDataSink`
964
- # @return [Google::Apis::StoragetransferV1::GcsData]
965
- attr_accessor :gcs_data_sink
896
+ def initialize(**args)
897
+ update!(**args)
898
+ end
966
899
 
967
- # In a GcsData, an object's name is the Google Cloud Storage object's name and
968
- # its `lastModificationTime` refers to the object's updated time, which changes
969
- # when the content or the metadata of the object is updated.
970
- # Corresponds to the JSON property `gcsDataSource`
971
- # @return [Google::Apis::StoragetransferV1::GcsData]
972
- attr_accessor :gcs_data_source
900
+ # Update properties of this object
901
+ def update!(**args)
902
+ @aws_access_key = args[:aws_access_key] if args.key?(:aws_access_key)
903
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
904
+ end
905
+ end
973
906
 
974
- # TransferOptions uses three boolean parameters to define the actions
975
- # to be performed on objects in a transfer.
976
- # Corresponds to the JSON property `transferOptions`
977
- # @return [Google::Apis::StoragetransferV1::TransferOptions]
978
- attr_accessor :transfer_options
907
+ # A generic empty message that you can re-use to avoid defining duplicated
908
+ # empty messages in your APIs. A typical example is to use it as the request
909
+ # or the response type of an API method. For instance:
910
+ # service Foo `
911
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
912
+ # `
913
+ # The JSON representation for `Empty` is empty JSON object ````.
914
+ class Empty
915
+ include Google::Apis::Core::Hashable
979
916
 
980
917
  def initialize(**args)
981
918
  update!(**args)
@@ -983,38 +920,41 @@ module Google
983
920
 
984
921
  # Update properties of this object
985
922
  def update!(**args)
986
- @aws_s3_data_source = args[:aws_s3_data_source] if args.key?(:aws_s3_data_source)
987
- @http_data_source = args[:http_data_source] if args.key?(:http_data_source)
988
- @object_conditions = args[:object_conditions] if args.key?(:object_conditions)
989
- @gcs_data_sink = args[:gcs_data_sink] if args.key?(:gcs_data_sink)
990
- @gcs_data_source = args[:gcs_data_source] if args.key?(:gcs_data_source)
991
- @transfer_options = args[:transfer_options] if args.key?(:transfer_options)
992
923
  end
993
924
  end
994
925
 
995
- # TransferOptions uses three boolean parameters to define the actions
996
- # to be performed on objects in a transfer.
997
- class TransferOptions
926
+ # AWS access key (see
927
+ # [AWS Security Credentials](http://docs.aws.amazon.com/general/latest/gr/aws-
928
+ # security-credentials.html)).
929
+ class AwsAccessKey
998
930
  include Google::Apis::Core::Hashable
999
931
 
1000
- # Whether objects that exist only in the sink should be deleted.
1001
- # Corresponds to the JSON property `deleteObjectsUniqueInSink`
1002
- # @return [Boolean]
1003
- attr_accessor :delete_objects_unique_in_sink
1004
- alias_method :delete_objects_unique_in_sink?, :delete_objects_unique_in_sink
932
+ # AWS access key ID.
933
+ # Required.
934
+ # Corresponds to the JSON property `accessKeyId`
935
+ # @return [String]
936
+ attr_accessor :access_key_id
1005
937
 
1006
- # Whether overwriting objects that already exist in the sink is allowed.
1007
- # Corresponds to the JSON property `overwriteObjectsAlreadyExistingInSink`
1008
- # @return [Boolean]
1009
- attr_accessor :overwrite_objects_already_existing_in_sink
1010
- alias_method :overwrite_objects_already_existing_in_sink?, :overwrite_objects_already_existing_in_sink
938
+ # AWS secret access key. This field is not returned in RPC responses.
939
+ # Required.
940
+ # Corresponds to the JSON property `secretAccessKey`
941
+ # @return [String]
942
+ attr_accessor :secret_access_key
1011
943
 
1012
- # Whether objects should be deleted from the source after they are
1013
- # transferred to the sink.
1014
- # Corresponds to the JSON property `deleteObjectsFromSourceAfterTransfer`
1015
- # @return [Boolean]
1016
- attr_accessor :delete_objects_from_source_after_transfer
1017
- alias_method :delete_objects_from_source_after_transfer?, :delete_objects_from_source_after_transfer
944
+ def initialize(**args)
945
+ update!(**args)
946
+ end
947
+
948
+ # Update properties of this object
949
+ def update!(**args)
950
+ @access_key_id = args[:access_key_id] if args.key?(:access_key_id)
951
+ @secret_access_key = args[:secret_access_key] if args.key?(:secret_access_key)
952
+ end
953
+ end
954
+
955
+ # Request passed to PauseTransferOperation.
956
+ class PauseTransferOperationRequest
957
+ include Google::Apis::Core::Hashable
1018
958
 
1019
959
  def initialize(**args)
1020
960
  update!(**args)
@@ -1022,71 +962,98 @@ module Google
1022
962
 
1023
963
  # Update properties of this object
1024
964
  def update!(**args)
1025
- @delete_objects_unique_in_sink = args[:delete_objects_unique_in_sink] if args.key?(:delete_objects_unique_in_sink)
1026
- @overwrite_objects_already_existing_in_sink = args[:overwrite_objects_already_existing_in_sink] if args.key?(:overwrite_objects_already_existing_in_sink)
1027
- @delete_objects_from_source_after_transfer = args[:delete_objects_from_source_after_transfer] if args.key?(:delete_objects_from_source_after_transfer)
1028
965
  end
1029
966
  end
1030
967
 
1031
- # The `Status` type defines a logical error model that is suitable for different
1032
- # programming environments, including REST APIs and RPC APIs. It is used by
1033
- # [gRPC](https://github.com/grpc). The error model is designed to be:
1034
- # - Simple to use and understand for most users
1035
- # - Flexible enough to meet unexpected needs
1036
- # # Overview
1037
- # The `Status` message contains three pieces of data: error code, error message,
1038
- # and error details. The error code should be an enum value of
1039
- # google.rpc.Code, but it may accept additional error codes if needed. The
1040
- # error message should be a developer-facing English message that helps
1041
- # developers *understand* and *resolve* the error. If a localized user-facing
1042
- # error message is needed, put the localized message in the error details or
1043
- # localize it in the client. The optional error details may contain arbitrary
1044
- # information about the error. There is a predefined set of error detail types
1045
- # in the package `google.rpc` which can be used for common error conditions.
1046
- # # Language mapping
1047
- # The `Status` message is the logical representation of the error model, but it
1048
- # is not necessarily the actual wire format. When the `Status` message is
1049
- # exposed in different client libraries and different wire protocols, it can be
1050
- # mapped differently. For example, it will likely be mapped to some exceptions
1051
- # in Java, but more likely mapped to some error codes in C.
1052
- # # Other uses
1053
- # The error model and the `Status` message can be used in a variety of
1054
- # environments, either with or without APIs, to provide a
1055
- # consistent developer experience across different environments.
1056
- # Example uses of this error model include:
1057
- # - Partial errors. If a service needs to return partial errors to the client,
1058
- # it may embed the `Status` in the normal response to indicate the partial
1059
- # errors.
1060
- # - Workflow errors. A typical workflow has multiple steps. Each step may
1061
- # have a `Status` message for error reporting purpose.
1062
- # - Batch operations. If a client uses batch request and batch response, the
1063
- # `Status` message should be used directly inside batch response, one for
1064
- # each error sub-response.
1065
- # - Asynchronous operations. If an API call embeds asynchronous operation
1066
- # results in its response, the status of those operations should be
1067
- # represented directly using the `Status` message.
1068
- # - Logging. If some API errors are stored in logs, the message `Status` could
1069
- # be used directly after any stripping needed for security/privacy reasons.
1070
- class Status
968
+ # A collection of counters that report the progress of a transfer operation.
969
+ class TransferCounters
1071
970
  include Google::Apis::Core::Hashable
1072
971
 
1073
- # A developer-facing error message, which should be in English. Any
1074
- # user-facing error message should be localized and sent in the
1075
- # google.rpc.Status.details field, or localized by the client.
1076
- # Corresponds to the JSON property `message`
1077
- # @return [String]
1078
- attr_accessor :message
972
+ # Objects found in the data source that are scheduled to be transferred,
973
+ # which will be copied, excluded based on conditions, or skipped due to
974
+ # failures.
975
+ # Corresponds to the JSON property `objectsFoundFromSource`
976
+ # @return [Fixnum]
977
+ attr_accessor :objects_found_from_source
1079
978
 
1080
- # A list of messages that carry the error details. There will be a
1081
- # common set of message types for APIs to use.
1082
- # Corresponds to the JSON property `details`
1083
- # @return [Array<Hash<String,Object>>]
1084
- attr_accessor :details
979
+ # Bytes that are deleted from the data source.
980
+ # Corresponds to the JSON property `bytesDeletedFromSource`
981
+ # @return [Fixnum]
982
+ attr_accessor :bytes_deleted_from_source
1085
983
 
1086
- # The status code, which should be an enum value of google.rpc.Code.
1087
- # Corresponds to the JSON property `code`
984
+ # Objects that failed to be deleted from the data sink.
985
+ # Corresponds to the JSON property `objectsFailedToDeleteFromSink`
1088
986
  # @return [Fixnum]
1089
- attr_accessor :code
987
+ attr_accessor :objects_failed_to_delete_from_sink
988
+
989
+ # Objects that are deleted from the data sink.
990
+ # Corresponds to the JSON property `objectsDeletedFromSink`
991
+ # @return [Fixnum]
992
+ attr_accessor :objects_deleted_from_sink
993
+
994
+ # Objects found only in the data sink that are scheduled to be deleted.
995
+ # Corresponds to the JSON property `objectsFoundOnlyFromSink`
996
+ # @return [Fixnum]
997
+ attr_accessor :objects_found_only_from_sink
998
+
999
+ # Bytes in the data source that are not transferred because they already
1000
+ # exist in the data sink.
1001
+ # Corresponds to the JSON property `bytesFromSourceSkippedBySync`
1002
+ # @return [Fixnum]
1003
+ attr_accessor :bytes_from_source_skipped_by_sync
1004
+
1005
+ # Bytes that are deleted from the data sink.
1006
+ # Corresponds to the JSON property `bytesDeletedFromSink`
1007
+ # @return [Fixnum]
1008
+ attr_accessor :bytes_deleted_from_sink
1009
+
1010
+ # Bytes that failed to be deleted from the data sink.
1011
+ # Corresponds to the JSON property `bytesFailedToDeleteFromSink`
1012
+ # @return [Fixnum]
1013
+ attr_accessor :bytes_failed_to_delete_from_sink
1014
+
1015
+ # Bytes in the data source that failed during the transfer.
1016
+ # Corresponds to the JSON property `bytesFromSourceFailed`
1017
+ # @return [Fixnum]
1018
+ attr_accessor :bytes_from_source_failed
1019
+
1020
+ # Objects in the data source that failed during the transfer.
1021
+ # Corresponds to the JSON property `objectsFromSourceFailed`
1022
+ # @return [Fixnum]
1023
+ attr_accessor :objects_from_source_failed
1024
+
1025
+ # Objects that are copied to the data sink.
1026
+ # Corresponds to the JSON property `objectsCopiedToSink`
1027
+ # @return [Fixnum]
1028
+ attr_accessor :objects_copied_to_sink
1029
+
1030
+ # Bytes found only in the data sink that are scheduled to be deleted.
1031
+ # Corresponds to the JSON property `bytesFoundOnlyFromSink`
1032
+ # @return [Fixnum]
1033
+ attr_accessor :bytes_found_only_from_sink
1034
+
1035
+ # Objects that are deleted from the data source.
1036
+ # Corresponds to the JSON property `objectsDeletedFromSource`
1037
+ # @return [Fixnum]
1038
+ attr_accessor :objects_deleted_from_source
1039
+
1040
+ # Bytes that are copied to the data sink.
1041
+ # Corresponds to the JSON property `bytesCopiedToSink`
1042
+ # @return [Fixnum]
1043
+ attr_accessor :bytes_copied_to_sink
1044
+
1045
+ # Bytes found in the data source that are scheduled to be transferred,
1046
+ # which will be copied, excluded based on conditions, or skipped due to
1047
+ # failures.
1048
+ # Corresponds to the JSON property `bytesFoundFromSource`
1049
+ # @return [Fixnum]
1050
+ attr_accessor :bytes_found_from_source
1051
+
1052
+ # Objects in the data source that are not transferred because they already
1053
+ # exist in the data sink.
1054
+ # Corresponds to the JSON property `objectsFromSourceSkippedBySync`
1055
+ # @return [Fixnum]
1056
+ attr_accessor :objects_from_source_skipped_by_sync
1090
1057
 
1091
1058
  def initialize(**args)
1092
1059
  update!(**args)
@@ -1094,22 +1061,55 @@ module Google
1094
1061
 
1095
1062
  # Update properties of this object
1096
1063
  def update!(**args)
1097
- @message = args[:message] if args.key?(:message)
1098
- @details = args[:details] if args.key?(:details)
1099
- @code = args[:code] if args.key?(:code)
1064
+ @objects_found_from_source = args[:objects_found_from_source] if args.key?(:objects_found_from_source)
1065
+ @bytes_deleted_from_source = args[:bytes_deleted_from_source] if args.key?(:bytes_deleted_from_source)
1066
+ @objects_failed_to_delete_from_sink = args[:objects_failed_to_delete_from_sink] if args.key?(:objects_failed_to_delete_from_sink)
1067
+ @objects_deleted_from_sink = args[:objects_deleted_from_sink] if args.key?(:objects_deleted_from_sink)
1068
+ @objects_found_only_from_sink = args[:objects_found_only_from_sink] if args.key?(:objects_found_only_from_sink)
1069
+ @bytes_from_source_skipped_by_sync = args[:bytes_from_source_skipped_by_sync] if args.key?(:bytes_from_source_skipped_by_sync)
1070
+ @bytes_deleted_from_sink = args[:bytes_deleted_from_sink] if args.key?(:bytes_deleted_from_sink)
1071
+ @bytes_failed_to_delete_from_sink = args[:bytes_failed_to_delete_from_sink] if args.key?(:bytes_failed_to_delete_from_sink)
1072
+ @bytes_from_source_failed = args[:bytes_from_source_failed] if args.key?(:bytes_from_source_failed)
1073
+ @objects_from_source_failed = args[:objects_from_source_failed] if args.key?(:objects_from_source_failed)
1074
+ @objects_copied_to_sink = args[:objects_copied_to_sink] if args.key?(:objects_copied_to_sink)
1075
+ @bytes_found_only_from_sink = args[:bytes_found_only_from_sink] if args.key?(:bytes_found_only_from_sink)
1076
+ @objects_deleted_from_source = args[:objects_deleted_from_source] if args.key?(:objects_deleted_from_source)
1077
+ @bytes_copied_to_sink = args[:bytes_copied_to_sink] if args.key?(:bytes_copied_to_sink)
1078
+ @bytes_found_from_source = args[:bytes_found_from_source] if args.key?(:bytes_found_from_source)
1079
+ @objects_from_source_skipped_by_sync = args[:objects_from_source_skipped_by_sync] if args.key?(:objects_from_source_skipped_by_sync)
1100
1080
  end
1101
1081
  end
1102
1082
 
1103
- # Request passed to ResumeTransferOperation.
1104
- class ResumeTransferOperationRequest
1083
+ # A summary of errors by error code, plus a count and sample error log
1084
+ # entries.
1085
+ class ErrorSummary
1105
1086
  include Google::Apis::Core::Hashable
1106
1087
 
1088
+ # Required.
1089
+ # Corresponds to the JSON property `errorCode`
1090
+ # @return [String]
1091
+ attr_accessor :error_code
1092
+
1093
+ # Count of this type of error.
1094
+ # Required.
1095
+ # Corresponds to the JSON property `errorCount`
1096
+ # @return [Fixnum]
1097
+ attr_accessor :error_count
1098
+
1099
+ # Error samples.
1100
+ # Corresponds to the JSON property `errorLogEntries`
1101
+ # @return [Array<Google::Apis::StoragetransferV1::ErrorLogEntry>]
1102
+ attr_accessor :error_log_entries
1103
+
1107
1104
  def initialize(**args)
1108
1105
  update!(**args)
1109
1106
  end
1110
1107
 
1111
1108
  # Update properties of this object
1112
1109
  def update!(**args)
1110
+ @error_code = args[:error_code] if args.key?(:error_code)
1111
+ @error_count = args[:error_count] if args.key?(:error_count)
1112
+ @error_log_entries = args[:error_log_entries] if args.key?(:error_log_entries)
1113
1113
  end
1114
1114
  end
1115
1115
  end