google-api-client 0.9.9 → 0.9.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/Gemfile +8 -0
  4. data/api_names.yaml +62 -55
  5. data/generated/google/apis/adsense_v1_4.rb +1 -1
  6. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  7. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  8. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  9. data/generated/google/apis/androidenterprise_v1/classes.rb +534 -39
  10. data/generated/google/apis/androidenterprise_v1/representations.rb +222 -0
  11. data/generated/google/apis/androidenterprise_v1/service.rb +595 -10
  12. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  13. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  14. data/generated/google/apis/appengine_v1beta5/classes.rb +66 -6
  15. data/generated/google/apis/appengine_v1beta5/representations.rb +29 -0
  16. data/generated/google/apis/appengine_v1beta5/service.rb +15 -1
  17. data/generated/google/apis/appstate_v1.rb +1 -1
  18. data/generated/google/apis/bigquery_v2.rb +1 -1
  19. data/generated/google/apis/bigquery_v2/classes.rb +12 -4
  20. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  21. data/generated/google/apis/books_v1.rb +2 -2
  22. data/generated/google/apis/books_v1/classes.rb +77 -0
  23. data/generated/google/apis/books_v1/representations.rb +34 -0
  24. data/generated/google/apis/books_v1/service.rb +2 -2
  25. data/generated/google/apis/calendar_v3.rb +1 -1
  26. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  27. data/generated/google/apis/cloudbuild_v1/classes.rb +110 -0
  28. data/generated/google/apis/cloudbuild_v1/representations.rb +60 -0
  29. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  30. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  31. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +157 -3
  32. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +33 -0
  33. data/generated/google/apis/cloudresourcemanager_v1/service.rb +60 -21
  34. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  35. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +22 -5
  36. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +2 -0
  37. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +61 -39
  38. data/generated/google/apis/compute_beta.rb +1 -1
  39. data/generated/google/apis/compute_beta/classes.rb +678 -17
  40. data/generated/google/apis/compute_beta/representations.rb +235 -0
  41. data/generated/google/apis/compute_beta/service.rb +1280 -600
  42. data/generated/google/apis/compute_v1.rb +1 -1
  43. data/generated/google/apis/compute_v1/classes.rb +34 -13
  44. data/generated/google/apis/compute_v1/representations.rb +14 -0
  45. data/generated/google/apis/compute_v1/service.rb +42 -0
  46. data/generated/google/apis/content_v2.rb +1 -1
  47. data/generated/google/apis/content_v2/classes.rb +14 -0
  48. data/generated/google/apis/content_v2/representations.rb +2 -0
  49. data/generated/google/apis/datastore_v1beta3.rb +38 -0
  50. data/generated/google/apis/datastore_v1beta3/classes.rb +1237 -0
  51. data/generated/google/apis/datastore_v1beta3/representations.rb +567 -0
  52. data/generated/google/apis/datastore_v1beta3/service.rb +259 -0
  53. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  54. data/generated/google/apis/deploymentmanager_v2/classes.rb +6 -0
  55. data/generated/google/apis/deploymentmanager_v2/representations.rb +2 -0
  56. data/generated/google/apis/deploymentmanager_v2/service.rb +40 -50
  57. data/generated/google/apis/dfareporting_v2_5.rb +40 -0
  58. data/generated/google/apis/dfareporting_v2_5/classes.rb +11225 -0
  59. data/generated/google/apis/dfareporting_v2_5/representations.rb +3982 -0
  60. data/generated/google/apis/dfareporting_v2_5/service.rb +8755 -0
  61. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  62. data/generated/google/apis/drive_v2.rb +1 -1
  63. data/generated/google/apis/drive_v3.rb +1 -1
  64. data/generated/google/apis/fitness_v1.rb +2 -2
  65. data/generated/google/apis/fitness_v1/classes.rb +48 -5
  66. data/generated/google/apis/fitness_v1/representations.rb +18 -0
  67. data/generated/google/apis/fitness_v1/service.rb +15 -16
  68. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  69. data/generated/google/apis/games_management_v1management.rb +1 -1
  70. data/generated/google/apis/games_v1.rb +1 -1
  71. data/generated/google/apis/genomics_v1.rb +2 -4
  72. data/generated/google/apis/genomics_v1/classes.rb +35 -7
  73. data/generated/google/apis/genomics_v1/representations.rb +7 -3
  74. data/generated/google/apis/genomics_v1/service.rb +1 -3
  75. data/generated/google/apis/gmail_v1.rb +7 -1
  76. data/generated/google/apis/gmail_v1/classes.rb +543 -0
  77. data/generated/google/apis/gmail_v1/representations.rb +213 -0
  78. data/generated/google/apis/gmail_v1/service.rb +898 -1
  79. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  80. data/generated/google/apis/mirror_v1.rb +2 -2
  81. data/generated/google/apis/mirror_v1/service.rb +1 -1
  82. data/generated/google/apis/monitoring_v3.rb +1 -1
  83. data/generated/google/apis/monitoring_v3/classes.rb +7 -6
  84. data/generated/google/apis/oauth2_v2.rb +1 -1
  85. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  86. data/generated/google/apis/plus_domains_v1.rb +1 -1
  87. data/generated/google/apis/plus_v1.rb +1 -1
  88. data/generated/google/apis/replicapool_v1beta2.rb +1 -1
  89. data/generated/google/apis/sheets_v4.rb +1 -1
  90. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  91. data/generated/google/apis/sqladmin_v1beta4/classes.rb +14 -8
  92. data/generated/google/apis/storage_v1.rb +1 -1
  93. data/generated/google/apis/storage_v1/classes.rb +17 -9
  94. data/generated/google/apis/translate_v2.rb +2 -2
  95. data/generated/google/apis/translate_v2/service.rb +1 -1
  96. data/generated/google/apis/vision_v1.rb +1 -1
  97. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  98. data/generated/google/apis/youtube_v3.rb +1 -1
  99. data/generated/google/apis/youtube_v3/classes.rb +8 -2
  100. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  101. data/lib/google/apis/core/base_service.rb +3 -2
  102. data/lib/google/apis/core/upload.rb +7 -1
  103. data/lib/google/apis/version.rb +1 -1
  104. data/sync.rb +71 -0
  105. metadata +11 -2
