google-api-client 0.11.1 → 0.11.2

Sign up to get free protection for your applications and to get access to all the features.
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