google-api-client 0.35.0 → 0.36.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.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  4. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +5 -1
  5. data/generated/google/apis/cloudasset_v1.rb +1 -1
  6. data/generated/google/apis/cloudasset_v1/classes.rb +75 -41
  7. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  8. data/generated/google/apis/cloudasset_v1beta1/classes.rb +75 -41
  9. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1.rb +1 -1
  10. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/classes.rb +75 -41
  11. data/generated/google/apis/container_v1.rb +1 -1
  12. data/generated/google/apis/container_v1/classes.rb +203 -78
  13. data/generated/google/apis/container_v1/representations.rb +49 -0
  14. data/generated/google/apis/container_v1/service.rb +119 -119
  15. data/generated/google/apis/container_v1beta1.rb +1 -1
  16. data/generated/google/apis/container_v1beta1/classes.rb +32 -0
  17. data/generated/google/apis/container_v1beta1/representations.rb +16 -0
  18. data/generated/google/apis/dataproc_v1.rb +1 -1
  19. data/generated/google/apis/dataproc_v1/classes.rb +44 -7
  20. data/generated/google/apis/dataproc_v1/representations.rb +17 -0
  21. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  22. data/generated/google/apis/dataproc_v1beta2/classes.rb +7 -7
  23. data/generated/google/apis/dataproc_v1beta2/service.rb +12 -12
  24. data/generated/google/apis/dlp_v2.rb +1 -1
  25. data/generated/google/apis/dlp_v2/classes.rb +4 -4
  26. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  27. data/generated/google/apis/firebase_v1beta1/classes.rb +15 -0
  28. data/generated/google/apis/firebase_v1beta1/representations.rb +2 -0
  29. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  30. data/generated/google/apis/healthcare_v1beta1/service.rb +20 -23
  31. data/generated/google/apis/ml_v1.rb +1 -1
  32. data/generated/google/apis/ml_v1/classes.rb +75 -41
  33. data/generated/google/apis/monitoring_v1.rb +13 -1
  34. data/generated/google/apis/monitoring_v1/classes.rb +893 -0
  35. data/generated/google/apis/monitoring_v1/representations.rb +405 -0
  36. data/generated/google/apis/monitoring_v1/service.rb +182 -0
  37. data/generated/google/apis/monitoring_v3.rb +1 -1
  38. data/generated/google/apis/monitoring_v3/classes.rb +29 -41
  39. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  40. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +168 -92
  41. data/generated/google/apis/policytroubleshooter_v1beta/service.rb +2 -3
  42. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  43. data/generated/google/apis/remotebuildexecution_v1/classes.rb +56 -0
  44. data/generated/google/apis/remotebuildexecution_v1/representations.rb +31 -0
  45. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  46. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +56 -0
  47. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +31 -0
  48. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  49. data/generated/google/apis/remotebuildexecution_v2/classes.rb +56 -0
  50. data/generated/google/apis/remotebuildexecution_v2/representations.rb +31 -0
  51. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  52. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +75 -41
  53. data/generated/google/apis/securitycenter_v1.rb +1 -1
  54. data/generated/google/apis/securitycenter_v1/classes.rb +75 -41
  55. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  56. data/generated/google/apis/securitycenter_v1beta1/classes.rb +75 -41
  57. data/generated/google/apis/servicebroker_v1.rb +1 -1
  58. data/generated/google/apis/servicebroker_v1/classes.rb +75 -41
  59. data/generated/google/apis/servicebroker_v1alpha1.rb +1 -1
  60. data/generated/google/apis/servicebroker_v1alpha1/classes.rb +75 -41
  61. data/generated/google/apis/servicebroker_v1beta1.rb +1 -1
  62. data/generated/google/apis/servicebroker_v1beta1/classes.rb +75 -41
  63. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  64. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +29 -41
  65. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  66. data/generated/google/apis/servicemanagement_v1/classes.rb +104 -82
  67. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  68. data/generated/google/apis/servicenetworking_v1/classes.rb +51 -41
  69. data/generated/google/apis/servicenetworking_v1/representations.rb +13 -0
  70. data/generated/google/apis/servicenetworking_v1/service.rb +35 -0
  71. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  72. data/generated/google/apis/servicenetworking_v1beta/classes.rb +29 -41
  73. data/generated/google/apis/serviceusage_v1.rb +1 -1
  74. data/generated/google/apis/serviceusage_v1/classes.rb +29 -41
  75. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  76. data/generated/google/apis/serviceusage_v1beta1/classes.rb +29 -41
  77. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  78. data/generated/google/apis/streetviewpublish_v1/classes.rb +1 -1
  79. data/lib/google/apis/version.rb +1 -1
  80. metadata +3 -7
  81. data/generated/google/apis/cloudbuild_v1alpha1.rb +0 -34
  82. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +0 -1174
  83. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +0 -435
  84. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +0 -226