@@ -22,7 +22,7 @@ module Google
22
22
  module BooksV1
23
23
  # Books API
24
24
  #
25
- # Lets you search for books and manage your Google Books library.
25
+ # Searches for books and manages your Google Books library.
26
26
  #
27
27
  # @example
28
28
  # require 'google/apis/books_v1'
@@ -2090,7 +2090,7 @@ module Google
2090
2090
 
2091
2091
  # Return a list of books in My Library.
2092
2092
  # @param [Array<String>, String] acquire_method
2093
- # How the book was aquired
2093
+ # How the book was acquired
2094
2094
  # @param [String] country
2095
2095
  # ISO-3166-1 code to override the IP-based location.
2096
2096
  # @param [String] locale
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/google-apps/calendar/firstapp
26
26
  module CalendarV3
27
27
  VERSION = 'V3'
28
- REVISION = '20160605'
28
+ REVISION = '20160628'
29
29
 
30
30
  # Manage your calendars
31
31
  AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/container-builder/docs/
26
26
  module CloudbuildV1
27
27
  VERSION = 'V1'
28
- REVISION = '20160525'
28
+ REVISION = '20160706'
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'
@@ -137,6 +137,33 @@ module Google
137
137
  end
138
138
  end
139
139
 
140
+ # Provenance of the source. Ways to find the original source, or verify that
141
+ # some source was used for this build.
142
+ class SourceProvenance
143
+ include Google::Apis::Core::Hashable
144
+
145
+ # Hash(es) of the build source, which can be used to verify that the original
146
+ # source integrity was maintained in the build. Note that FileHashes will
147
+ # only be populated if BuildOptions has requested a SourceProvenanceHash.
148
+ # The keys to this map are file paths used as build source and the values
149
+ # contain the hash values for those files.
150
+ # If the build source came in a single package such as a gzipped tarfile
151
+ # (.tar.gz), the FileHash will be for the single path to that file.
152
+ # @OutputOnly
153
+ # Corresponds to the JSON property `fileHashes`
154
+ # @return [Hash<String,Google::Apis::CloudbuildV1::FileHashes>]
155
+ attr_accessor :file_hashes
156
+
157
+ def initialize(**args)
158
+ update!(**args)
159
+ end
160
+
161
+ # Update properties of this object
162
+ def update!(**args)
163
+ @file_hashes = args[:file_hashes] if args.key?(:file_hashes)
164
+ end
165
+ end
166
+
140
167
  # This resource represents a long-running operation that is the result of a
141
168
  # network API call.
142
169
  class Operation
@@ -260,6 +287,31 @@ module Google
260
287
  end
