google-apis-chromewebstore_v2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1117 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module ChromewebstoreV2
24
+
25
+ # Information to read/write to blobstore2.
26
+ class Blobstore2Info
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The blob generation id.
30
+ # Corresponds to the JSON property `blobGeneration`
31
+ # @return [Fixnum]
32
+ attr_accessor :blob_generation
33
+
34
+ # The blob id, e.g., /blobstore/prod/playground/scotty
35
+ # Corresponds to the JSON property `blobId`
36
+ # @return [String]
37
+ attr_accessor :blob_id
38
+
39
+ # Read handle passed from Bigstore -> Scotty for a GCS download. This is a
40
+ # signed, serialized blobstore2.ReadHandle proto which must never be set outside
41
+ # of Bigstore, and is not applicable to non-GCS media downloads.
42
+ # Corresponds to the JSON property `downloadReadHandle`
43
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
44
+ # @return [String]
45
+ attr_accessor :download_read_handle
46
+
47
+ # The blob read token. Needed to read blobs that have not been replicated. Might
48
+ # not be available until the final call.
49
+ # Corresponds to the JSON property `readToken`
50
+ # @return [String]
51
+ attr_accessor :read_token
52
+
53
+ # Metadata passed from Blobstore -> Scotty for a new GCS upload. This is a
54
+ # signed, serialized blobstore2.BlobMetadataContainer proto which must never be
55
+ # consumed outside of Bigstore, and is not applicable to non-GCS media uploads.
56
+ # Corresponds to the JSON property `uploadMetadataContainer`
57
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
58
+ # @return [String]
59
+ attr_accessor :upload_metadata_container
60
+
61
+ def initialize(**args)
62
+ update!(**args)
63
+ end
64
+
65
+ # Update properties of this object
66
+ def update!(**args)
67
+ @blob_generation = args[:blob_generation] if args.key?(:blob_generation)
68
+ @blob_id = args[:blob_id] if args.key?(:blob_id)
69
+ @download_read_handle = args[:download_read_handle] if args.key?(:download_read_handle)
70
+ @read_token = args[:read_token] if args.key?(:read_token)
71
+ @upload_metadata_container = args[:upload_metadata_container] if args.key?(:upload_metadata_container)
72
+ end
73
+ end
74
+
75
+ # Request message for CancelSubmission.
76
+ class CancelSubmissionRequest
77
+ include Google::Apis::Core::Hashable
78
+
79
+ def initialize(**args)
80
+ update!(**args)
81
+ end
82
+
83
+ # Update properties of this object
84
+ def update!(**args)
85
+ end
86
+ end
87
+
88
+ # Response message for `CancelSubmission`.
89
+ class CancelSubmissionResponse
90
+ include Google::Apis::Core::Hashable
91
+
92
+ def initialize(**args)
93
+ update!(**args)
94
+ end
95
+
96
+ # Update properties of this object
97
+ def update!(**args)
98
+ end
99
+ end
100
+
101
+ # A sequence of media data references representing composite data. Introduced to
102
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
103
+ # composites.
104
+ class CompositeMedia
105
+ include Google::Apis::Core::Hashable
106
+
107
+ # Blobstore v1 reference, set if reference_type is BLOBSTORE_REF This should be
108
+ # the byte representation of a blobstore.BlobRef. Since Blobstore is deprecating
109
+ # v1, use blobstore2_info instead. For now, any v2 blob will also be represented
110
+ # in this field as v1 BlobRef.
111
+ # Corresponds to the JSON property `blobRef`
112
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
113
+ # @return [String]
114
+ attr_accessor :blob_ref
115
+
116
+ # Information to read/write to blobstore2.
117
+ # Corresponds to the JSON property `blobstore2Info`
118
+ # @return [Google::Apis::ChromewebstoreV2::Blobstore2Info]
119
+ attr_accessor :blobstore2_info
120
+
121
+ # A binary data reference for a media download. Serves as a technology-agnostic
122
+ # binary reference in some Google infrastructure. This value is a serialized
123
+ # storage_cosmo.BinaryReference proto. Storing it as bytes is a hack to get
124
+ # around the fact that the cosmo proto (as well as others it includes) doesn't
125
+ # support JavaScript. This prevents us from including the actual type of this
126
+ # field.
127
+ # Corresponds to the JSON property `cosmoBinaryReference`
128
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
129
+ # @return [String]
130
+ attr_accessor :cosmo_binary_reference
131
+
132
+ # crc32.c hash for the payload.
133
+ # Corresponds to the JSON property `crc32cHash`
134
+ # @return [Fixnum]
135
+ attr_accessor :crc32c_hash
136
+
137
+ # Media data, set if reference_type is INLINE
138
+ # Corresponds to the JSON property `inline`
139
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
140
+ # @return [String]
141
+ attr_accessor :inline
142
+
143
+ # Size of the data, in bytes
144
+ # Corresponds to the JSON property `length`
145
+ # @return [Fixnum]
146
+ attr_accessor :length
147
+
148
+ # MD5 hash for the payload.
149
+ # Corresponds to the JSON property `md5Hash`
150
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
151
+ # @return [String]
152
+ attr_accessor :md5_hash
153
+
154
+ # This is a copy of the tech.blob.ObjectId proto, which could not be used
155
+ # directly here due to transitive closure issues with JavaScript support; see
156
+ # http://b/8801763.
157
+ # Corresponds to the JSON property `objectId`
158
+ # @return [Google::Apis::ChromewebstoreV2::ObjectIdProp]
159
+ attr_accessor :object_id_prop
160
+
161
+ # Path to the data, set if reference_type is PATH
162
+ # Corresponds to the JSON property `path`
163
+ # @return [String]
164
+ attr_accessor :path
165
+
166
+ # Describes what the field reference contains.
167
+ # Corresponds to the JSON property `referenceType`
168
+ # @return [String]
169
+ attr_accessor :reference_type
170
+
171
+ # SHA-1 hash for the payload.
172
+ # Corresponds to the JSON property `sha1Hash`
173
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
174
+ # @return [String]
175
+ attr_accessor :sha1_hash
176
+
177
+ def initialize(**args)
178
+ update!(**args)
179
+ end
180
+
181
+ # Update properties of this object
182
+ def update!(**args)
183
+ @blob_ref = args[:blob_ref] if args.key?(:blob_ref)
184
+ @blobstore2_info = args[:blobstore2_info] if args.key?(:blobstore2_info)
185
+ @cosmo_binary_reference = args[:cosmo_binary_reference] if args.key?(:cosmo_binary_reference)
186
+ @crc32c_hash = args[:crc32c_hash] if args.key?(:crc32c_hash)
187
+ @inline = args[:inline] if args.key?(:inline)
188
+ @length = args[:length] if args.key?(:length)
189
+ @md5_hash = args[:md5_hash] if args.key?(:md5_hash)
190
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
191
+ @path = args[:path] if args.key?(:path)
192
+ @reference_type = args[:reference_type] if args.key?(:reference_type)
193
+ @sha1_hash = args[:sha1_hash] if args.key?(:sha1_hash)
194
+ end
195
+ end
196
+
197
+ # Detailed Content-Type information from Scotty. The Content-Type of the media
198
+ # will typically be filled in by the header or Scotty's best_guess, but this
199
+ # extended information provides the backend with more information so that it can
200
+ # make a better decision if needed. This is only used on media upload requests
201
+ # from Scotty.
202
+ class ContentTypeInfo
203
+ include Google::Apis::Core::Hashable
204
+
205
+ # Scotty's best guess of what the content type of the file is.
206
+ # Corresponds to the JSON property `bestGuess`
207
+ # @return [String]
208
+ attr_accessor :best_guess
209
+
210
+ # The content type of the file derived by looking at specific bytes (i.e. "magic
211
+ # bytes") of the actual file.
212
+ # Corresponds to the JSON property `fromBytes`
213
+ # @return [String]
214
+ attr_accessor :from_bytes
215
+
216
+ # The content type of the file derived from the file extension of the original
217
+ # file name used by the client.
218
+ # Corresponds to the JSON property `fromFileName`
219
+ # @return [String]
220
+ attr_accessor :from_file_name
221
+
222
+ # The content type of the file as specified in the request headers, multipart
223
+ # headers, or RUPIO start request.
224
+ # Corresponds to the JSON property `fromHeader`
225
+ # @return [String]
226
+ attr_accessor :from_header
227
+
228
+ # The content type of the file derived from the file extension of the URL path.
229
+ # The URL path is assumed to represent a file name (which is typically only true
230
+ # for agents that are providing a REST API).
231
+ # Corresponds to the JSON property `fromUrlPath`
232
+ # @return [String]
233
+ attr_accessor :from_url_path
234
+
235
+ def initialize(**args)
236
+ update!(**args)
237
+ end
238
+
239
+ # Update properties of this object
240
+ def update!(**args)
241
+ @best_guess = args[:best_guess] if args.key?(:best_guess)
242
+ @from_bytes = args[:from_bytes] if args.key?(:from_bytes)
243
+ @from_file_name = args[:from_file_name] if args.key?(:from_file_name)
244
+ @from_header = args[:from_header] if args.key?(:from_header)
245
+ @from_url_path = args[:from_url_path] if args.key?(:from_url_path)
246
+ end
247
+ end
248
+
249
+ # Deployment information for a specific release channel. Used in requests to
250
+ # update deployment parameters.
251
+ class DeployInfo
252
+ include Google::Apis::Core::Hashable
253
+
254
+ # Required. The current deploy percentage for the release channel (nonnegative
255
+ # number between 0 and 100).
256
+ # Corresponds to the JSON property `deployPercentage`
257
+ # @return [Fixnum]
258
+ attr_accessor :deploy_percentage
259
+
260
+ def initialize(**args)
261
+ update!(**args)
262
+ end
263
+
264
+ # Update properties of this object
265
+ def update!(**args)
266
+ @deploy_percentage = args[:deploy_percentage] if args.key?(:deploy_percentage)
267
+ end
268
+ end
269
+
270
+ # Backend response for a Diff get checksums response. For details on the Scotty
271
+ # Diff protocol, visit http://go/scotty-diff-protocol.
272
+ class DiffChecksumsResponse
273
+ include Google::Apis::Core::Hashable
274
+
275
+ # A sequence of media data references representing composite data. Introduced to
276
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
277
+ # composites.
278
+ # Corresponds to the JSON property `checksumsLocation`
279
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
280
+ attr_accessor :checksums_location
281
+
282
+ # The chunk size of checksums. Must be a multiple of 256KB.
283
+ # Corresponds to the JSON property `chunkSizeBytes`
284
+ # @return [Fixnum]
285
+ attr_accessor :chunk_size_bytes
286
+
287
+ # A sequence of media data references representing composite data. Introduced to
288
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
289
+ # composites.
290
+ # Corresponds to the JSON property `objectLocation`
291
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
292
+ attr_accessor :object_location
293
+
294
+ # The total size of the server object.
295
+ # Corresponds to the JSON property `objectSizeBytes`
296
+ # @return [Fixnum]
297
+ attr_accessor :object_size_bytes
298
+
299
+ # The object version of the object the checksums are being returned for.
300
+ # Corresponds to the JSON property `objectVersion`
301
+ # @return [String]
302
+ attr_accessor :object_version
303
+
304
+ def initialize(**args)
305
+ update!(**args)
306
+ end
307
+
308
+ # Update properties of this object
309
+ def update!(**args)
310
+ @checksums_location = args[:checksums_location] if args.key?(:checksums_location)
311
+ @chunk_size_bytes = args[:chunk_size_bytes] if args.key?(:chunk_size_bytes)
312
+ @object_location = args[:object_location] if args.key?(:object_location)
313
+ @object_size_bytes = args[:object_size_bytes] if args.key?(:object_size_bytes)
314
+ @object_version = args[:object_version] if args.key?(:object_version)
315
+ end
316
+ end
317
+
318
+ # Backend response for a Diff download response. For details on the Scotty Diff
319
+ # protocol, visit http://go/scotty-diff-protocol.
320
+ class DiffDownloadResponse
321
+ include Google::Apis::Core::Hashable
322
+
323
+ # A sequence of media data references representing composite data. Introduced to
324
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
325
+ # composites.
326
+ # Corresponds to the JSON property `objectLocation`
327
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
328
+ attr_accessor :object_location
329
+
330
+ def initialize(**args)
331
+ update!(**args)
332
+ end
333
+
334
+ # Update properties of this object
335
+ def update!(**args)
336
+ @object_location = args[:object_location] if args.key?(:object_location)
337
+ end
338
+ end
339
+
340
+ # A Diff upload request. For details on the Scotty Diff protocol, visit http://
341
+ # go/scotty-diff-protocol.
342
+ class DiffUploadRequest
343
+ include Google::Apis::Core::Hashable
344
+
345
+ # A sequence of media data references representing composite data. Introduced to
346
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
347
+ # composites.
348
+ # Corresponds to the JSON property `checksumsInfo`
349
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
350
+ attr_accessor :checksums_info
351
+
352
+ # A sequence of media data references representing composite data. Introduced to
353
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
354
+ # composites.
355
+ # Corresponds to the JSON property `objectInfo`
356
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
357
+ attr_accessor :object_info
358
+
359
+ # The object version of the object that is the base version the incoming diff
360
+ # script will be applied to. This field will always be filled in.
361
+ # Corresponds to the JSON property `objectVersion`
362
+ # @return [String]
363
+ attr_accessor :object_version
364
+
365
+ def initialize(**args)
366
+ update!(**args)
367
+ end
368
+
369
+ # Update properties of this object
370
+ def update!(**args)
371
+ @checksums_info = args[:checksums_info] if args.key?(:checksums_info)
372
+ @object_info = args[:object_info] if args.key?(:object_info)
373
+ @object_version = args[:object_version] if args.key?(:object_version)
374
+ end
375
+ end
376
+
377
+ # Backend response for a Diff upload request. For details on the Scotty Diff
378
+ # protocol, visit http://go/scotty-diff-protocol.
379
+ class DiffUploadResponse
380
+ include Google::Apis::Core::Hashable
381
+
382
+ # The object version of the object at the server. Must be included in the end
383
+ # notification response. The version in the end notification response must
384
+ # correspond to the new version of the object that is now stored at the server,
385
+ # after the upload.
386
+ # Corresponds to the JSON property `objectVersion`
387
+ # @return [String]
388
+ attr_accessor :object_version
389
+
390
+ # A sequence of media data references representing composite data. Introduced to
391
+ # support Bigstore composite objects. For details, visit http://go/bigstore-
392
+ # composites.
393
+ # Corresponds to the JSON property `originalObject`
394
+ # @return [Google::Apis::ChromewebstoreV2::CompositeMedia]
395
+ attr_accessor :original_object
396
+
397
+ def initialize(**args)
398
+ update!(**args)
399
+ end
400
+
401
+ # Update properties of this object
402
+ def update!(**args)
403
+ @object_version = args[:object_version] if args.key?(:object_version)
404
+ @original_object = args[:original_object] if args.key?(:original_object)
405
+ end
406
+ end
407
+
408
+ # Backend response for a Diff get version response. For details on the Scotty
409
+ # Diff protocol, visit http://go/scotty-diff-protocol.
410
+ class DiffVersionResponse
411
+ include Google::Apis::Core::Hashable
412
+
413
+ # The total size of the server object.
414
+ # Corresponds to the JSON property `objectSizeBytes`
415
+ # @return [Fixnum]
416
+ attr_accessor :object_size_bytes
417
+
418
+ # The version of the object stored at the server.
419
+ # Corresponds to the JSON property `objectVersion`
420
+ # @return [String]
421
+ attr_accessor :object_version
422
+
423
+ def initialize(**args)
424
+ update!(**args)
425
+ end
426
+
427
+ # Update properties of this object
428
+ def update!(**args)
429
+ @object_size_bytes = args[:object_size_bytes] if args.key?(:object_size_bytes)
430
+ @object_version = args[:object_version] if args.key?(:object_version)
431
+ end
432
+ end
433
+
434
+ # Deployment information for a specific release channel
435
+ class DistributionChannel
436
+ include Google::Apis::Core::Hashable
437
+
438
+ # The extension version provided in the manifest of the uploaded package.
439
+ # Corresponds to the JSON property `crxVersion`
440
+ # @return [String]
441
+ attr_accessor :crx_version
442
+
443
+ # The current deploy percentage for the release channel (nonnegative number
444
+ # between 0 and 100).
445
+ # Corresponds to the JSON property `deployPercentage`
446
+ # @return [Fixnum]
447
+ attr_accessor :deploy_percentage
448
+
449
+ def initialize(**args)
450
+ update!(**args)
451
+ end
452
+
453
+ # Update properties of this object
454
+ def update!(**args)
455
+ @crx_version = args[:crx_version] if args.key?(:crx_version)
456
+ @deploy_percentage = args[:deploy_percentage] if args.key?(:deploy_percentage)
457
+ end
458
+ end
459
+
460
+ # Parameters specific to media downloads.
461
+ class DownloadParameters
462
+ include Google::Apis::Core::Hashable
463
+
464
+ # A boolean to be returned in the response to Scotty. Allows/disallows gzip
465
+ # encoding of the payload content when the server thinks it's advantageous (
466
+ # hence, does not guarantee compression) which allows Scotty to GZip the
467
+ # response to the client.
468
+ # Corresponds to the JSON property `allowGzipCompression`
469
+ # @return [Boolean]
470
+ attr_accessor :allow_gzip_compression
471
+ alias_method :allow_gzip_compression?, :allow_gzip_compression
472
+
473
+ # Determining whether or not Apiary should skip the inclusion of any Content-
474
+ # Range header on its response to Scotty.
475
+ # Corresponds to the JSON property `ignoreRange`
476
+ # @return [Boolean]
477
+ attr_accessor :ignore_range
478
+ alias_method :ignore_range?, :ignore_range
479
+
480
+ def initialize(**args)
481
+ update!(**args)
482
+ end
483
+
484
+ # Update properties of this object
485
+ def update!(**args)
486
+ @allow_gzip_compression = args[:allow_gzip_compression] if args.key?(:allow_gzip_compression)
487
+ @ignore_range = args[:ignore_range] if args.key?(:ignore_range)
488
+ end
489
+ end
490
+
491
+ # Response message for `FetchItemStatus`.
492
+ class FetchItemStatusResponse
493
+ include Google::Apis::Core::Hashable
494
+
495
+ # Output only. The ID of the item.
496
+ # Corresponds to the JSON property `itemId`
497
+ # @return [String]
498
+ attr_accessor :item_id
499
+
500
+ # Output only. The state of the last async upload for an item. Only set when
501
+ # there has been an async upload for the item in the past 24 hours.
502
+ # Corresponds to the JSON property `lastAsyncUploadState`
503
+ # @return [String]
504
+ attr_accessor :last_async_upload_state
505
+
506
+ # The name of the requested item.
507
+ # Corresponds to the JSON property `name`
508
+ # @return [String]
509
+ attr_accessor :name
510
+
511
+ # The public key of the item, which may be generated by the store.
512
+ # Corresponds to the JSON property `publicKey`
513
+ # @return [String]
514
+ attr_accessor :public_key
515
+
516
+ # Details on the status of an item revision.
517
+ # Corresponds to the JSON property `publishedItemRevisionStatus`
518
+ # @return [Google::Apis::ChromewebstoreV2::ItemRevisionStatus]
519
+ attr_accessor :published_item_revision_status
520
+
521
+ # Details on the status of an item revision.
522
+ # Corresponds to the JSON property `submittedItemRevisionStatus`
523
+ # @return [Google::Apis::ChromewebstoreV2::ItemRevisionStatus]
524
+ attr_accessor :submitted_item_revision_status
525
+
526
+ # If true, the item has been taken down for a policy violation. Check the
527
+ # developer dashboard for details.
528
+ # Corresponds to the JSON property `takenDown`
529
+ # @return [Boolean]
530
+ attr_accessor :taken_down
531
+ alias_method :taken_down?, :taken_down
532
+
533
+ # If true, the item has been warned for a policy violation and will be taken
534
+ # down if not resolved. Check the developer dashboard for details.
535
+ # Corresponds to the JSON property `warned`
536
+ # @return [Boolean]
537
+ attr_accessor :warned
538
+ alias_method :warned?, :warned
539
+
540
+ def initialize(**args)
541
+ update!(**args)
542
+ end
543
+
544
+ # Update properties of this object
545
+ def update!(**args)
546
+ @item_id = args[:item_id] if args.key?(:item_id)
547
+ @last_async_upload_state = args[:last_async_upload_state] if args.key?(:last_async_upload_state)
548
+ @name = args[:name] if args.key?(:name)
549
+ @public_key = args[:public_key] if args.key?(:public_key)
550
+ @published_item_revision_status = args[:published_item_revision_status] if args.key?(:published_item_revision_status)
551
+ @submitted_item_revision_status = args[:submitted_item_revision_status] if args.key?(:submitted_item_revision_status)
552
+ @taken_down = args[:taken_down] if args.key?(:taken_down)
553
+ @warned = args[:warned] if args.key?(:warned)
554
+ end
555
+ end
556
+
557
+ # Details on the status of an item revision.
558
+ class ItemRevisionStatus
559
+ include Google::Apis::Core::Hashable
560
+
561
+ # Details on the package of the item
562
+ # Corresponds to the JSON property `distributionChannels`
563
+ # @return [Array<Google::Apis::ChromewebstoreV2::DistributionChannel>]
564
+ attr_accessor :distribution_channels
565
+
566
+ # Output only. Current state of the item
567
+ # Corresponds to the JSON property `state`
568
+ # @return [String]
569
+ attr_accessor :state
570
+
571
+ def initialize(**args)
572
+ update!(**args)
573
+ end
574
+
575
+ # Update properties of this object
576
+ def update!(**args)
577
+ @distribution_channels = args[:distribution_channels] if args.key?(:distribution_channels)
578
+ @state = args[:state] if args.key?(:state)
579
+ end
580
+ end
581
+
582
+ # A reference to data stored on the filesystem, on GFS or in blobstore.
583
+ class Media
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # Deprecated, use one of explicit hash type fields instead. Algorithm used for
587
+ # calculating the hash. As of 2011/01/21, "MD5" is the only possible value for
588
+ # this field. New values may be added at any time.
589
+ # Corresponds to the JSON property `algorithm`
590
+ # @return [String]
591
+ attr_accessor :algorithm
592
+
593
+ # Use object_id instead.
594
+ # Corresponds to the JSON property `bigstoreObjectRef`
595
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
596
+ # @return [String]
597
+ attr_accessor :bigstore_object_ref
598
+
599
+ # Blobstore v1 reference, set if reference_type is BLOBSTORE_REF This should be
600
+ # the byte representation of a blobstore.BlobRef. Since Blobstore is deprecating
601
+ # v1, use blobstore2_info instead. For now, any v2 blob will also be represented
602
+ # in this field as v1 BlobRef.
603
+ # Corresponds to the JSON property `blobRef`
604
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
605
+ # @return [String]
606
+ attr_accessor :blob_ref
607
+
608
+ # Information to read/write to blobstore2.
609
+ # Corresponds to the JSON property `blobstore2Info`
610
+ # @return [Google::Apis::ChromewebstoreV2::Blobstore2Info]
611
+ attr_accessor :blobstore2_info
612
+
613
+ # A composite media composed of one or more media objects, set if reference_type
614
+ # is COMPOSITE_MEDIA. The media length field must be set to the sum of the
615
+ # lengths of all composite media objects. Note: All composite media must have
616
+ # length specified.
617
+ # Corresponds to the JSON property `compositeMedia`
618
+ # @return [Array<Google::Apis::ChromewebstoreV2::CompositeMedia>]
619
+ attr_accessor :composite_media
620
+
621
+ # MIME type of the data
622
+ # Corresponds to the JSON property `contentType`
623
+ # @return [String]
624
+ attr_accessor :content_type
625
+
626
+ # Detailed Content-Type information from Scotty. The Content-Type of the media
627
+ # will typically be filled in by the header or Scotty's best_guess, but this
628
+ # extended information provides the backend with more information so that it can
629
+ # make a better decision if needed. This is only used on media upload requests
630
+ # from Scotty.
631
+ # Corresponds to the JSON property `contentTypeInfo`
632
+ # @return [Google::Apis::ChromewebstoreV2::ContentTypeInfo]
633
+ attr_accessor :content_type_info
634
+
635
+ # A binary data reference for a media download. Serves as a technology-agnostic
636
+ # binary reference in some Google infrastructure. This value is a serialized
637
+ # storage_cosmo.BinaryReference proto. Storing it as bytes is a hack to get
638
+ # around the fact that the cosmo proto (as well as others it includes) doesn't
639
+ # support JavaScript. This prevents us from including the actual type of this
640
+ # field.
641
+ # Corresponds to the JSON property `cosmoBinaryReference`
642
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
643
+ # @return [String]
644
+ attr_accessor :cosmo_binary_reference
645
+
646
+ # For Scotty Uploads: Scotty-provided hashes for uploads For Scotty Downloads: (
647
+ # WARNING: DO NOT USE WITHOUT PERMISSION FROM THE SCOTTY TEAM.) A Hash provided
648
+ # by the agent to be used to verify the data being downloaded. Currently only
649
+ # supported for inline payloads. Further, only crc32c_hash is currently
650
+ # supported.
651
+ # Corresponds to the JSON property `crc32cHash`
652
+ # @return [Fixnum]
653
+ attr_accessor :crc32c_hash
654
+
655
+ # Backend response for a Diff get checksums response. For details on the Scotty
656
+ # Diff protocol, visit http://go/scotty-diff-protocol.
657
+ # Corresponds to the JSON property `diffChecksumsResponse`
658
+ # @return [Google::Apis::ChromewebstoreV2::DiffChecksumsResponse]
659
+ attr_accessor :diff_checksums_response
660
+
661
+ # Backend response for a Diff download response. For details on the Scotty Diff
662
+ # protocol, visit http://go/scotty-diff-protocol.
663
+ # Corresponds to the JSON property `diffDownloadResponse`
664
+ # @return [Google::Apis::ChromewebstoreV2::DiffDownloadResponse]
665
+ attr_accessor :diff_download_response
666
+
667
+ # A Diff upload request. For details on the Scotty Diff protocol, visit http://
668
+ # go/scotty-diff-protocol.
669
+ # Corresponds to the JSON property `diffUploadRequest`
670
+ # @return [Google::Apis::ChromewebstoreV2::DiffUploadRequest]
671
+ attr_accessor :diff_upload_request
672
+
673
+ # Backend response for a Diff upload request. For details on the Scotty Diff
674
+ # protocol, visit http://go/scotty-diff-protocol.
675
+ # Corresponds to the JSON property `diffUploadResponse`
676
+ # @return [Google::Apis::ChromewebstoreV2::DiffUploadResponse]
677
+ attr_accessor :diff_upload_response
678
+
679
+ # Backend response for a Diff get version response. For details on the Scotty
680
+ # Diff protocol, visit http://go/scotty-diff-protocol.
681
+ # Corresponds to the JSON property `diffVersionResponse`
682
+ # @return [Google::Apis::ChromewebstoreV2::DiffVersionResponse]
683
+ attr_accessor :diff_version_response
684
+
685
+ # Parameters specific to media downloads.
686
+ # Corresponds to the JSON property `downloadParameters`
687
+ # @return [Google::Apis::ChromewebstoreV2::DownloadParameters]
688
+ attr_accessor :download_parameters
689
+
690
+ # Original file name
691
+ # Corresponds to the JSON property `filename`
692
+ # @return [String]
693
+ attr_accessor :filename
694
+
695
+ # Deprecated, use one of explicit hash type fields instead. These two hash
696
+ # related fields will only be populated on Scotty based media uploads and will
697
+ # contain the content of the hash group in the NotificationRequest: http://cs/#
698
+ # google3/blobstore2/api/scotty/service/proto/upload_listener.proto&q=class:Hash
699
+ # Hex encoded hash value of the uploaded media.
700
+ # Corresponds to the JSON property `hash`
701
+ # @return [String]
702
+ attr_accessor :hash_prop
703
+
704
+ # For Scotty uploads only. If a user sends a hash code and the backend has
705
+ # requested that Scotty verify the upload against the client hash, Scotty will
706
+ # perform the check on behalf of the backend and will reject it if the hashes
707
+ # don't match. This is set to true if Scotty performed this verification.
708
+ # Corresponds to the JSON property `hashVerified`
709
+ # @return [Boolean]
710
+ attr_accessor :hash_verified
711
+ alias_method :hash_verified?, :hash_verified
712
+
713
+ # Media data, set if reference_type is INLINE
714
+ # Corresponds to the JSON property `inline`
715
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
716
+ # @return [String]
717
+ attr_accessor :inline
718
+
719
+ # |is_potential_retry| is set false only when Scotty is certain that it has not
720
+ # sent the request before. When a client resumes an upload, this field must be
721
+ # set true in agent calls, because Scotty cannot be certain that it has never
722
+ # sent the request before due to potential failure in the session state
723
+ # persistence.
724
+ # Corresponds to the JSON property `isPotentialRetry`
725
+ # @return [Boolean]
726
+ attr_accessor :is_potential_retry
727
+ alias_method :is_potential_retry?, :is_potential_retry
728
+
729
+ # Size of the data, in bytes
730
+ # Corresponds to the JSON property `length`
731
+ # @return [Fixnum]
732
+ attr_accessor :length
733
+
734
+ # Scotty-provided MD5 hash for an upload.
735
+ # Corresponds to the JSON property `md5Hash`
736
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
737
+ # @return [String]
738
+ attr_accessor :md5_hash
739
+
740
+ # Media id to forward to the operation GetMedia. Can be set if reference_type is
741
+ # GET_MEDIA.
742
+ # Corresponds to the JSON property `mediaId`
743
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
744
+ # @return [String]
745
+ attr_accessor :media_id
746
+
747
+ # This is a copy of the tech.blob.ObjectId proto, which could not be used
748
+ # directly here due to transitive closure issues with JavaScript support; see
749
+ # http://b/8801763.
750
+ # Corresponds to the JSON property `objectId`
751
+ # @return [Google::Apis::ChromewebstoreV2::ObjectIdProp]
752
+ attr_accessor :object_id_prop
753
+
754
+ # Path to the data, set if reference_type is PATH
755
+ # Corresponds to the JSON property `path`
756
+ # @return [String]
757
+ attr_accessor :path
758
+
759
+ # Describes what the field reference contains.
760
+ # Corresponds to the JSON property `referenceType`
761
+ # @return [String]
762
+ attr_accessor :reference_type
763
+
764
+ # Scotty-provided SHA1 hash for an upload.
765
+ # Corresponds to the JSON property `sha1Hash`
766
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
767
+ # @return [String]
768
+ attr_accessor :sha1_hash
769
+
770
+ # Scotty-provided SHA256 hash for an upload.
771
+ # Corresponds to the JSON property `sha256Hash`
772
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
773
+ # @return [String]
774
+ attr_accessor :sha256_hash
775
+
776
+ # Time at which the media data was last updated, in milliseconds since UNIX
777
+ # epoch
778
+ # Corresponds to the JSON property `timestamp`
779
+ # @return [Fixnum]
780
+ attr_accessor :timestamp
781
+
782
+ # A unique fingerprint/version id for the media data
783
+ # Corresponds to the JSON property `token`
784
+ # @return [String]
785
+ attr_accessor :token
786
+
787
+ def initialize(**args)
788
+ update!(**args)
789
+ end
790
+
791
+ # Update properties of this object
792
+ def update!(**args)
793
+ @algorithm = args[:algorithm] if args.key?(:algorithm)
794
+ @bigstore_object_ref = args[:bigstore_object_ref] if args.key?(:bigstore_object_ref)
795
+ @blob_ref = args[:blob_ref] if args.key?(:blob_ref)
796
+ @blobstore2_info = args[:blobstore2_info] if args.key?(:blobstore2_info)
797
+ @composite_media = args[:composite_media] if args.key?(:composite_media)
798
+ @content_type = args[:content_type] if args.key?(:content_type)
799
+ @content_type_info = args[:content_type_info] if args.key?(:content_type_info)
800
+ @cosmo_binary_reference = args[:cosmo_binary_reference] if args.key?(:cosmo_binary_reference)
801
+ @crc32c_hash = args[:crc32c_hash] if args.key?(:crc32c_hash)
802
+ @diff_checksums_response = args[:diff_checksums_response] if args.key?(:diff_checksums_response)
803
+ @diff_download_response = args[:diff_download_response] if args.key?(:diff_download_response)
804
+ @diff_upload_request = args[:diff_upload_request] if args.key?(:diff_upload_request)
805
+ @diff_upload_response = args[:diff_upload_response] if args.key?(:diff_upload_response)
806
+ @diff_version_response = args[:diff_version_response] if args.key?(:diff_version_response)
807
+ @download_parameters = args[:download_parameters] if args.key?(:download_parameters)
808
+ @filename = args[:filename] if args.key?(:filename)
809
+ @hash_prop = args[:hash_prop] if args.key?(:hash_prop)
810
+ @hash_verified = args[:hash_verified] if args.key?(:hash_verified)
811
+ @inline = args[:inline] if args.key?(:inline)
812
+ @is_potential_retry = args[:is_potential_retry] if args.key?(:is_potential_retry)
813
+ @length = args[:length] if args.key?(:length)
814
+ @md5_hash = args[:md5_hash] if args.key?(:md5_hash)
815
+ @media_id = args[:media_id] if args.key?(:media_id)
816
+ @object_id_prop = args[:object_id_prop] if args.key?(:object_id_prop)
817
+ @path = args[:path] if args.key?(:path)
818
+ @reference_type = args[:reference_type] if args.key?(:reference_type)
819
+ @sha1_hash = args[:sha1_hash] if args.key?(:sha1_hash)
820
+ @sha256_hash = args[:sha256_hash] if args.key?(:sha256_hash)
821
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
822
+ @token = args[:token] if args.key?(:token)
823
+ end
824
+ end
825
+
826
+ # Extra information added to operations that support Scotty media requests.
827
+ class MediaRequestInfo
828
+ include Google::Apis::Core::Hashable
829
+
830
+ # The number of current bytes uploaded or downloaded.
831
+ # Corresponds to the JSON property `currentBytes`
832
+ # @return [Fixnum]
833
+ attr_accessor :current_bytes
834
+
835
+ # Data to be copied to backend requests. Custom data is returned to Scotty in
836
+ # the agent_state field, which Scotty will then provide in subsequent upload
837
+ # notifications.
838
+ # Corresponds to the JSON property `customData`
839
+ # @return [String]
840
+ attr_accessor :custom_data
841
+
842
+ # Set if the http request info is diff encoded. The value of this field is the
843
+ # version number of the base revision. This is corresponding to Apiary's
844
+ # mediaDiffObjectVersion (//depot/google3/java/com/google/api/server/media/
845
+ # variable/DiffObjectVersionVariable.java). See go/esf-scotty-diff-upload for
846
+ # more information.
847
+ # Corresponds to the JSON property `diffObjectVersion`
848
+ # @return [String]
849
+ attr_accessor :diff_object_version
850
+
851
+ # The existence of the final_status field indicates that this is the last call
852
+ # to the agent for this request_id. http://google3/uploader/agent/scotty_agent.
853
+ # proto?l=737&rcl=347601929
854
+ # Corresponds to the JSON property `finalStatus`
855
+ # @return [Fixnum]
856
+ attr_accessor :final_status
857
+
858
+ # The type of notification received from Scotty.
859
+ # Corresponds to the JSON property `notificationType`
860
+ # @return [String]
861
+ attr_accessor :notification_type
862
+
863
+ # The physical headers provided by RequestReceivedParameters in Scotty request.
864
+ # type is uploader_service.KeyValuePairs.
865
+ # Corresponds to the JSON property `physicalHeaders`
866
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
867
+ # @return [String]
868
+ attr_accessor :physical_headers
869
+
870
+ # The Scotty request ID.
871
+ # Corresponds to the JSON property `requestId`
872
+ # @return [String]
873
+ attr_accessor :request_id
874
+
875
+ # The partition of the Scotty server handling this request. type is
876
+ # uploader_service.RequestReceivedParamsServingInfo LINT.IfChange(
877
+ # request_received_params_serving_info_annotations) LINT.ThenChange()
878
+ # Corresponds to the JSON property `requestReceivedParamsServingInfo`
879
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
880
+ # @return [String]
881
+ attr_accessor :request_received_params_serving_info
882
+
883
+ # The total size of the file.
884
+ # Corresponds to the JSON property `totalBytes`
885
+ # @return [Fixnum]
886
+ attr_accessor :total_bytes
887
+
888
+ # Whether the total bytes field contains an estimated data.
889
+ # Corresponds to the JSON property `totalBytesIsEstimated`
890
+ # @return [Boolean]
891
+ attr_accessor :total_bytes_is_estimated
892
+ alias_method :total_bytes_is_estimated?, :total_bytes_is_estimated
893
+
894
+ def initialize(**args)
895
+ update!(**args)
896
+ end
897
+
898
+ # Update properties of this object
899
+ def update!(**args)
900
+ @current_bytes = args[:current_bytes] if args.key?(:current_bytes)
901
+ @custom_data = args[:custom_data] if args.key?(:custom_data)
902
+ @diff_object_version = args[:diff_object_version] if args.key?(:diff_object_version)
903
+ @final_status = args[:final_status] if args.key?(:final_status)
904
+ @notification_type = args[:notification_type] if args.key?(:notification_type)
905
+ @physical_headers = args[:physical_headers] if args.key?(:physical_headers)
906
+ @request_id = args[:request_id] if args.key?(:request_id)
907
+ @request_received_params_serving_info = args[:request_received_params_serving_info] if args.key?(:request_received_params_serving_info)
908
+ @total_bytes = args[:total_bytes] if args.key?(:total_bytes)
909
+ @total_bytes_is_estimated = args[:total_bytes_is_estimated] if args.key?(:total_bytes_is_estimated)
910
+ end
911
+ end
912
+
913
+ # This is a copy of the tech.blob.ObjectId proto, which could not be used
914
+ # directly here due to transitive closure issues with JavaScript support; see
915
+ # http://b/8801763.
916
+ class ObjectIdProp
917
+ include Google::Apis::Core::Hashable
918
+
919
+ # The name of the bucket to which this object belongs.
920
+ # Corresponds to the JSON property `bucketName`
921
+ # @return [String]
922
+ attr_accessor :bucket_name
923
+
924
+ # Generation of the object. Generations are monotonically increasing across
925
+ # writes, allowing them to be be compared to determine which generation is newer.
926
+ # If this is omitted in a request, then you are requesting the live object. See
927
+ # http://go/bigstore-versions
928
+ # Corresponds to the JSON property `generation`
929
+ # @return [Fixnum]
930
+ attr_accessor :generation
931
+
932
+ # The name of the object.
933
+ # Corresponds to the JSON property `objectName`
934
+ # @return [String]
935
+ attr_accessor :object_name
936
+
937
+ def initialize(**args)
938
+ update!(**args)
939
+ end
940
+
941
+ # Update properties of this object
942
+ def update!(**args)
943
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
944
+ @generation = args[:generation] if args.key?(:generation)
945
+ @object_name = args[:object_name] if args.key?(:object_name)
946
+ end
947
+ end
948
+
949
+ # Request message for PublishItem.
950
+ class PublishItemRequest
951
+ include Google::Apis::Core::Hashable
952
+
953
+ # Optional. Additional deploy information including the desired initial
954
+ # percentage rollout. Defaults to the current value saved in the developer
955
+ # dashboard if unset.
956
+ # Corresponds to the JSON property `deployInfos`
957
+ # @return [Array<Google::Apis::ChromewebstoreV2::DeployInfo>]
958
+ attr_accessor :deploy_infos
959
+
960
+ # Optional. Use this to control if the item is published immediately on approval
961
+ # or staged for publishing in the future. Defaults to `DEFAULT_PUBLISH` if unset.
962
+ # Corresponds to the JSON property `publishType`
963
+ # @return [String]
964
+ attr_accessor :publish_type
965
+
966
+ # Optional. Whether to attempt to skip item review. The API will validate if the
967
+ # item qualifies and return a validation error if the item requires review.
968
+ # Defaults to `false` if unset.
969
+ # Corresponds to the JSON property `skipReview`
970
+ # @return [Boolean]
971
+ attr_accessor :skip_review
972
+ alias_method :skip_review?, :skip_review
973
+
974
+ def initialize(**args)
975
+ update!(**args)
976
+ end
977
+
978
+ # Update properties of this object
979
+ def update!(**args)
980
+ @deploy_infos = args[:deploy_infos] if args.key?(:deploy_infos)
981
+ @publish_type = args[:publish_type] if args.key?(:publish_type)
982
+ @skip_review = args[:skip_review] if args.key?(:skip_review)
983
+ end
984
+ end
985
+
986
+ # Response message for `PublishItem`.
987
+ class PublishItemResponse
988
+ include Google::Apis::Core::Hashable
989
+
990
+ # Output only. The ID of the item.
991
+ # Corresponds to the JSON property `itemId`
992
+ # @return [String]
993
+ attr_accessor :item_id
994
+
995
+ # The name of the item that was submitted
996
+ # Corresponds to the JSON property `name`
997
+ # @return [String]
998
+ attr_accessor :name
999
+
1000
+ # Output only. The current state of the submission.
1001
+ # Corresponds to the JSON property `state`
1002
+ # @return [String]
1003
+ attr_accessor :state
1004
+
1005
+ def initialize(**args)
1006
+ update!(**args)
1007
+ end
1008
+
1009
+ # Update properties of this object
1010
+ def update!(**args)
1011
+ @item_id = args[:item_id] if args.key?(:item_id)
1012
+ @name = args[:name] if args.key?(:name)
1013
+ @state = args[:state] if args.key?(:state)
1014
+ end
1015
+ end
1016
+
1017
+ # Request message for SetPublishedDeployPercentage.
1018
+ class SetPublishedDeployPercentageRequest
1019
+ include Google::Apis::Core::Hashable
1020
+
1021
+ # Required. Unscaled percentage value for the publised revision (nonnegative
1022
+ # number between 0 and 100). It must be larger than the existing target
1023
+ # percentage.
1024
+ # Corresponds to the JSON property `deployPercentage`
1025
+ # @return [Fixnum]
1026
+ attr_accessor :deploy_percentage
1027
+
1028
+ def initialize(**args)
1029
+ update!(**args)
1030
+ end
1031
+
1032
+ # Update properties of this object
1033
+ def update!(**args)
1034
+ @deploy_percentage = args[:deploy_percentage] if args.key?(:deploy_percentage)
1035
+ end
1036
+ end
1037
+
1038
+ # Response message for `SetPublishedDeployPercentage`.
1039
+ class SetPublishedDeployPercentageResponse
1040
+ include Google::Apis::Core::Hashable
1041
+
1042
+ def initialize(**args)
1043
+ update!(**args)
1044
+ end
1045
+
1046
+ # Update properties of this object
1047
+ def update!(**args)
1048
+ end
1049
+ end
1050
+
1051
+ # Request message for UploadItemPackage.
1052
+ class UploadItemPackageRequest
1053
+ include Google::Apis::Core::Hashable
1054
+
1055
+ # A reference to data stored on the filesystem, on GFS or in blobstore.
1056
+ # Corresponds to the JSON property `blob`
1057
+ # @return [Google::Apis::ChromewebstoreV2::Media]
1058
+ attr_accessor :blob
1059
+
1060
+ # Extra information added to operations that support Scotty media requests.
1061
+ # Corresponds to the JSON property `mediaRequestInfo`
1062
+ # @return [Google::Apis::ChromewebstoreV2::MediaRequestInfo]
1063
+ attr_accessor :media_request_info
1064
+
1065
+ def initialize(**args)
1066
+ update!(**args)
1067
+ end
1068
+
1069
+ # Update properties of this object
1070
+ def update!(**args)
1071
+ @blob = args[:blob] if args.key?(:blob)
1072
+ @media_request_info = args[:media_request_info] if args.key?(:media_request_info)
1073
+ end
1074
+ end
1075
+
1076
+ # Response message for `UploadItemPackage`.
1077
+ class UploadItemPackageResponse
1078
+ include Google::Apis::Core::Hashable
1079
+
1080
+ # The extension version provided in the manifest of the uploaded package. This
1081
+ # will not be set if the upload is still in progress (`upload_state` is `
1082
+ # UPLOAD_IN_PROGRESS`).
1083
+ # Corresponds to the JSON property `crxVersion`
1084
+ # @return [String]
1085
+ attr_accessor :crx_version
1086
+
1087
+ # Output only. The ID of the item the package was uploaded to.
1088
+ # Corresponds to the JSON property `itemId`
1089
+ # @return [String]
1090
+ attr_accessor :item_id
1091
+
1092
+ # The name of the item the package was uploaded to.
1093
+ # Corresponds to the JSON property `name`
1094
+ # @return [String]
1095
+ attr_accessor :name
1096
+
1097
+ # Output only. The state of the upload. If `upload_state` is `UPLOAD_IN_PROGRESS`
1098
+ # , you can poll for updates using the fetchStatus method.
1099
+ # Corresponds to the JSON property `uploadState`
1100
+ # @return [String]
1101
+ attr_accessor :upload_state
1102
+
1103
+ def initialize(**args)
1104
+ update!(**args)
1105
+ end
1106
+
1107
+ # Update properties of this object
1108
+ def update!(**args)
1109
+ @crx_version = args[:crx_version] if args.key?(:crx_version)
1110
+ @item_id = args[:item_id] if args.key?(:item_id)
1111
+ @name = args[:name] if args.key?(:name)
1112
+ @upload_state = args[:upload_state] if args.key?(:upload_state)
1113
+ end
1114
+ end
1115
+ end
1116
+ end
1117
+ end