@@ -27,7 +27,7 @@ module Google
27
27
  # @see https://cloud.google.com/service-management/
28
28
  module ServicemanagementV1
29
29
  VERSION = 'V1'
30
- REVISION = '20191115'
30
+ REVISION = '20191204'
31
31
 
32
32
  # View and manage your data across Google Cloud Platform services
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -623,6 +623,23 @@ module Google
623
623
  # account. For example, `my-other-app@appspot.gserviceaccount.com`.
624
624
  # * `group:`emailid``: An email address that represents a Google group.
625
625
  # For example, `admins@example.com`.
626
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
627
+ # identifier) representing a user that has been recently deleted. For
628
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
629
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
630
+ # retains the role in the binding.
631
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
632
+ # unique identifier) representing a service account that has been recently
633
+ # deleted. For example,
634
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
635
+ # If the service account is undeleted, this value reverts to
636
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
637
+ # role in the binding.
638
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
639
+ # identifier) representing a Google group that has been recently
640
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
641
+ # the group is recovered, this value reverts to `group:`emailid`` and the
642
+ # recovered group retains the role in the binding.
626
643
  # * `domain:`domain``: The G Suite domain (primary) that represents all the
627
644
  # users of that domain. For example, `google.com` or `example.com`.
628
645
  # Corresponds to the JSON property `members`
@@ -2457,42 +2474,19 @@ module Google
2457
2474
  # @return [String]
2458
2475
  attr_accessor :type
2459
2476
 
2460
- # The unit in which the metric value is reported. It is only applicable
2461
- # if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The
2462
- # supported units are a subset of [The Unified Code for Units of
2463
- # Measure](http://unitsofmeasure.org/ucum.html) standard:
2464
- # **Basic units (UNIT)**
2465
- # * `bit` bit
2466
- # * `By` byte
2467
- # * `s` second
2468
- # * `min` minute
2469
- # * `h` hour
2470
- # * `d` day
2471
- # **Prefixes (PREFIX)**
2472
- # * `k` kilo (10**3)
2473
- # * `M` mega (10**6)
2474
- # * `G` giga (10**9)
2475
- # * `T` tera (10**12)
2476
- # * `P` peta (10**15)
2477
- # * `E` exa (10**18)
2478
- # * `Z` zetta (10**21)
2479
- # * `Y` yotta (10**24)
2480
- # * `m` milli (10**-3)
2481
- # * `u` micro (10**-6)
2482
- # * `n` nano (10**-9)
2483
- # * `p` pico (10**-12)
2484
- # * `f` femto (10**-15)
2485
- # * `a` atto (10**-18)
2486
- # * `z` zepto (10**-21)
2487
- # * `y` yocto (10**-24)
2488
- # * `Ki` kibi (2**10)
2489
- # * `Mi` mebi (2**20)
2490
- # * `Gi` gibi (2**30)
2491
- # * `Ti` tebi (2**40)
2477
+ # * `Ki` kibi (2^10)
2478
+ # * `Mi` mebi (2^20)
2479
+ # * `Gi` gibi (2^30)
2480
+ # * `Ti` tebi (2^40)
2481
+ # * `Pi` pebi (2^50)
2492
2482
  # **Grammar**
2493
2483
  # The grammar also includes these connectors:
2494
- # * `/` division (as an infix operator, e.g. `1/s`).
2495
- # * `.` multiplication (as an infix operator, e.g. `GBy.d`)
2484
+ # * `/` division or ratio (as an infix operator). For examples,
2485
+ # `kBy/`email`` or `MiBy/10ms` (although you should almost never
2486
+ # have `/s` in a metric `unit`; rates should always be computed at
2487
+ # query time from the underlying cumulative or delta value).
2488
+ # * `.` multiplication or composition (as an infix operator). For
2489
+ # examples, `GBy.d` or `k`watt`.h`.
2496
2490
  # The grammar for a unit is as follows:
2497
2491
  # Expression = Component ` "." Component ` ` "/" Component ` ;
2498
2492
  # Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ]
@@ -2501,14 +2495,25 @@ module Google
2501
2495
  # ;
2502
2496
  # Annotation = "`" NAME "`" ;
2503
2497
  # Notes:
2504
- # * `Annotation` is just a comment if it follows a `UNIT` and is
2505
- # equivalent to `1` if it is used alone. For examples,
2506
- # ``requests`/s == 1/s`, `By`transmitted`/s == By/s`.
2498
+ # * `Annotation` is just a comment if it follows a `UNIT`. If the annotation
2499
+ # is used alone, then the unit is equivalent to `1`. For examples,
2500
+ # ``request`/s == 1/s`, `By`transmitted`/s == By/s`.
2507
2501
  # * `NAME` is a sequence of non-blank printable ASCII characters not
2508
- # containing '`' or '`'.
2509
- # * `1` represents dimensionless value 1, such as in `1/s`.
2510
- # * `%` represents dimensionless value 1/100, and annotates values giving
2511
- # a percentage.
2502
+ # containing ``` or ```.
2503
+ # * `1` represents a unitary [dimensionless
2504
+ # unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such
2505
+ # as in `1/s`. It is typically used when none of the basic units are
2506
+ # appropriate. For example, "new users per day" can be represented as
2507
+ # `1/d` or ``new-users`/d` (and a metric value `5` would mean "5 new
2508
+ # users). Alternatively, "thousands of page views per day" would be
2509
+ # represented as `1000/d` or `k1/d` or `k`page_views`/d` (and a metric
2510
+ # value of `5.3` would mean "5300 page views per day").
2511
+ # * `%` represents dimensionless value of 1/100, and annotates values giving
2512
+ # a percentage (so the metric values are typically in the range of 0..100,
2513
+ # and a metric value `3` means "3 percent").
2514
+ # * `10^2.%` indicates a metric contains a ratio, typically in the range
2515
+ # 0..1, that will be multiplied by 100 and displayed as a percentage
2516
+ # (so a metric value `0.03` means "3 percent").
2512
2517
  # Corresponds to the JSON property `unit`
2513
2518
  # @return [String]
2514
2519
  attr_accessor :unit
@@ -3076,16 +3081,18 @@ module Google
3076
3081
  end
3077
3082
  end
3078
3083
 
3079
- # Defines an Identity and Access Management (IAM) policy. It is used to
3080
- # specify access control policies for Cloud Platform resources.
3084
+ # An Identity and Access Management (IAM) policy, which specifies access
3085
+ # controls for Google Cloud resources.
3081
3086
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
3082
3087
  # `members` to a single `role`. Members can be user accounts, service accounts,
3083
3088
  # Google groups, and domains (such as G Suite). A `role` is a named list of
3084
- # permissions (defined by IAM or configured by users). A `binding` can
3085
- # optionally specify a `condition`, which is a logic expression that further
3086
- # constrains the role binding based on attributes about the request and/or
3087
- # target resource.
3088
- # **JSON Example**
3089
+ # permissions; each `role` can be an IAM predefined role or a user-created
3090
+ # custom role.
3091
+ # Optionally, a `binding` can specify a `condition`, which is a logical
3092
+ # expression that allows access to a resource only if the expression evaluates
3093
+ # to `true`. A condition can add constraints based on attributes of the
3094
+ # request, the resource, or both.
3095
+ # **JSON example:**
3089
3096
  # `