261
288
  end
262
289
 
290
+ # Container message for hash values.
291
+ class HashProp
292
+ include Google::Apis::Core::Hashable
293
+
294
+ # The hash value.
295
+ # Corresponds to the JSON property `value`
296
+ # @return [String]
297
+ attr_accessor :value
298
+
299
+ # The type of hash that was performed.
300
+ # Corresponds to the JSON property `type`
301
+ # @return [String]
302
+ attr_accessor :type
303
+
304
+ def initialize(**args)
305
+ update!(**args)
306
+ end
307
+
308
+ # Update properties of this object
309
+ def update!(**args)
310
+ @value = args[:value] if args.key?(:value)
311
+ @type = args[:type] if args.key?(:type)
312
+ end
313
+ end
314
+
263
315
  # StorageSource describes the location of the source in an archive file in
264
316
  # Google Cloud Storage.
265
317
  class StorageSource
@@ -330,6 +382,12 @@ module Google
330
382
  # @return [String]
331
383
  attr_accessor :id
332
384
 
385
+ # Provenance of the source. Ways to find the original source, or verify that
386
+ # some source was used for this build.
387
+ # Corresponds to the JSON property `sourceProvenance`
388
+ # @return [Google::Apis::CloudbuildV1::SourceProvenance]
389
+ attr_accessor :source_provenance
390
+
333
391
  # Results describes the artifacts created by the build pipeline.
334
392
  # Corresponds to the JSON property `results`
335
393
  # @return [Google::Apis::CloudbuildV1::Results]
@@ -341,6 +399,11 @@ module Google
341
399
  # @return [String]
342
400
  attr_accessor :status
343
401
 
402
+ # Optional arguments to enable specific features of builds.
403
+ # Corresponds to the JSON property `options`
404
+ # @return [Google::Apis::CloudbuildV1::BuildOptions]
405
+ attr_accessor :options
406
+
344
407
  # Time at which execution of the build was finished.
345
408
  # @OutputOnly
346
409
  # Corresponds to the JSON property `finishTime`
@@ -414,8 +477,10 @@ module Google
414
477
  # Update properties of this object
415
478
  def update!(**args)
416
479
  @id = args[:id] if args.key?(:id)
480
+ @source_provenance = args[:source_provenance] if args.key?(:source_provenance)
417
481
  @results = args[:results] if args.key?(:results)
418
482
  @status = args[:status] if args.key?(:status)
483
+ @options = args[:options] if args.key?(:options)
419
484
  @finish_time = args[:finish_time] if args.key?(:finish_time)
420
485
  @timeout = args[:timeout] if args.key?(:timeout)
421
486
  @steps = args[:steps] if args.key?(:steps)
@@ -442,6 +507,26 @@ module Google
442
507
  end
443
508
  end
444
509
 
510
+ # Container message for hashes of byte content of files, used in
511
+ # SourceProvenance messages to verify integrity of source input to the build.
512
+ class FileHashes
513
+ include Google::Apis::Core::Hashable
514
+
515
+ # Collection of file hashes.
516
+ # Corresponds to the JSON property `fileHash`
517
+ # @return [Array<Google::Apis::CloudbuildV1::HashProp>]
518
+ attr_accessor :file_hash
519
+
520
+ def initialize(**args)
521
+ update!(**args)
522
+ end
523
+
524
+ # Update properties of this object
525
+ def update!(**args)
526
+ @file_hash = args[:file_hash] if args.key?(:file_hash)
527
+ end
528
+ end
529
+
445
530
  # The response message for Operations.ListOperations.
446
531
  class ListOperationsResponse
447
532
  include Google::Apis::Core::Hashable
@@ -506,6 +591,31 @@ module Google
506
591
  end
507
592
  end
508
593
 
594
+ # Optional arguments to enable specific features of builds.
595
+ class BuildOptions
596
+ include Google::Apis::Core::Hashable
597
+
598
+ # Requested hash for SourceProvenance.
599
+ # Corresponds to the JSON property `sourceProvenanceHash`
600
+ # @return [Array<String>]
601
+ attr_accessor :source_provenance_hash
602
+
603
+ # Options for a verifiable build with details uploaded to the Analysis API.
604
+ # Corresponds to the JSON property `requestedVerifyOption`
605
+ # @return [String]
606
+ attr_accessor :requested_verify_option
607
+
608
+ def initialize(**args)
609
+ update!(**args)
610
+ end
611
+
612
+ # Update properties of this object
613
+ def update!(**args)
614
+ @source_provenance_hash = args[:source_provenance_hash] if args.key?(:source_provenance_hash)
615
+ @requested_verify_option = args[:requested_verify_option] if args.key?(:requested_verify_option)
616
+ end
617
+ end
618
+
509
619
  # Response including listed builds.
510
620
  class ListBuildsResponse
511
621
  include Google::Apis::Core::Hashable
@@ -40,6 +40,12 @@ module Google
40
40
  include Google::Apis::Core::JsonObjectSupport
41
41
  end
42
42
 
43
+ class SourceProvenance
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
43
49
  class Operation
44
50
  class Representation < Google::Apis::Core::JsonRepresentation; end
45
51
 
@@ -52,6 +58,12 @@ module Google
52
58
  include Google::Apis::Core::JsonObjectSupport
53
59
  end
54
60
 
61
+ class HashProp
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
55
67
  class StorageSource
56
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
57
69
 
@@ -76,6 +88,12 @@ module Google
76
88
  include Google::Apis::Core::JsonObjectSupport
77
89
  end
78
90
 
91
+ class FileHashes
92
+ class Representation < Google::Apis::Core::JsonRepresentation; end
93
+
94
+ include Google::Apis::Core::JsonObjectSupport
95
+ end
96
+
79
97
  class ListOperationsResponse
80
98
  class Representation < Google::Apis::Core::JsonRepresentation; end
81
99
 
@@ -88,6 +106,12 @@ module Google
88
106
  include Google::Apis::Core::JsonObjectSupport
89
107
  end
90
108
 
109
+ class BuildOptions
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
91
115
  class ListBuildsResponse
92
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
93
117
 
@@ -119,6 +143,14 @@ module Google
119
143
  end
120
144
  end
121
145
 
146
+ class SourceProvenance
147
+ # @private
148
+ class Representation < Google::Apis::Core::JsonRepresentation
149
+ hash :file_hashes, as: 'fileHashes', class: Google::Apis::CloudbuildV1::FileHashes, decorator: Google::Apis::CloudbuildV1::FileHashes::Representation
150
+
151
+ end
152
+ end
153
+
122
154
  class Operation
123
155
  # @private
124
156
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -139,6 +171,14 @@ module Google
139
171
  end
140
172
  end
141
173
 
174
+ class HashProp
175
+ # @private
176
+ class Representation < Google::Apis::Core::JsonRepresentation
177
+ property :value, :base64 => true, as: 'value'
178
+ property :type, as: 'type'
179
+ end
180
+ end
181
+
142
182
  class StorageSource
143
183
  # @private
144
184
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -160,9 +200,13 @@ module Google
160
200
  # @private
161
201
  class Representation < Google::Apis::Core::JsonRepresentation
162
202
  property :id, as: 'id'
203
+ property :source_provenance, as: 'sourceProvenance', class: Google::Apis::CloudbuildV1::SourceProvenance, decorator: Google::Apis::CloudbuildV1::SourceProvenance::Representation
204
+
163
205
  property :results, as: 'results', class: Google::Apis::CloudbuildV1::Results, decorator: Google::Apis::CloudbuildV1::Results::Representation
164
206
 
165
207
  property :status, as: 'status'
208
+ property :options, as: 'options', class: Google::Apis::CloudbuildV1::BuildOptions, decorator: Google::Apis::CloudbuildV1::BuildOptions::Representation
209
+
166
210
  property :finish_time, as: 'finishTime'
167
211
  property :timeout, as: 'timeout'
168
212
  collection :steps, as: 'steps', class: Google::Apis::CloudbuildV1::BuildStep, decorator: Google::Apis::CloudbuildV1::BuildStep::Representation
@@ -184,6 +228,14 @@ module Google
184
228
  end
185
229
  end
186
230
 
231
+ class FileHashes
232
+ # @private
233
+ class Representation < Google::Apis::Core::JsonRepresentation
234
+ collection :file_hash, as: 'fileHash', class: Google::Apis::CloudbuildV1::HashProp, decorator: Google::Apis::CloudbuildV1::HashProp::Representation
235
+
236
+ end
237
+ end
238
+
187
239
  class ListOperationsResponse
188
240
  # @private
189
241
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -203,6 +255,14 @@ module Google
203
255
  end
204
256
  end
205
257
 