3090
3097
  # "bindings": [
3091
3098
  # `
@@ -3103,13 +3110,15 @@ module Google
3103
3110
  # "condition": `
3104
3111
  # "title": "expirable access",
3105
3112
  # "description": "Does not grant access after Sep 2020",
3106
- # "expression": "request.time <
3107
- # timestamp('2020-10-01T00:00:00.000Z')",
3113
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
3114
+ # ",
3108
3115
  # `
3109
3116
  # `
3110
- # ]
3117
+ # ],
3118
+ # "etag": "BwWWja0YfJA=",
3119
+ # "version": 3
3111
3120
  # `
3112
- # **YAML Example**
3121
+ # **YAML example:**
3113
3122
  # bindings:
3114
3123
  # - members:
3115
3124
  # - user:mike@example.com
@@ -3124,8 +3133,10 @@ module Google
3124
3133
  # title: expirable access
3125
3134
  # description: Does not grant access after Sep 2020
3126
3135
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
3136
+ # - etag: BwWWja0YfJA=
3137
+ # - version: 3
3127
3138
  # For a description of IAM and its features, see the
3128
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
3139
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
3129
3140
  class Policy
3130
3141
  include Google::Apis::Core::Hashable
3131
3142
 
@@ -3134,9 +3145,9 @@ module Google
3134
3145
  # @return [Array<Google::Apis::ServicemanagementV1::AuditConfig>]
3135
3146
  attr_accessor :audit_configs
3136
3147
 
3137
- # Associates a list of `members` to a `role`. Optionally may specify a
3138
- # `condition` that determines when binding is in effect.
3139
- # `bindings` with no members will result in an error.
3148
+ # Associates a list of `members` to a `role`. Optionally, may specify a
3149
+ # `condition` that determines how and when the `bindings` are applied. Each
3150
+ # of the `bindings` must contain at least one member.
3140
3151
  # Corresponds to the JSON property `bindings`
3141
3152
  # @return [Array<Google::Apis::ServicemanagementV1::Binding>]
3142
3153
  attr_accessor :bindings
@@ -3148,26 +3159,31 @@ module Google
3148
3159
  # conditions: An `etag` is returned in the response to `getIamPolicy`, and
3149
3160
  # systems are expected to put that etag in the request to `setIamPolicy` to
3150
3161
  # ensure that their change will be applied to the same version of the policy.
3151
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
3152
- # policy is overwritten. Due to blind-set semantics of an etag-less policy,
3153
- # 'setIamPolicy' will not fail even if the incoming policy version does not
3154
- # meet the requirements for modifying the stored policy.
3162
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
3163
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
3164
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
3165
+ # the conditions in the version `3` policy are lost.
3155
3166
  # Corresponds to the JSON property `etag`
3156
3167
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
3157
3168
  # @return [String]
3158
3169
  attr_accessor :etag
3159
3170
 
3160
3171
  # Specifies the format of the policy.
3161
- # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
3162
- # rejected.
3163
- # Operations affecting conditional bindings must specify version 3. This can
3164
- # be either setting a conditional policy, modifying a conditional binding,
3165
- # or removing a binding (conditional or unconditional) from the stored
3166
- # conditional policy.
3167
- # Operations on non-conditional policies may specify any valid value or
3168
- # leave the field unset.
3169
- # If no etag is provided in the call to `setIamPolicy`, version compliance
3170
- # checks against the stored policy is skipped.
3172
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
3173
+ # are rejected.
3174
+ # Any operation that affects conditional role bindings must specify version
3175
+ # `3`. This requirement applies to the following operations:
3176
+ # * Getting a policy that includes a conditional role binding
3177
+ # * Adding a conditional role binding to a policy
3178
+ # * Changing a conditional role binding in a policy
3179
+ # * Removing any role binding, with or without a condition, from a policy
3180
+ # that includes conditions
3181
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
3182
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
3183
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
3184
+ # the conditions in the version `3` policy are lost.
3185
+ # If a policy does not include any conditions, operations on that policy may
3186
+ # specify any valid version or leave the field unset.
3171
3187
  # Corresponds to the JSON property `version`
3172
3188
  # @return [Fixnum]
3173
3189
  attr_accessor :version
@@ -3904,16 +3920,18 @@ module Google
3904
3920
  class SetIamPolicyRequest
3905
3921
  include Google::Apis::Core::Hashable
3906
3922
 
3907
- # Defines an Identity and Access Management (IAM) policy. It is used to
3908
- # specify access control policies for Cloud Platform resources.
3923
+ # An Identity and Access Management (IAM) policy, which specifies access
3924
+ # controls for Google Cloud resources.
3909
3925
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
3910
3926
  # `members` to a single `role`. Members can be user accounts, service accounts,
3911
3927
  # Google groups, and domains (such as G Suite). A `role` is a named list of
3912
- # permissions (defined by IAM or configured by users). A `binding` can
3913
- # optionally specify a `condition`, which is a logic expression that further
3914
- # constrains the role binding based on attributes about the request and/or
3915
- # target resource.
3916
- # **JSON Example**
3928
+ # permissions; each `role` can be an IAM predefined role or a user-created
3929
+ # custom role.
3930
+ # Optionally, a `binding` can specify a `condition`, which is a logical
3931
+ # expression that allows access to a resource only if the expression evaluates
3932
+ # to `true`. A condition can add constraints based on attributes of the
3933
+ # request, the resource, or both.
3934
+ # **JSON example:**
3917
3935
  # `
3918
3936
  # "bindings": [
3919
3937
  # `
@@ -3931,13 +3949,15 @@ module Google
3931
3949
  # "condition": `
3932
3950
  # "title": "expirable access",
3933
3951
  # "description": "Does not grant access after Sep 2020",
3934
- # "expression": "request.time <
3935
- # timestamp('2020-10-01T00:00:00.000Z')",
3952
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
3953
+ # ",
3936
3954
  # `
3937
3955
  # `
3938
- # ]
3956
+ # ],
3957
+ # "etag": "BwWWja0YfJA=",
3958
+ # "version": 3
3939
3959
  # `
3940
- # **YAML Example**
3960
+ # **YAML example:**
3941
3961
  # bindings:
3942
3962
  # - members:
3943
3963
  # - user:mike@example.com
@@ -3952,8 +3972,10 @@ module Google
3952
3972
  # title: expirable access
3953
3973
  # description: Does not grant access after Sep 2020
3954
3974
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
3975
+ # - etag: BwWWja0YfJA=
3976
+ # - version: 3
3955
3977
  # For a description of IAM and its features, see the
3956
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
3978
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
3957
3979
  # Corresponds to the JSON property `policy`
3958
3980
  # @return [Google::Apis::ServicemanagementV1::Policy]
3959
3981
  attr_accessor :policy
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/service-infrastructure/docs/service-networking/getting-started
27
27
  module ServicenetworkingV1
28
28
  VERSION = 'V1'
29
- REVISION = '20191113'
29
+ REVISION = '20191203'
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'
@@ -1006,6 +1006,28 @@ module Google
1006
1006
  end
1007
1007
  end
1008
1008
 
1009
+ # Request to enable VPC service controls.
1010
+ class EnableVpcServiceControlsRequest
1011
+ include Google::Apis::Core::Hashable
1012
+
1013
+ # Required. The network that the consumer is using to connect with services.
1014
+ # Must be in the form of projects/`project`/global/networks/`network`
1015
+ # `project` is a project number, as in '12345'
1016
+ # `network` is network name.
1017
+ # Corresponds to the JSON property `consumerNetwork`
1018
+ # @return [String]
1019
+ attr_accessor :consumer_network
1020
+
1021
+ def initialize(**args)
1022
+ update!(**args)
1023
+ end
1024
+
1025
+ # Update properties of this object
1026
+ def update!(**args)
1027
+ @consumer_network = args[:consumer_network] if args.key?(:consumer_network)
1028
+ end
1029
+ end
1030
+
1009
1031
  # `Endpoint` describes a network endpoint that serves a set of APIs.