258
+ class BuildOptions
259
+ # @private
260
+ class Representation < Google::Apis::Core::JsonRepresentation
261
+ collection :source_provenance_hash, as: 'sourceProvenanceHash'
262
+ property :requested_verify_option, as: 'requestedVerifyOption'
263
+ end
264
+ end
265
+
206
266
  class ListBuildsResponse
207
267
  # @private
208
268
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20160415'
28
+ REVISION = '20160613'
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/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20160518'
29
+ REVISION = '20160617'
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'
@@ -44,9 +44,10 @@ module Google
44
44
  # @return [String]
45
45
  attr_accessor :lifecycle_state
46
46
 
47
- # The user-assigned name of the Project. It must be 4 to 30 characters. Allowed
48
- # characters are: lowercase and uppercase letters, numbers, hyphen, single-quote,
49
- # double-quote, space, and exclamation point. Example: My Project Read-write.
47
+ # The user-assigned display name of the Project. It must be 4 to 30 characters.
48
+ # Allowed characters are: lowercase and uppercase letters, numbers, hyphen,
49
+ # single-quote, double-quote, space, and exclamation point. Example: My Project
50
+ # Read-write.
50
51
  # Corresponds to the JSON property `name`
51
52
  # @return [String]
52
53
  attr_accessor :name
@@ -350,6 +351,159 @@ module Google
350
351
  @permissions = args[:permissions] if args.key?(:permissions)
351
352
  end
352
353
  end