1010
1032
  # A service may expose any number of endpoints, and all endpoints share the
1011
1033
  # same service configuration, such as quota configuration and monitoring
@@ -1949,42 +1971,19 @@ module Google
1949
1971
  # @return [String]
1950
1972
  attr_accessor :type
1951
1973
 
1952
- # The unit in which the metric value is reported. It is only applicable
1953
- # if the `value_type` is `INT64`, `DOUBLE`, or `DISTRIBUTION`. The
1954
- # supported units are a subset of [The Unified Code for Units of
1955
- # Measure](http://unitsofmeasure.org/ucum.html) standard:
1956
- # **Basic units (UNIT)**
1957
- # * `bit` bit
1958
- # * `By` byte
1959
- # * `s` second
1960
- # * `min` minute
1961
- # * `h` hour
1962
- # * `d` day
1963
- # **Prefixes (PREFIX)**
1964
- # * `k` kilo (10**3)
1965
- # * `M` mega (10**6)
1966
- # * `G` giga (10**9)
1967
- # * `T` tera (10**12)
1968
- # * `P` peta (10**15)
1969
- # * `E` exa (10**18)
1970
- # * `Z` zetta (10**21)
1971
- # * `Y` yotta (10**24)
1972
- # * `m` milli (10**-3)
1973
- # * `u` micro (10**-6)
1974
- # * `n` nano (10**-9)
1975
- # * `p` pico (10**-12)
1976
- # * `f` femto (10**-15)
1977
- # * `a` atto (10**-18)
1978
- # * `z` zepto (10**-21)
1979
- # * `y` yocto (10**-24)
1980
- # * `Ki` kibi (2**10)
1981
- # * `Mi` mebi (2**20)
1982
- # * `Gi` gibi (2**30)
1983
- # * `Ti` tebi (2**40)
1974
+ # * `Ki` kibi (2^10)
1975
+ # * `Mi` mebi (2^20)
1976
+ # * `Gi` gibi (2^30)
1977
+ # * `Ti` tebi (2^40)
1978
+ # * `Pi` pebi (2^50)
1984
1979
  # **Grammar**
1985
1980
  # The grammar also includes these connectors:
1986
- # * `/` division (as an infix operator, e.g. `1/s`).
1987
- # * `.` multiplication (as an infix operator, e.g. `GBy.d`)
1981
+ # * `/` division or ratio (as an infix operator). For examples,
1982
+ # `kBy/`email`` or `MiBy/10ms` (although you should almost never
1983
+ # have `/s` in a metric `unit`; rates should always be computed at
1984
+ # query time from the underlying cumulative or delta value).
1985
+ # * `.` multiplication or composition (as an infix operator). For
1986
+ # examples, `GBy.d` or `k`watt`.h`.
1988
1987
  # The grammar for a unit is as follows:
1989
1988
  # Expression = Component ` "." Component ` ` "/" Component ` ;
1990
1989
  # Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ]
@@ -1993,14 +1992,25 @@ module Google
1993
1992
  # ;
1994
1993
  # Annotation = "`" NAME "`" ;
1995
1994
  # Notes:
1996
- # * `Annotation` is just a comment if it follows a `UNIT` and is
1997
- # equivalent to `1` if it is used alone. For examples,
1998
- # ``requests`/s == 1/s`, `By`transmitted`/s == By/s`.
1995
+ # * `Annotation` is just a comment if it follows a `UNIT`. If the annotation
1996
+ # is used alone, then the unit is equivalent to `1`. For examples,
1997
+ # ``request`/s == 1/s`, `By`transmitted`/s == By/s`.
1999
1998
  # * `NAME` is a sequence of non-blank printable ASCII characters not