354
+
355
+ # This resource represents a long-running operation that is the result of a
356
+ # network API call.
357
+ class Operation
358
+ include Google::Apis::Core::Hashable
359
+
360
+ # The server-assigned name, which is only unique within the same service that
361
+ # originally returns it. If you use the default HTTP mapping, the `name` should
362
+ # have the format of `operations/some/unique/name`.
363
+ # Corresponds to the JSON property `name`
364
+ # @return [String]
365
+ attr_accessor :name
366
+
367
+ # Service-specific metadata associated with the operation. It typically contains
368
+ # progress information and common metadata such as create time. Some services
369
+ # might not provide such metadata. Any method that returns a long-running
370
+ # operation should document the metadata type, if any.
371
+ # Corresponds to the JSON property `metadata`
372
+ # @return [Hash<String,Object>]
373
+ attr_accessor :metadata
374
+
375
+ # If the value is `false`, it means the operation is still in progress. If true,
376
+ # the operation is completed, and either `error` or `response` is available.
377
+ # Corresponds to the JSON property `done`
378
+ # @return [Boolean]
379
+ attr_accessor :done
380
+ alias_method :done?, :done
381
+
382
+ # The `Status` type defines a logical error model that is suitable for different
383
+ # programming environments, including REST APIs and RPC APIs. It is used by [
384
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
385
+ # use and understand for most users - Flexible enough to meet unexpected needs #
386
+ # Overview The `Status` message contains three pieces of data: error code, error
387
+ # message, and error details. The error code should be an enum value of google.
388
+ # rpc.Code, but it may accept additional error codes if needed. The error
389
+ # message should be a developer-facing English message that helps developers *
390
+ # understand* and *resolve* the error. If a localized user-facing error message
391
+ # is needed, put the localized message in the error details or localize it in
392
+ # the client. The optional error details may contain arbitrary information about
393
+ # the error. There is a predefined set of error detail types in the package `
394
+ # google.rpc` which can be used for common error conditions. # Language mapping
395
+ # The `Status` message is the logical representation of the error model, but it
396
+ # is not necessarily the actual wire format. When the `Status` message is
397
+ # exposed in different client libraries and different wire protocols, it can be
398
+ # mapped differently. For example, it will likely be mapped to some exceptions
399
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
400
+ # error model and the `Status` message can be used in a variety of environments,
401
+ # either with or without APIs, to provide a consistent developer experience
402
+ # across different environments. Example uses of this error model include: -
403
+ # Partial errors. If a service needs to return partial errors to the client, it
404
+ # may embed the `Status` in the normal response to indicate the partial errors. -
405
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
406
+ # Status` message for error reporting purpose. - Batch operations. If a client
407
+ # uses batch request and batch response, the `Status` message should be used
408
+ # directly inside batch response, one for each error sub-response. -
409
+ # Asynchronous operations. If an API call embeds asynchronous operation results
410
+ # in its response, the status of those operations should be represented directly
411
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
412
+ # the message `Status` could be used directly after any stripping needed for
413
+ # security/privacy reasons.
414
+ # Corresponds to the JSON property `error`
415
+ # @return [Google::Apis::CloudresourcemanagerV1::Status]
416
+ attr_accessor :error
417
+
418
+ # The normal response of the operation in case of success. If the original
419
+ # method returns no data on success, such as `Delete`, the response is `google.
420
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
421
+ # the response should be the resource. For other methods, the response should
422
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
423
+ # example, if the original method name is `TakeSnapshot()`, the inferred
424
+ # response type is `TakeSnapshotResponse`.
425
+ # Corresponds to the JSON property `response`
426
+ # @return [Hash<String,Object>]
427
+ attr_accessor :response
428
+
429
+ def initialize(**args)
430
+ update!(**args)
431
+ end
432
+
433
+ # Update properties of this object
434
+ def update!(**args)
435
+ @name = args[:name] if args.key?(:name)
436
+ @metadata = args[:metadata] if args.key?(:metadata)
437
+ @done = args[:done] if args.key?(:done)
438
+ @error = args[:error] if args.key?(:error)
439
+ @response = args[:response] if args.key?(:response)
440
+ end
441
+ end
442
+
443
+ # The `Status` type defines a logical error model that is suitable for different
444
+ # programming environments, including REST APIs and RPC APIs. It is used by [
445
+ # gRPC](https://github.com/grpc). The error model is designed to be: - Simple to
446
+ # use and understand for most users - Flexible enough to meet unexpected needs #
447
+ # Overview The `Status` message contains three pieces of data: error code, error
448
+ # message, and error details. The error code should be an enum value of google.
449
+ # rpc.Code, but it may accept additional error codes if needed. The error
450
+ # message should be a developer-facing English message that helps developers *
451
+ # understand* and *resolve* the error. If a localized user-facing error message
452
+ # is needed, put the localized message in the error details or localize it in
453
+ # the client. The optional error details may contain arbitrary information about
454
+ # the error. There is a predefined set of error detail types in the package `
455
+ # google.rpc` which can be used for common error conditions. # Language mapping
456
+ # The `Status` message is the logical representation of the error model, but it
457
+ # is not necessarily the actual wire format. When the `Status` message is
458
+ # exposed in different client libraries and different wire protocols, it can be
459
+ # mapped differently. For example, it will likely be mapped to some exceptions
460
+ # in Java, but more likely mapped to some error codes in C. # Other uses The
461
+ # error model and the `Status` message can be used in a variety of environments,
462
+ # either with or without APIs, to provide a consistent developer experience
463
+ # across different environments. Example uses of this error model include: -
464
+ # Partial errors. If a service needs to return partial errors to the client, it
465
+ # may embed the `Status` in the normal response to indicate the partial errors. -
466
+ # Workflow errors. A typical workflow has multiple steps. Each step may have a `
467
+ # Status` message for error reporting purpose. - Batch operations. If a client
468
+ # uses batch request and batch response, the `Status` message should be used
469
+ # directly inside batch response, one for each error sub-response. -
470
+ # Asynchronous operations. If an API call embeds asynchronous operation results
471
+ # in its response, the status of those operations should be represented directly
472
+ # using the `Status` message. - Logging. If some API errors are stored in logs,
473
+ # the message `Status` could be used directly after any stripping needed for
474
+ # security/privacy reasons.
475
+ class Status
476
+ include Google::Apis::Core::Hashable
477
+
478
+ # The status code, which should be an enum value of google.rpc.Code.
479
+ # Corresponds to the JSON property `code`
480
+ # @return [Fixnum]
481
+ attr_accessor :code
482
+
483
+ # A developer-facing error message, which should be in English. Any user-facing
484
+ # error message should be localized and sent in the google.rpc.Status.details
485
+ # field, or localized by the client.
486
+ # Corresponds to the JSON property `message`
487
+ # @return [String]
488
+ attr_accessor :message
489
+
490
+ # A list of messages that carry the error details. There will be a common set of
491
+ # message types for APIs to use.
492
+ # Corresponds to the JSON property `details`
493
+ # @return [Array<Hash<String,Object>>]
494
+ attr_accessor :details
495
+
496
+ def initialize(**args)
497
+ update!(**args)
498
+ end
499
+
500
+ # Update properties of this object
501
+ def update!(**args)
502
+ @code = args[:code] if args.key?(:code)
503
+ @message = args[:message] if args.key?(:message)
504
+ @details = args[:details] if args.key?(:details)
505
+ end
506
+ end
353
507
  end
354
508
  end
355
509
  end