2000
- # containing '`' or '`'.
2001
- # * `1` represents dimensionless value 1, such as in `1/s`.
2002
- # * `%` represents dimensionless value 1/100, and annotates values giving
2003
- # a percentage.
1999
+ # containing ``` or ```.
2000
+ # * `1` represents a unitary [dimensionless
2001
+ # unit](https://en.wikipedia.org/wiki/Dimensionless_quantity) of 1, such
2002
+ # as in `1/s`. It is typically used when none of the basic units are
2003
+ # appropriate. For example, "new users per day" can be represented as
2004
+ # `1/d` or ``new-users`/d` (and a metric value `5` would mean "5 new
2005
+ # users). Alternatively, "thousands of page views per day" would be
2006
+ # represented as `1000/d` or `k1/d` or `k`page_views`/d` (and a metric
2007
+ # value of `5.3` would mean "5300 page views per day").
2008
+ # * `%` represents dimensionless value of 1/100, and annotates values giving
2009
+ # a percentage (so the metric values are typically in the range of 0..100,
2010
+ # and a metric value `3` means "3 percent").
2011
+ # * `10^2.%` indicates a metric contains a ratio, typically in the range
2012
+ # 0..1, that will be multiplied by 100 and displayed as a percentage
2013
+ # (so a metric value `0.03` means "3 percent").
2004
2014
  # Corresponds to the JSON property `unit`
2005
2015
  # @return [String]
2006
2016
  attr_accessor :unit
@@ -154,6 +154,12 @@ module Google
154
154
  include Google::Apis::Core::JsonObjectSupport
155
155
  end
156
156
 
157
+ class EnableVpcServiceControlsRequest
158
+ class Representation < Google::Apis::Core::JsonRepresentation; end
159
+
160
+ include Google::Apis::Core::JsonObjectSupport
161
+ end
162
+
157
163
  class Endpoint
158
164
  class Representation < Google::Apis::Core::JsonRepresentation; end
159
165
 
@@ -624,6 +630,13 @@ module Google
624
630
  end
625
631
  end
626
632
 
633
+ class EnableVpcServiceControlsRequest
634
+ # @private
635
+ class Representation < Google::Apis::Core::JsonRepresentation
636
+ property :consumer_network, as: 'consumerNetwork'
637
+ end
638
+ end
639
+
627
640
  class Endpoint
628
641
  # @private
629
642
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -250,6 +250,41 @@ module Google
250
250
  execute_or_queue_command(command, &block)
251
251
  end
252
252
 
253
+ # Enables VPC service controls for a connection.
254
+ # @param [String] parent
255
+ # The service that is managing peering connectivity for a service producer's
256
+ # organization. For Google services that support this functionality, this
257
+ # value is `services/servicenetworking.googleapis.com`.
258
+ # @param [Google::Apis::ServicenetworkingV1::EnableVpcServiceControlsRequest] enable_vpc_service_controls_request_object
259
+ # @param [String] fields
260
+ # Selector specifying which fields to include in a partial response.
261
+ # @param [String] quota_user
262
+ # Available to use for quota purposes for server-side applications. Can be any
263
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
264
+ # @param [Google::Apis::RequestOptions] options
265
+ # Request-specific options
266
+ #
267
+ # @yield [result, err] Result & error if block supplied
268
+ # @yieldparam result [Google::Apis::ServicenetworkingV1::Operation] parsed result object
269
+ # @yieldparam err [StandardError] error object if request failed
270
+ #
271
+ # @return [Google::Apis::ServicenetworkingV1::Operation]
272
+ #
273
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
274
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
275
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
276
+ def enable_vpc_service_controls(parent, enable_vpc_service_controls_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
277
+ command = make_simple_command(:patch, 'v1/{+parent}:enableVpcServiceControls', options)
278
+ command.request_representation = Google::Apis::ServicenetworkingV1::EnableVpcServiceControlsRequest::Representation
279
+ command.request_object = enable_vpc_service_controls_request_object
280
+ command.response_representation = Google::Apis::ServicenetworkingV1::Operation::Representation
281
+ command.response_class = Google::Apis::ServicenetworkingV1::Operation
282
+ command.params['parent'] = parent unless parent.nil?
283
+ command.query['fields'] = fields unless fields.nil?
284
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
285
+ execute_or_queue_command(command, &block)
286
+ end
287
+
253
288
  # Service producers can use this method to find a currently unused range
254
289
  # within consumer allocated ranges. This returned range is not reserved,
255
290
  # and not guaranteed to remain unused.