google-apis-networkconnectivity_v1alpha1 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google-apis-networkconnectivity_v1alpha1.rb +15 -0
- data/lib/google/apis/networkconnectivity_v1alpha1.rb +37 -0
- data/lib/google/apis/networkconnectivity_v1alpha1/classes.rb +2044 -0
- data/lib/google/apis/networkconnectivity_v1alpha1/gem_version.rb +28 -0
- data/lib/google/apis/networkconnectivity_v1alpha1/representations.rb +742 -0
- data/lib/google/apis/networkconnectivity_v1alpha1/service.rb +1169 -0
- metadata +76 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: ea85eef2eb766ef1631988b7a81f56d842fc246cf5128b215c4dece524894cdb
|
4
|
+
data.tar.gz: 5d7f1f3fabfafdeb75fb63ca2276bf1ce65dce7cded26680dad950f3d1293467
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 471952192fcc41aa86b701bb625b0f2af43e7853990056064293fb51f1f48c3fea90cc513ae2ddc8aaace19db58f185c5aeb409bb2100a17ee8ab47b6c47fe7d
|
7
|
+
data.tar.gz: 1ee74162bc1c4bc00ff47f0d075d0fd79faa1e00989c38a10b6ca94a4434506ddc937516f8af4a3869ebc422a8c87d43f4f681fa9de424053b7ee48fb7ec4730
|
data/.yardopts
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
--hide-void-return
|
2
|
+
--no-private
|
3
|
+
--verbose
|
4
|
+
--title=google-apis-networkconnectivity_v1alpha1
|
5
|
+
--markup-provider=redcarpet
|
6
|
+
--markup=markdown
|
7
|
+
--main OVERVIEW.md
|
8
|
+
lib/google/apis/networkconnectivity_v1alpha1/*.rb
|
9
|
+
lib/google/apis/networkconnectivity_v1alpha1.rb
|
10
|
+
-
|
11
|
+
OVERVIEW.md
|
12
|
+
CHANGELOG.md
|
13
|
+
LICENSE.md
|
data/CHANGELOG.md
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,202 @@
|
|
1
|
+
|
2
|
+
Apache License
|
3
|
+
Version 2.0, January 2004
|
4
|
+
http://www.apache.org/licenses/
|
5
|
+
|
6
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
7
|
+
|
8
|
+
1. Definitions.
|
9
|
+
|
10
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
11
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
12
|
+
|
13
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
14
|
+
the copyright owner that is granting the License.
|
15
|
+
|
16
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
17
|
+
other entities that control, are controlled by, or are under common
|
18
|
+
control with that entity. For the purposes of this definition,
|
19
|
+
"control" means (i) the power, direct or indirect, to cause the
|
20
|
+
direction or management of such entity, whether by contract or
|
21
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
22
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
23
|
+
|
24
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
25
|
+
exercising permissions granted by this License.
|
26
|
+
|
27
|
+
"Source" form shall mean the preferred form for making modifications,
|
28
|
+
including but not limited to software source code, documentation
|
29
|
+
source, and configuration files.
|
30
|
+
|
31
|
+
"Object" form shall mean any form resulting from mechanical
|
32
|
+
transformation or translation of a Source form, including but
|
33
|
+
not limited to compiled object code, generated documentation,
|
34
|
+
and conversions to other media types.
|
35
|
+
|
36
|
+
"Work" shall mean the work of authorship, whether in Source or
|
37
|
+
Object form, made available under the License, as indicated by a
|
38
|
+
copyright notice that is included in or attached to the work
|
39
|
+
(an example is provided in the Appendix below).
|
40
|
+
|
41
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
42
|
+
form, that is based on (or derived from) the Work and for which the
|
43
|
+
editorial revisions, annotations, elaborations, or other modifications
|
44
|
+
represent, as a whole, an original work of authorship. For the purposes
|
45
|
+
of this License, Derivative Works shall not include works that remain
|
46
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
47
|
+
the Work and Derivative Works thereof.
|
48
|
+
|
49
|
+
"Contribution" shall mean any work of authorship, including
|
50
|
+
the original version of the Work and any modifications or additions
|
51
|
+
to that Work or Derivative Works thereof, that is intentionally
|
52
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
53
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
54
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
55
|
+
means any form of electronic, verbal, or written communication sent
|
56
|
+
to the Licensor or its representatives, including but not limited to
|
57
|
+
communication on electronic mailing lists, source code control systems,
|
58
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
59
|
+
Licensor for the purpose of discussing and improving the Work, but
|
60
|
+
excluding communication that is conspicuously marked or otherwise
|
61
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
62
|
+
|
63
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
64
|
+
on behalf of whom a Contribution has been received by Licensor and
|
65
|
+
subsequently incorporated within the Work.
|
66
|
+
|
67
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
68
|
+
this License, each Contributor hereby grants to You a perpetual,
|
69
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
70
|
+
copyright license to reproduce, prepare Derivative Works of,
|
71
|
+
publicly display, publicly perform, sublicense, and distribute the
|
72
|
+
Work and such Derivative Works in Source or Object form.
|
73
|
+
|
74
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
75
|
+
this License, each Contributor hereby grants to You a perpetual,
|
76
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
77
|
+
(except as stated in this section) patent license to make, have made,
|
78
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
79
|
+
where such license applies only to those patent claims licensable
|
80
|
+
by such Contributor that are necessarily infringed by their
|
81
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
82
|
+
with the Work to which such Contribution(s) was submitted. If You
|
83
|
+
institute patent litigation against any entity (including a
|
84
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
85
|
+
or a Contribution incorporated within the Work constitutes direct
|
86
|
+
or contributory patent infringement, then any patent licenses
|
87
|
+
granted to You under this License for that Work shall terminate
|
88
|
+
as of the date such litigation is filed.
|
89
|
+
|
90
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
91
|
+
Work or Derivative Works thereof in any medium, with or without
|
92
|
+
modifications, and in Source or Object form, provided that You
|
93
|
+
meet the following conditions:
|
94
|
+
|
95
|
+
(a) You must give any other recipients of the Work or
|
96
|
+
Derivative Works a copy of this License; and
|
97
|
+
|
98
|
+
(b) You must cause any modified files to carry prominent notices
|
99
|
+
stating that You changed the files; and
|
100
|
+
|
101
|
+
(c) You must retain, in the Source form of any Derivative Works
|
102
|
+
that You distribute, all copyright, patent, trademark, and
|
103
|
+
attribution notices from the Source form of the Work,
|
104
|
+
excluding those notices that do not pertain to any part of
|
105
|
+
the Derivative Works; and
|
106
|
+
|
107
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
108
|
+
distribution, then any Derivative Works that You distribute must
|
109
|
+
include a readable copy of the attribution notices contained
|
110
|
+
within such NOTICE file, excluding those notices that do not
|
111
|
+
pertain to any part of the Derivative Works, in at least one
|
112
|
+
of the following places: within a NOTICE text file distributed
|
113
|
+
as part of the Derivative Works; within the Source form or
|
114
|
+
documentation, if provided along with the Derivative Works; or,
|
115
|
+
within a display generated by the Derivative Works, if and
|
116
|
+
wherever such third-party notices normally appear. The contents
|
117
|
+
of the NOTICE file are for informational purposes only and
|
118
|
+
do not modify the License. You may add Your own attribution
|
119
|
+
notices within Derivative Works that You distribute, alongside
|
120
|
+
or as an addendum to the NOTICE text from the Work, provided
|
121
|
+
that such additional attribution notices cannot be construed
|
122
|
+
as modifying the License.
|
123
|
+
|
124
|
+
You may add Your own copyright statement to Your modifications and
|
125
|
+
may provide additional or different license terms and conditions
|
126
|
+
for use, reproduction, or distribution of Your modifications, or
|
127
|
+
for any such Derivative Works as a whole, provided Your use,
|
128
|
+
reproduction, and distribution of the Work otherwise complies with
|
129
|
+
the conditions stated in this License.
|
130
|
+
|
131
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
132
|
+
any Contribution intentionally submitted for inclusion in the Work
|
133
|
+
by You to the Licensor shall be under the terms and conditions of
|
134
|
+
this License, without any additional terms or conditions.
|
135
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
136
|
+
the terms of any separate license agreement you may have executed
|
137
|
+
with Licensor regarding such Contributions.
|
138
|
+
|
139
|
+
6. Trademarks. This License does not grant permission to use the trade
|
140
|
+
names, trademarks, service marks, or product names of the Licensor,
|
141
|
+
except as required for reasonable and customary use in describing the
|
142
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
143
|
+
|
144
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
145
|
+
agreed to in writing, Licensor provides the Work (and each
|
146
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
147
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
148
|
+
implied, including, without limitation, any warranties or conditions
|
149
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
150
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
151
|
+
appropriateness of using or redistributing the Work and assume any
|
152
|
+
risks associated with Your exercise of permissions under this License.
|
153
|
+
|
154
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
155
|
+
whether in tort (including negligence), contract, or otherwise,
|
156
|
+
unless required by applicable law (such as deliberate and grossly
|
157
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
158
|
+
liable to You for damages, including any direct, indirect, special,
|
159
|
+
incidental, or consequential damages of any character arising as a
|
160
|
+
result of this License or out of the use or inability to use the
|
161
|
+
Work (including but not limited to damages for loss of goodwill,
|
162
|
+
work stoppage, computer failure or malfunction, or any and all
|
163
|
+
other commercial damages or losses), even if such Contributor
|
164
|
+
has been advised of the possibility of such damages.
|
165
|
+
|
166
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
167
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
168
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
169
|
+
or other liability obligations and/or rights consistent with this
|
170
|
+
License. However, in accepting such obligations, You may act only
|
171
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
172
|
+
of any other Contributor, and only if You agree to indemnify,
|
173
|
+
defend, and hold each Contributor harmless for any liability
|
174
|
+
incurred by, or claims asserted against, such Contributor by reason
|
175
|
+
of your accepting any such warranty or additional liability.
|
176
|
+
|
177
|
+
END OF TERMS AND CONDITIONS
|
178
|
+
|
179
|
+
APPENDIX: How to apply the Apache License to your work.
|
180
|
+
|
181
|
+
To apply the Apache License to your work, attach the following
|
182
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
183
|
+
replaced with your own identifying information. (Don't include
|
184
|
+
the brackets!) The text should be enclosed in the appropriate
|
185
|
+
comment syntax for the file format. We also recommend that a
|
186
|
+
file or class name and description of purpose be included on the
|
187
|
+
same "printed page" as the copyright notice for easier
|
188
|
+
identification within third-party archives.
|
189
|
+
|
190
|
+
Copyright [yyyy] [name of copyright owner]
|
191
|
+
|
192
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
193
|
+
you may not use this file except in compliance with the License.
|
194
|
+
You may obtain a copy of the License at
|
195
|
+
|
196
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
197
|
+
|
198
|
+
Unless required by applicable law or agreed to in writing, software
|
199
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
200
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
201
|
+
See the License for the specific language governing permissions and
|
202
|
+
limitations under the License.
|
data/OVERVIEW.md
ADDED
@@ -0,0 +1,96 @@
|
|
1
|
+
# Simple REST client for version V1alpha1 of the Network Connectivity API
|
2
|
+
|
3
|
+
This is a simple client library for version V1alpha1 of the Network Connectivity API. It provides:
|
4
|
+
|
5
|
+
* A client object that connects to the HTTP/JSON REST endpoint for the service.
|
6
|
+
* Ruby objects for data structures related to the service.
|
7
|
+
* Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts.
|
8
|
+
* Control of retry, pagination, and timeouts.
|
9
|
+
|
10
|
+
Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information.
|
11
|
+
|
12
|
+
## Getting started
|
13
|
+
|
14
|
+
### Before you begin
|
15
|
+
|
16
|
+
There are a few setup steps you need to complete before you can use this library:
|
17
|
+
|
18
|
+
1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).
|
19
|
+
2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).
|
20
|
+
3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/networkconnectivity.googleapis.com) in the console.
|
21
|
+
|
22
|
+
### Installation
|
23
|
+
|
24
|
+
Add this line to your application's Gemfile:
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
gem 'google-apis-networkconnectivity_v1alpha1', '~> 0.1'
|
28
|
+
```
|
29
|
+
|
30
|
+
And then execute:
|
31
|
+
|
32
|
+
```
|
33
|
+
$ bundle
|
34
|
+
```
|
35
|
+
|
36
|
+
Or install it yourself as:
|
37
|
+
|
38
|
+
```
|
39
|
+
$ gem install google-apis-networkconnectivity_v1alpha1
|
40
|
+
```
|
41
|
+
|
42
|
+
### Creating a client object
|
43
|
+
|
44
|
+
Once the gem is installed, you can load the client code and instantiate a client.
|
45
|
+
|
46
|
+
```ruby
|
47
|
+
# Load the client
|
48
|
+
require "google/apis/networkconnectivity_v1alpha1"
|
49
|
+
|
50
|
+
# Create a client object
|
51
|
+
client = Google::Apis::NetworkconnectivityV1alpha1::NetworkconnectivityService.new
|
52
|
+
|
53
|
+
# Authenticate calls
|
54
|
+
client.authentication = # ... use the googleauth gem to create credentials
|
55
|
+
```
|
56
|
+
|
57
|
+
See the class reference docs for information on the methods you can call from a client.
|
58
|
+
|
59
|
+
## Documentation
|
60
|
+
|
61
|
+
More detailed descriptions of the Google simple REST clients are available in two documents.
|
62
|
+
|
63
|
+
* The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
|
64
|
+
* The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
|
65
|
+
|
66
|
+
(Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Networkconnectivity service in particular.)
|
67
|
+
|
68
|
+
For reference information on specific calls in the Network Connectivity API, see the {Google::Apis::NetworkconnectivityV1alpha1::NetworkconnectivityService class reference docs}.
|
69
|
+
|
70
|
+
## Which client should I use?
|
71
|
+
|
72
|
+
Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**.
|
73
|
+
|
74
|
+
This library, `google-apis-networkconnectivity_v1alpha1`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-<servicename>_<serviceversion>`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward.
|
75
|
+
|
76
|
+
Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients.
|
77
|
+
|
78
|
+
Gem names for modern clients are often of the form `google-cloud-<service_name>`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud-<service_name>-<version>`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended.
|
79
|
+
|
80
|
+
**For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure.
|
81
|
+
|
82
|
+
The [product documentation](https://cloud.google.com/network-connectivity/docs) may provide guidance regarding the preferred client library to use.
|
83
|
+
|
84
|
+
## Supported Ruby versions
|
85
|
+
|
86
|
+
This library is supported on Ruby 2.5+.
|
87
|
+
|
88
|
+
Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Currently, this means Ruby 2.5 and later. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule.
|
89
|
+
|
90
|
+
## License
|
91
|
+
|
92
|
+
This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}.
|
93
|
+
|
94
|
+
## Support
|
95
|
+
|
96
|
+
Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
|
@@ -0,0 +1,15 @@
|
|
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 "google/apis/networkconnectivity_v1alpha1"
|
@@ -0,0 +1,37 @@
|
|
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 'google/apis/networkconnectivity_v1alpha1/service.rb'
|
16
|
+
require 'google/apis/networkconnectivity_v1alpha1/classes.rb'
|
17
|
+
require 'google/apis/networkconnectivity_v1alpha1/representations.rb'
|
18
|
+
require 'google/apis/networkconnectivity_v1alpha1/gem_version.rb'
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Apis
|
22
|
+
# Network Connectivity API
|
23
|
+
#
|
24
|
+
# The Network Connectivity API will be home to various services which provide
|
25
|
+
# information pertaining to network connectivity.
|
26
|
+
#
|
27
|
+
# @see https://cloud.google.com/network-connectivity/docs
|
28
|
+
module NetworkconnectivityV1alpha1
|
29
|
+
# Version of the Network Connectivity API this client connects to.
|
30
|
+
# This is NOT the gem version.
|
31
|
+
VERSION = 'V1alpha1'
|
32
|
+
|
33
|
+
# View and manage your data across Google Cloud Platform services
|
34
|
+
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,2044 @@
|
|
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 NetworkconnectivityV1alpha1
|
24
|
+
|
25
|
+
# The allowed types for [VALUE] in a `[KEY]:[VALUE]` attribute.
|
26
|
+
class AttributeValue
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# A Boolean value represented by `true` or `false`.
|
30
|
+
# Corresponds to the JSON property `boolValue`
|
31
|
+
# @return [Boolean]
|
32
|
+
attr_accessor :bool_value
|
33
|
+
alias_method :bool_value?, :bool_value
|
34
|
+
|
35
|
+
# A 64-bit signed integer.
|
36
|
+
# Corresponds to the JSON property `intValue`
|
37
|
+
# @return [Fixnum]
|
38
|
+
attr_accessor :int_value
|
39
|
+
|
40
|
+
# Represents a string that might be shortened to a specified length.
|
41
|
+
# Corresponds to the JSON property `stringValue`
|
42
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::TruncatableString]
|
43
|
+
attr_accessor :string_value
|
44
|
+
|
45
|
+
def initialize(**args)
|
46
|
+
update!(**args)
|
47
|
+
end
|
48
|
+
|
49
|
+
# Update properties of this object
|
50
|
+
def update!(**args)
|
51
|
+
@bool_value = args[:bool_value] if args.key?(:bool_value)
|
52
|
+
@int_value = args[:int_value] if args.key?(:int_value)
|
53
|
+
@string_value = args[:string_value] if args.key?(:string_value)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
# A set of attributes, each in the format `[KEY]:[VALUE]`.
|
58
|
+
class Attributes
|
59
|
+
include Google::Apis::Core::Hashable
|
60
|
+
|
61
|
+
# The set of attributes. Each attribute's key can be up to 128 bytes long. The
|
62
|
+
# value can be a string up to 256 bytes, a signed 64-bit integer, or the Boolean
|
63
|
+
# values `true` and `false`. For example: "/instance_id": "my-instance" "/http/
|
64
|
+
# user_agent": "" "/http/request_bytes": 300 "abc.com/myattribute": true
|
65
|
+
# Corresponds to the JSON property `attributeMap`
|
66
|
+
# @return [Hash<String,Google::Apis::NetworkconnectivityV1alpha1::AttributeValue>]
|
67
|
+
attr_accessor :attribute_map
|
68
|
+
|
69
|
+
# The number of attributes that were discarded. Attributes can be discarded
|
70
|
+
# because their keys are too long or because there are too many attributes. If
|
71
|
+
# this value is 0 then all attributes are valid.
|
72
|
+
# Corresponds to the JSON property `droppedAttributesCount`
|
73
|
+
# @return [Fixnum]
|
74
|
+
attr_accessor :dropped_attributes_count
|
75
|
+
|
76
|
+
def initialize(**args)
|
77
|
+
update!(**args)
|
78
|
+
end
|
79
|
+
|
80
|
+
# Update properties of this object
|
81
|
+
def update!(**args)
|
82
|
+
@attribute_map = args[:attribute_map] if args.key?(:attribute_map)
|
83
|
+
@dropped_attributes_count = args[:dropped_attributes_count] if args.key?(:dropped_attributes_count)
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
# Specifies the audit configuration for a service. The configuration determines
|
88
|
+
# which permission types are logged, and what identities, if any, are exempted
|
89
|
+
# from logging. An AuditConfig must have one or more AuditLogConfigs. If there
|
90
|
+
# are AuditConfigs for both `allServices` and a specific service, the union of
|
91
|
+
# the two AuditConfigs is used for that service: the log_types specified in each
|
92
|
+
# AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
|
93
|
+
# exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
|
94
|
+
# service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
|
95
|
+
# exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
|
96
|
+
# ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
|
97
|
+
# "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
|
98
|
+
# , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
|
99
|
+
# this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
|
100
|
+
# exempts jose@example.com from DATA_READ logging, and aliya@example.com from
|
101
|
+
# DATA_WRITE logging.
|
102
|
+
class AuditConfig
|
103
|
+
include Google::Apis::Core::Hashable
|
104
|
+
|
105
|
+
# The configuration for logging of each type of permission.
|
106
|
+
# Corresponds to the JSON property `auditLogConfigs`
|
107
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::AuditLogConfig>]
|
108
|
+
attr_accessor :audit_log_configs
|
109
|
+
|
110
|
+
# Specifies a service that will be enabled for audit logging. For example, `
|
111
|
+
# storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
|
112
|
+
# value that covers all services.
|
113
|
+
# Corresponds to the JSON property `service`
|
114
|
+
# @return [String]
|
115
|
+
attr_accessor :service
|
116
|
+
|
117
|
+
def initialize(**args)
|
118
|
+
update!(**args)
|
119
|
+
end
|
120
|
+
|
121
|
+
# Update properties of this object
|
122
|
+
def update!(**args)
|
123
|
+
@audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
|
124
|
+
@service = args[:service] if args.key?(:service)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
# Provides the configuration for logging a type of permissions. Example: ` "
|
129
|
+
# audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
|
130
|
+
# jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
|
131
|
+
# DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
|
132
|
+
# DATA_READ logging.
|
133
|
+
class AuditLogConfig
|
134
|
+
include Google::Apis::Core::Hashable
|
135
|
+
|
136
|
+
# Specifies the identities that do not cause logging for this type of permission.
|
137
|
+
# Follows the same format of Binding.members.
|
138
|
+
# Corresponds to the JSON property `exemptedMembers`
|
139
|
+
# @return [Array<String>]
|
140
|
+
attr_accessor :exempted_members
|
141
|
+
|
142
|
+
# The log type that this config enables.
|
143
|
+
# Corresponds to the JSON property `logType`
|
144
|
+
# @return [String]
|
145
|
+
attr_accessor :log_type
|
146
|
+
|
147
|
+
def initialize(**args)
|
148
|
+
update!(**args)
|
149
|
+
end
|
150
|
+
|
151
|
+
# Update properties of this object
|
152
|
+
def update!(**args)
|
153
|
+
@exempted_members = args[:exempted_members] if args.key?(:exempted_members)
|
154
|
+
@log_type = args[:log_type] if args.key?(:log_type)
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
# Message for reporting billing requests through Eventstream.
|
159
|
+
class BillingView
|
160
|
+
include Google::Apis::Core::Hashable
|
161
|
+
|
162
|
+
# Billing requests to be reported for cloud.eventstream.v2.ResourceEvent Each
|
163
|
+
# request contains billing operations to be reported under a service name. See
|
164
|
+
# go/billing-view-construction for documentation on constructing billing view
|
165
|
+
# report requests.
|
166
|
+
# Corresponds to the JSON property `reportRequests`
|
167
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::ReportRequest>]
|
168
|
+
attr_accessor :report_requests
|
169
|
+
|
170
|
+
def initialize(**args)
|
171
|
+
update!(**args)
|
172
|
+
end
|
173
|
+
|
174
|
+
# Update properties of this object
|
175
|
+
def update!(**args)
|
176
|
+
@report_requests = args[:report_requests] if args.key?(:report_requests)
|
177
|
+
end
|
178
|
+
end
|
179
|
+
|
180
|
+
# Associates `members` with a `role`.
|
181
|
+
class Binding
|
182
|
+
include Google::Apis::Core::Hashable
|
183
|
+
|
184
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
185
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
186
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
187
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
188
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
189
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
190
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
191
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
192
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
193
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
194
|
+
# string" description: "Create a notification string with a timestamp."
|
195
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
196
|
+
# exact variables and functions that may be referenced within an expression are
|
197
|
+
# determined by the service that evaluates it. See the service documentation for
|
198
|
+
# additional information.
|
199
|
+
# Corresponds to the JSON property `condition`
|
200
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::Expr]
|
201
|
+
attr_accessor :condition
|
202
|
+
|
203
|
+
# Specifies the identities requesting access for a Cloud Platform resource. `
|
204
|
+
# members` can have the following values: * `allUsers`: A special identifier
|
205
|
+
# that represents anyone who is on the internet; with or without a Google
|
206
|
+
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
207
|
+
# anyone who is authenticated with a Google account or a service account. * `
|
208
|
+
# user:`emailid``: An email address that represents a specific Google account.
|
209
|
+
# For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
|
210
|
+
# address that represents a service account. For example, `my-other-app@appspot.
|
211
|
+
# gserviceaccount.com`. * `group:`emailid``: An email address that represents a
|
212
|
+
# Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
|
213
|
+
# `uniqueid``: An email address (plus unique identifier) representing a user
|
214
|
+
# that has been recently deleted. For example, `alice@example.com?uid=
|
215
|
+
# 123456789012345678901`. If the user is recovered, this value reverts to `user:`
|
216
|
+
# emailid`` and the recovered user retains the role in the binding. * `deleted:
|
217
|
+
# serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
|
218
|
+
# identifier) representing a service account that has been recently deleted. For
|
219
|
+
# example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
|
220
|
+
# If the service account is undeleted, this value reverts to `serviceAccount:`
|
221
|
+
# emailid`` and the undeleted service account retains the role in the binding. *
|
222
|
+
# `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
|
223
|
+
# identifier) representing a Google group that has been recently deleted. For
|
224
|
+
# example, `admins@example.com?uid=123456789012345678901`. If the group is
|
225
|
+
# recovered, this value reverts to `group:`emailid`` and the recovered group
|
226
|
+
# retains the role in the binding. * `domain:`domain``: The G Suite domain (
|
227
|
+
# primary) that represents all the users of that domain. For example, `google.
|
228
|
+
# com` or `example.com`.
|
229
|
+
# Corresponds to the JSON property `members`
|
230
|
+
# @return [Array<String>]
|
231
|
+
attr_accessor :members
|
232
|
+
|
233
|
+
# Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
|
234
|
+
# , or `roles/owner`.
|
235
|
+
# Corresponds to the JSON property `role`
|
236
|
+
# @return [String]
|
237
|
+
attr_accessor :role
|
238
|
+
|
239
|
+
def initialize(**args)
|
240
|
+
update!(**args)
|
241
|
+
end
|
242
|
+
|
243
|
+
# Update properties of this object
|
244
|
+
def update!(**args)
|
245
|
+
@condition = args[:condition] if args.key?(:condition)
|
246
|
+
@members = args[:members] if args.key?(:members)
|
247
|
+
@role = args[:role] if args.key?(:role)
|
248
|
+
end
|
249
|
+
end
|
250
|
+
|
251
|
+
# Distribution represents a frequency distribution of double-valued sample
|
252
|
+
# points. It contains the size of the population of sample points plus
|
253
|
+
# additional optional information: - the arithmetic mean of the samples - the
|
254
|
+
# minimum and maximum of the samples - the sum-squared-deviation of the samples,
|
255
|
+
# used to compute variance - a histogram of the values of the sample points
|
256
|
+
class Distribution
|
257
|
+
include Google::Apis::Core::Hashable
|
258
|
+
|
259
|
+
# The number of samples in each histogram bucket. `bucket_counts` are optional.
|
260
|
+
# If present, they must sum to the `count` value. The buckets are defined below
|
261
|
+
# in `bucket_option`. There are N buckets. `bucket_counts[0]` is the number of
|
262
|
+
# samples in the underflow bucket. `bucket_counts[1]` to `bucket_counts[N-1]`
|
263
|
+
# are the numbers of samples in each of the finite buckets. And `bucket_counts[N]
|
264
|
+
# is the number of samples in the overflow bucket. See the comments of `
|
265
|
+
# bucket_option` below for more details. Any suffix of trailing zeros may be
|
266
|
+
# omitted.
|
267
|
+
# Corresponds to the JSON property `bucketCounts`
|
268
|
+
# @return [Array<Fixnum>]
|
269
|
+
attr_accessor :bucket_counts
|
270
|
+
|
271
|
+
# The total number of samples in the distribution. Must be >= 0.
|
272
|
+
# Corresponds to the JSON property `count`
|
273
|
+
# @return [Fixnum]
|
274
|
+
attr_accessor :count
|
275
|
+
|
276
|
+
# Example points. Must be in increasing order of `value` field.
|
277
|
+
# Corresponds to the JSON property `exemplars`
|
278
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Exemplar>]
|
279
|
+
attr_accessor :exemplars
|
280
|
+
|
281
|
+
# Describing buckets with arbitrary user-provided width.
|
282
|
+
# Corresponds to the JSON property `explicitBuckets`
|
283
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::ExplicitBuckets]
|
284
|
+
attr_accessor :explicit_buckets
|
285
|
+
|
286
|
+
# Describing buckets with exponentially growing width.
|
287
|
+
# Corresponds to the JSON property `exponentialBuckets`
|
288
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::ExponentialBuckets]
|
289
|
+
attr_accessor :exponential_buckets
|
290
|
+
|
291
|
+
# Describing buckets with constant width.
|
292
|
+
# Corresponds to the JSON property `linearBuckets`
|
293
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::LinearBuckets]
|
294
|
+
attr_accessor :linear_buckets
|
295
|
+
|
296
|
+
# The maximum of the population of values. Ignored if `count` is zero.
|
297
|
+
# Corresponds to the JSON property `maximum`
|
298
|
+
# @return [Float]
|
299
|
+
attr_accessor :maximum
|
300
|
+
|
301
|
+
# The arithmetic mean of the samples in the distribution. If `count` is zero
|
302
|
+
# then this field must be zero.
|
303
|
+
# Corresponds to the JSON property `mean`
|
304
|
+
# @return [Float]
|
305
|
+
attr_accessor :mean
|
306
|
+
|
307
|
+
# The minimum of the population of values. Ignored if `count` is zero.
|
308
|
+
# Corresponds to the JSON property `minimum`
|
309
|
+
# @return [Float]
|
310
|
+
attr_accessor :minimum
|
311
|
+
|
312
|
+
# The sum of squared deviations from the mean: Sum[i=1..count]((x_i - mean)^2)
|
313
|
+
# where each x_i is a sample values. If `count` is zero then this field must be
|
314
|
+
# zero, otherwise validation of the request fails.
|
315
|
+
# Corresponds to the JSON property `sumOfSquaredDeviation`
|
316
|
+
# @return [Float]
|
317
|
+
attr_accessor :sum_of_squared_deviation
|
318
|
+
|
319
|
+
def initialize(**args)
|
320
|
+
update!(**args)
|
321
|
+
end
|
322
|
+
|
323
|
+
# Update properties of this object
|
324
|
+
def update!(**args)
|
325
|
+
@bucket_counts = args[:bucket_counts] if args.key?(:bucket_counts)
|
326
|
+
@count = args[:count] if args.key?(:count)
|
327
|
+
@exemplars = args[:exemplars] if args.key?(:exemplars)
|
328
|
+
@explicit_buckets = args[:explicit_buckets] if args.key?(:explicit_buckets)
|
329
|
+
@exponential_buckets = args[:exponential_buckets] if args.key?(:exponential_buckets)
|
330
|
+
@linear_buckets = args[:linear_buckets] if args.key?(:linear_buckets)
|
331
|
+
@maximum = args[:maximum] if args.key?(:maximum)
|
332
|
+
@mean = args[:mean] if args.key?(:mean)
|
333
|
+
@minimum = args[:minimum] if args.key?(:minimum)
|
334
|
+
@sum_of_squared_deviation = args[:sum_of_squared_deviation] if args.key?(:sum_of_squared_deviation)
|
335
|
+
end
|
336
|
+
end
|
337
|
+
|
338
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
339
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
340
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
341
|
+
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
342
|
+
# `Empty` is empty JSON object ````.
|
343
|
+
class Empty
|
344
|
+
include Google::Apis::Core::Hashable
|
345
|
+
|
346
|
+
def initialize(**args)
|
347
|
+
update!(**args)
|
348
|
+
end
|
349
|
+
|
350
|
+
# Update properties of this object
|
351
|
+
def update!(**args)
|
352
|
+
end
|
353
|
+
end
|
354
|
+
|
355
|
+
# Exemplars are example points that may be used to annotate aggregated
|
356
|
+
# distribution values. They are metadata that gives information about a
|
357
|
+
# particular value added to a Distribution bucket, such as a trace ID that was
|
358
|
+
# active when a value was added. They may contain further information, such as a
|
359
|
+
# example values and timestamps, origin, etc.
|
360
|
+
class Exemplar
|
361
|
+
include Google::Apis::Core::Hashable
|
362
|
+
|
363
|
+
# Contextual information about the example value. Examples are: Trace: type.
|
364
|
+
# googleapis.com/google.monitoring.v3.SpanContext Literal string: type.
|
365
|
+
# googleapis.com/google.protobuf.StringValue Labels dropped during aggregation:
|
366
|
+
# type.googleapis.com/google.monitoring.v3.DroppedLabels There may be only a
|
367
|
+
# single attachment of any given message type in a single exemplar, and this is
|
368
|
+
# enforced by the system.
|
369
|
+
# Corresponds to the JSON property `attachments`
|
370
|
+
# @return [Array<Hash<String,Object>>]
|
371
|
+
attr_accessor :attachments
|
372
|
+
|
373
|
+
# The observation (sampling) time of the above value.
|
374
|
+
# Corresponds to the JSON property `timestamp`
|
375
|
+
# @return [String]
|
376
|
+
attr_accessor :timestamp
|
377
|
+
|
378
|
+
# Value of the exemplar point. This value determines to which bucket the
|
379
|
+
# exemplar belongs.
|
380
|
+
# Corresponds to the JSON property `value`
|
381
|
+
# @return [Float]
|
382
|
+
attr_accessor :value
|
383
|
+
|
384
|
+
def initialize(**args)
|
385
|
+
update!(**args)
|
386
|
+
end
|
387
|
+
|
388
|
+
# Update properties of this object
|
389
|
+
def update!(**args)
|
390
|
+
@attachments = args[:attachments] if args.key?(:attachments)
|
391
|
+
@timestamp = args[:timestamp] if args.key?(:timestamp)
|
392
|
+
@value = args[:value] if args.key?(:value)
|
393
|
+
end
|
394
|
+
end
|
395
|
+
|
396
|
+
# Describing buckets with arbitrary user-provided width.
|
397
|
+
class ExplicitBuckets
|
398
|
+
include Google::Apis::Core::Hashable
|
399
|
+
|
400
|
+
# 'bound' is a list of strictly increasing boundaries between buckets. Note that
|
401
|
+
# a list of length N-1 defines N buckets because of fenceposting. See comments
|
402
|
+
# on `bucket_options` for details. The i'th finite bucket covers the interval [
|
403
|
+
# bound[i-1], bound[i]) where i ranges from 1 to bound_size() - 1. Note that
|
404
|
+
# there are no finite buckets at all if 'bound' only contains a single element;
|
405
|
+
# in that special case the single bound defines the boundary between the
|
406
|
+
# underflow and overflow buckets. bucket number lower bound upper bound i == 0 (
|
407
|
+
# underflow) -inf bound[i] 0 < i < bound_size() bound[i-1] bound[i] i ==
|
408
|
+
# bound_size() (overflow) bound[i-1] +inf
|
409
|
+
# Corresponds to the JSON property `bounds`
|
410
|
+
# @return [Array<Float>]
|
411
|
+
attr_accessor :bounds
|
412
|
+
|
413
|
+
def initialize(**args)
|
414
|
+
update!(**args)
|
415
|
+
end
|
416
|
+
|
417
|
+
# Update properties of this object
|
418
|
+
def update!(**args)
|
419
|
+
@bounds = args[:bounds] if args.key?(:bounds)
|
420
|
+
end
|
421
|
+
end
|
422
|
+
|
423
|
+
# Describing buckets with exponentially growing width.
|
424
|
+
class ExponentialBuckets
|
425
|
+
include Google::Apis::Core::Hashable
|
426
|
+
|
427
|
+
# The i'th exponential bucket covers the interval [scale * growth_factor^(i-1),
|
428
|
+
# scale * growth_factor^i) where i ranges from 1 to num_finite_buckets inclusive.
|
429
|
+
# Must be larger than 1.0.
|
430
|
+
# Corresponds to the JSON property `growthFactor`
|
431
|
+
# @return [Float]
|
432
|
+
attr_accessor :growth_factor
|
433
|
+
|
434
|
+
# The number of finite buckets. With the underflow and overflow buckets, the
|
435
|
+
# total number of buckets is `num_finite_buckets` + 2. See comments on `
|
436
|
+
# bucket_options` for details.
|
437
|
+
# Corresponds to the JSON property `numFiniteBuckets`
|
438
|
+
# @return [Fixnum]
|
439
|
+
attr_accessor :num_finite_buckets
|
440
|
+
|
441
|
+
# The i'th exponential bucket covers the interval [scale * growth_factor^(i-1),
|
442
|
+
# scale * growth_factor^i) where i ranges from 1 to num_finite_buckets inclusive.
|
443
|
+
# Must be > 0.
|
444
|
+
# Corresponds to the JSON property `scale`
|
445
|
+
# @return [Float]
|
446
|
+
attr_accessor :scale
|
447
|
+
|
448
|
+
def initialize(**args)
|
449
|
+
update!(**args)
|
450
|
+
end
|
451
|
+
|
452
|
+
# Update properties of this object
|
453
|
+
def update!(**args)
|
454
|
+
@growth_factor = args[:growth_factor] if args.key?(:growth_factor)
|
455
|
+
@num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
|
456
|
+
@scale = args[:scale] if args.key?(:scale)
|
457
|
+
end
|
458
|
+
end
|
459
|
+
|
460
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
461
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
462
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
463
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
464
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
465
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
466
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
467
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
468
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
469
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
470
|
+
# string" description: "Create a notification string with a timestamp."
|
471
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
472
|
+
# exact variables and functions that may be referenced within an expression are
|
473
|
+
# determined by the service that evaluates it. See the service documentation for
|
474
|
+
# additional information.
|
475
|
+
class Expr
|
476
|
+
include Google::Apis::Core::Hashable
|
477
|
+
|
478
|
+
# Optional. Description of the expression. This is a longer text which describes
|
479
|
+
# the expression, e.g. when hovered over it in a UI.
|
480
|
+
# Corresponds to the JSON property `description`
|
481
|
+
# @return [String]
|
482
|
+
attr_accessor :description
|
483
|
+
|
484
|
+
# Textual representation of an expression in Common Expression Language syntax.
|
485
|
+
# Corresponds to the JSON property `expression`
|
486
|
+
# @return [String]
|
487
|
+
attr_accessor :expression
|
488
|
+
|
489
|
+
# Optional. String indicating the location of the expression for error reporting,
|
490
|
+
# e.g. a file name and a position in the file.
|
491
|
+
# Corresponds to the JSON property `location`
|
492
|
+
# @return [String]
|
493
|
+
attr_accessor :location
|
494
|
+
|
495
|
+
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
496
|
+
# This can be used e.g. in UIs which allow to enter the expression.
|
497
|
+
# Corresponds to the JSON property `title`
|
498
|
+
# @return [String]
|
499
|
+
attr_accessor :title
|
500
|
+
|
501
|
+
def initialize(**args)
|
502
|
+
update!(**args)
|
503
|
+
end
|
504
|
+
|
505
|
+
# Update properties of this object
|
506
|
+
def update!(**args)
|
507
|
+
@description = args[:description] if args.key?(:description)
|
508
|
+
@expression = args[:expression] if args.key?(:expression)
|
509
|
+
@location = args[:location] if args.key?(:location)
|
510
|
+
@title = args[:title] if args.key?(:title)
|
511
|
+
end
|
512
|
+
end
|
513
|
+
|
514
|
+
# The request message for Operations.CancelOperation.
|
515
|
+
class GoogleLongrunningCancelOperationRequest
|
516
|
+
include Google::Apis::Core::Hashable
|
517
|
+
|
518
|
+
def initialize(**args)
|
519
|
+
update!(**args)
|
520
|
+
end
|
521
|
+
|
522
|
+
# Update properties of this object
|
523
|
+
def update!(**args)
|
524
|
+
end
|
525
|
+
end
|
526
|
+
|
527
|
+
# The response message for Operations.ListOperations.
|
528
|
+
class GoogleLongrunningListOperationsResponse
|
529
|
+
include Google::Apis::Core::Hashable
|
530
|
+
|
531
|
+
# The standard List next-page token.
|
532
|
+
# Corresponds to the JSON property `nextPageToken`
|
533
|
+
# @return [String]
|
534
|
+
attr_accessor :next_page_token
|
535
|
+
|
536
|
+
# A list of operations that matches the specified filter in the request.
|
537
|
+
# Corresponds to the JSON property `operations`
|
538
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::GoogleLongrunningOperation>]
|
539
|
+
attr_accessor :operations
|
540
|
+
|
541
|
+
def initialize(**args)
|
542
|
+
update!(**args)
|
543
|
+
end
|
544
|
+
|
545
|
+
# Update properties of this object
|
546
|
+
def update!(**args)
|
547
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
548
|
+
@operations = args[:operations] if args.key?(:operations)
|
549
|
+
end
|
550
|
+
end
|
551
|
+
|
552
|
+
# This resource represents a long-running operation that is the result of a
|
553
|
+
# network API call.
|
554
|
+
class GoogleLongrunningOperation
|
555
|
+
include Google::Apis::Core::Hashable
|
556
|
+
|
557
|
+
# If the value is `false`, it means the operation is still in progress. If `true`
|
558
|
+
# , the operation is completed, and either `error` or `response` is available.
|
559
|
+
# Corresponds to the JSON property `done`
|
560
|
+
# @return [Boolean]
|
561
|
+
attr_accessor :done
|
562
|
+
alias_method :done?, :done
|
563
|
+
|
564
|
+
# The `Status` type defines a logical error model that is suitable for different
|
565
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
566
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
567
|
+
# data: error code, error message, and error details. You can find out more
|
568
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
569
|
+
# //cloud.google.com/apis/design/errors).
|
570
|
+
# Corresponds to the JSON property `error`
|
571
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::GoogleRpcStatus]
|
572
|
+
attr_accessor :error
|
573
|
+
|
574
|
+
# Service-specific metadata associated with the operation. It typically contains
|
575
|
+
# progress information and common metadata such as create time. Some services
|
576
|
+
# might not provide such metadata. Any method that returns a long-running
|
577
|
+
# operation should document the metadata type, if any.
|
578
|
+
# Corresponds to the JSON property `metadata`
|
579
|
+
# @return [Hash<String,Object>]
|
580
|
+
attr_accessor :metadata
|
581
|
+
|
582
|
+
# The server-assigned name, which is only unique within the same service that
|
583
|
+
# originally returns it. If you use the default HTTP mapping, the `name` should
|
584
|
+
# be a resource name ending with `operations/`unique_id``.
|
585
|
+
# Corresponds to the JSON property `name`
|
586
|
+
# @return [String]
|
587
|
+
attr_accessor :name
|
588
|
+
|
589
|
+
# The normal response of the operation in case of success. If the original
|
590
|
+
# method returns no data on success, such as `Delete`, the response is `google.
|
591
|
+
# protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
|
592
|
+
# the response should be the resource. For other methods, the response should
|
593
|
+
# have the type `XxxResponse`, where `Xxx` is the original method name. For
|
594
|
+
# example, if the original method name is `TakeSnapshot()`, the inferred
|
595
|
+
# response type is `TakeSnapshotResponse`.
|
596
|
+
# Corresponds to the JSON property `response`
|
597
|
+
# @return [Hash<String,Object>]
|
598
|
+
attr_accessor :response
|
599
|
+
|
600
|
+
def initialize(**args)
|
601
|
+
update!(**args)
|
602
|
+
end
|
603
|
+
|
604
|
+
# Update properties of this object
|
605
|
+
def update!(**args)
|
606
|
+
@done = args[:done] if args.key?(:done)
|
607
|
+
@error = args[:error] if args.key?(:error)
|
608
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
609
|
+
@name = args[:name] if args.key?(:name)
|
610
|
+
@response = args[:response] if args.key?(:response)
|
611
|
+
end
|
612
|
+
end
|
613
|
+
|
614
|
+
# The `Status` type defines a logical error model that is suitable for different
|
615
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
616
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
617
|
+
# data: error code, error message, and error details. You can find out more
|
618
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
619
|
+
# //cloud.google.com/apis/design/errors).
|
620
|
+
class GoogleRpcStatus
|
621
|
+
include Google::Apis::Core::Hashable
|
622
|
+
|
623
|
+
# The status code, which should be an enum value of google.rpc.Code.
|
624
|
+
# Corresponds to the JSON property `code`
|
625
|
+
# @return [Fixnum]
|
626
|
+
attr_accessor :code
|
627
|
+
|
628
|
+
# A list of messages that carry the error details. There is a common set of
|
629
|
+
# message types for APIs to use.
|
630
|
+
# Corresponds to the JSON property `details`
|
631
|
+
# @return [Array<Hash<String,Object>>]
|
632
|
+
attr_accessor :details
|
633
|
+
|
634
|
+
# A developer-facing error message, which should be in English. Any user-facing
|
635
|
+
# error message should be localized and sent in the google.rpc.Status.details
|
636
|
+
# field, or localized by the client.
|
637
|
+
# Corresponds to the JSON property `message`
|
638
|
+
# @return [String]
|
639
|
+
attr_accessor :message
|
640
|
+
|
641
|
+
def initialize(**args)
|
642
|
+
update!(**args)
|
643
|
+
end
|
644
|
+
|
645
|
+
# Update properties of this object
|
646
|
+
def update!(**args)
|
647
|
+
@code = args[:code] if args.key?(:code)
|
648
|
+
@details = args[:details] if args.key?(:details)
|
649
|
+
@message = args[:message] if args.key?(:message)
|
650
|
+
end
|
651
|
+
end
|
652
|
+
|
653
|
+
# A common proto for logging HTTP requests. Only contains semantics defined by
|
654
|
+
# the HTTP specification. Product-specific logging information MUST be defined
|
655
|
+
# in a separate message.
|
656
|
+
class HttpRequest
|
657
|
+
include Google::Apis::Core::Hashable
|
658
|
+
|
659
|
+
# The number of HTTP response bytes inserted into cache. Set only when a cache
|
660
|
+
# fill was attempted.
|
661
|
+
# Corresponds to the JSON property `cacheFillBytes`
|
662
|
+
# @return [Fixnum]
|
663
|
+
attr_accessor :cache_fill_bytes
|
664
|
+
|
665
|
+
# Whether or not an entity was served from cache (with or without validation).
|
666
|
+
# Corresponds to the JSON property `cacheHit`
|
667
|
+
# @return [Boolean]
|
668
|
+
attr_accessor :cache_hit
|
669
|
+
alias_method :cache_hit?, :cache_hit
|
670
|
+
|
671
|
+
# Whether or not a cache lookup was attempted.
|
672
|
+
# Corresponds to the JSON property `cacheLookup`
|
673
|
+
# @return [Boolean]
|
674
|
+
attr_accessor :cache_lookup
|
675
|
+
alias_method :cache_lookup?, :cache_lookup
|
676
|
+
|
677
|
+
# Whether or not the response was validated with the origin server before being
|
678
|
+
# served from cache. This field is only meaningful if `cache_hit` is True.
|
679
|
+
# Corresponds to the JSON property `cacheValidatedWithOriginServer`
|
680
|
+
# @return [Boolean]
|
681
|
+
attr_accessor :cache_validated_with_origin_server
|
682
|
+
alias_method :cache_validated_with_origin_server?, :cache_validated_with_origin_server
|
683
|
+
|
684
|
+
# The request processing latency on the server, from the time the request was
|
685
|
+
# received until the response was sent.
|
686
|
+
# Corresponds to the JSON property `latency`
|
687
|
+
# @return [String]
|
688
|
+
attr_accessor :latency
|
689
|
+
|
690
|
+
# Protocol used for the request. Examples: "HTTP/1.1", "HTTP/2", "websocket"
|
691
|
+
# Corresponds to the JSON property `protocol`
|
692
|
+
# @return [String]
|
693
|
+
attr_accessor :protocol
|
694
|
+
|
695
|
+
# The referer URL of the request, as defined in [HTTP/1.1 Header Field
|
696
|
+
# Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html).
|
697
|
+
# Corresponds to the JSON property `referer`
|
698
|
+
# @return [String]
|
699
|
+
attr_accessor :referer
|
700
|
+
|
701
|
+
# The IP address (IPv4 or IPv6) of the client that issued the HTTP request.
|
702
|
+
# Examples: `"192.168.1.1"`, `"FE80::0202:B3FF:FE1E:8329"`.
|
703
|
+
# Corresponds to the JSON property `remoteIp`
|
704
|
+
# @return [String]
|
705
|
+
attr_accessor :remote_ip
|
706
|
+
|
707
|
+
# The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`.
|
708
|
+
# Corresponds to the JSON property `requestMethod`
|
709
|
+
# @return [String]
|
710
|
+
attr_accessor :request_method
|
711
|
+
|
712
|
+
# The size of the HTTP request message in bytes, including the request headers
|
713
|
+
# and the request body.
|
714
|
+
# Corresponds to the JSON property `requestSize`
|
715
|
+
# @return [Fixnum]
|
716
|
+
attr_accessor :request_size
|
717
|
+
|
718
|
+
# The scheme (http, https), the host name, the path, and the query portion of
|
719
|
+
# the URL that was requested. Example: `"http://example.com/some/info?color=red"`
|
720
|
+
# .
|
721
|
+
# Corresponds to the JSON property `requestUrl`
|
722
|
+
# @return [String]
|
723
|
+
attr_accessor :request_url
|
724
|
+
|
725
|
+
# The size of the HTTP response message sent back to the client, in bytes,
|
726
|
+
# including the response headers and the response body.
|
727
|
+
# Corresponds to the JSON property `responseSize`
|
728
|
+
# @return [Fixnum]
|
729
|
+
attr_accessor :response_size
|
730
|
+
|
731
|
+
# The IP address (IPv4 or IPv6) of the origin server that the request was sent
|
732
|
+
# to.
|
733
|
+
# Corresponds to the JSON property `serverIp`
|
734
|
+
# @return [String]
|
735
|
+
attr_accessor :server_ip
|
736
|
+
|
737
|
+
# The response code indicating the status of the response. Examples: 200, 404.
|
738
|
+
# Corresponds to the JSON property `status`
|
739
|
+
# @return [Fixnum]
|
740
|
+
attr_accessor :status
|
741
|
+
|
742
|
+
# The user agent sent by the client. Example: `"Mozilla/4.0 (compatible; MSIE 6.
|
743
|
+
# 0; Windows 98; Q312461; .NET CLR 1.0.3705)"`.
|
744
|
+
# Corresponds to the JSON property `userAgent`
|
745
|
+
# @return [String]
|
746
|
+
attr_accessor :user_agent
|
747
|
+
|
748
|
+
def initialize(**args)
|
749
|
+
update!(**args)
|
750
|
+
end
|
751
|
+
|
752
|
+
# Update properties of this object
|
753
|
+
def update!(**args)
|
754
|
+
@cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes)
|
755
|
+
@cache_hit = args[:cache_hit] if args.key?(:cache_hit)
|
756
|
+
@cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup)
|
757
|
+
@cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server)
|
758
|
+
@latency = args[:latency] if args.key?(:latency)
|
759
|
+
@protocol = args[:protocol] if args.key?(:protocol)
|
760
|
+
@referer = args[:referer] if args.key?(:referer)
|
761
|
+
@remote_ip = args[:remote_ip] if args.key?(:remote_ip)
|
762
|
+
@request_method = args[:request_method] if args.key?(:request_method)
|
763
|
+
@request_size = args[:request_size] if args.key?(:request_size)
|
764
|
+
@request_url = args[:request_url] if args.key?(:request_url)
|
765
|
+
@response_size = args[:response_size] if args.key?(:response_size)
|
766
|
+
@server_ip = args[:server_ip] if args.key?(:server_ip)
|
767
|
+
@status = args[:status] if args.key?(:status)
|
768
|
+
@user_agent = args[:user_agent] if args.key?(:user_agent)
|
769
|
+
end
|
770
|
+
end
|
771
|
+
|
772
|
+
# Network Connectivity Center is a hub-and-spoke abstraction for network
|
773
|
+
# connectivity management in Google Cloud. It reduces operational complexity
|
774
|
+
# through a simple, centralized connectivity management model. Following is the
|
775
|
+
# resource message of a hub.
|
776
|
+
class Hub
|
777
|
+
include Google::Apis::Core::Hashable
|
778
|
+
|
779
|
+
# Time when the Hub was created.
|
780
|
+
# Corresponds to the JSON property `createTime`
|
781
|
+
# @return [String]
|
782
|
+
attr_accessor :create_time
|
783
|
+
|
784
|
+
# Short description of the hub resource.
|
785
|
+
# Corresponds to the JSON property `description`
|
786
|
+
# @return [String]
|
787
|
+
attr_accessor :description
|
788
|
+
|
789
|
+
# User-defined labels.
|
790
|
+
# Corresponds to the JSON property `labels`
|
791
|
+
# @return [Hash<String,String>]
|
792
|
+
attr_accessor :labels
|
793
|
+
|
794
|
+
# Immutable. The name of a Hub resource.
|
795
|
+
# Corresponds to the JSON property `name`
|
796
|
+
# @return [String]
|
797
|
+
attr_accessor :name
|
798
|
+
|
799
|
+
# Output only. A list of the URIs of all attached spokes
|
800
|
+
# Corresponds to the JSON property `spokes`
|
801
|
+
# @return [Array<String>]
|
802
|
+
attr_accessor :spokes
|
803
|
+
|
804
|
+
# Output only. The current lifecycle state of this Hub.
|
805
|
+
# Corresponds to the JSON property `state`
|
806
|
+
# @return [String]
|
807
|
+
attr_accessor :state
|
808
|
+
|
809
|
+
# Output only. Google-generated UUID for this resource. This is unique across
|
810
|
+
# all Hub resources. If a Hub resource is deleted and another with the same name
|
811
|
+
# is created, it gets a different unique_id.
|
812
|
+
# Corresponds to the JSON property `uniqueId`
|
813
|
+
# @return [String]
|
814
|
+
attr_accessor :unique_id
|
815
|
+
|
816
|
+
# Time when the Hub was updated.
|
817
|
+
# Corresponds to the JSON property `updateTime`
|
818
|
+
# @return [String]
|
819
|
+
attr_accessor :update_time
|
820
|
+
|
821
|
+
def initialize(**args)
|
822
|
+
update!(**args)
|
823
|
+
end
|
824
|
+
|
825
|
+
# Update properties of this object
|
826
|
+
def update!(**args)
|
827
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
828
|
+
@description = args[:description] if args.key?(:description)
|
829
|
+
@labels = args[:labels] if args.key?(:labels)
|
830
|
+
@name = args[:name] if args.key?(:name)
|
831
|
+
@spokes = args[:spokes] if args.key?(:spokes)
|
832
|
+
@state = args[:state] if args.key?(:state)
|
833
|
+
@unique_id = args[:unique_id] if args.key?(:unique_id)
|
834
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
835
|
+
end
|
836
|
+
end
|
837
|
+
|
838
|
+
# Describing buckets with constant width.
|
839
|
+
class LinearBuckets
|
840
|
+
include Google::Apis::Core::Hashable
|
841
|
+
|
842
|
+
# The number of finite buckets. With the underflow and overflow buckets, the
|
843
|
+
# total number of buckets is `num_finite_buckets` + 2. See comments on `
|
844
|
+
# bucket_options` for details.
|
845
|
+
# Corresponds to the JSON property `numFiniteBuckets`
|
846
|
+
# @return [Fixnum]
|
847
|
+
attr_accessor :num_finite_buckets
|
848
|
+
|
849
|
+
# The i'th linear bucket covers the interval [offset + (i-1) * width, offset + i
|
850
|
+
# * width) where i ranges from 1 to num_finite_buckets, inclusive.
|
851
|
+
# Corresponds to the JSON property `offset`
|
852
|
+
# @return [Float]
|
853
|
+
attr_accessor :offset
|
854
|
+
|
855
|
+
# The i'th linear bucket covers the interval [offset + (i-1) * width, offset + i
|
856
|
+
# * width) where i ranges from 1 to num_finite_buckets, inclusive. Must be
|
857
|
+
# strictly positive.
|
858
|
+
# Corresponds to the JSON property `width`
|
859
|
+
# @return [Float]
|
860
|
+
attr_accessor :width
|
861
|
+
|
862
|
+
def initialize(**args)
|
863
|
+
update!(**args)
|
864
|
+
end
|
865
|
+
|
866
|
+
# Update properties of this object
|
867
|
+
def update!(**args)
|
868
|
+
@num_finite_buckets = args[:num_finite_buckets] if args.key?(:num_finite_buckets)
|
869
|
+
@offset = args[:offset] if args.key?(:offset)
|
870
|
+
@width = args[:width] if args.key?(:width)
|
871
|
+
end
|
872
|
+
end
|
873
|
+
|
874
|
+
# Response for HubService.ListHubs method.
|
875
|
+
class ListHubsResponse
|
876
|
+
include Google::Apis::Core::Hashable
|
877
|
+
|
878
|
+
# Hubs to be returned.
|
879
|
+
# Corresponds to the JSON property `hubs`
|
880
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Hub>]
|
881
|
+
attr_accessor :hubs
|
882
|
+
|
883
|
+
# The next pagination token in the List response. It should be used as
|
884
|
+
# page_token for the following request. An empty value means no more result.
|
885
|
+
# Corresponds to the JSON property `nextPageToken`
|
886
|
+
# @return [String]
|
887
|
+
attr_accessor :next_page_token
|
888
|
+
|
889
|
+
# Locations that could not be reached.
|
890
|
+
# Corresponds to the JSON property `unreachable`
|
891
|
+
# @return [Array<String>]
|
892
|
+
attr_accessor :unreachable
|
893
|
+
|
894
|
+
def initialize(**args)
|
895
|
+
update!(**args)
|
896
|
+
end
|
897
|
+
|
898
|
+
# Update properties of this object
|
899
|
+
def update!(**args)
|
900
|
+
@hubs = args[:hubs] if args.key?(:hubs)
|
901
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
902
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
903
|
+
end
|
904
|
+
end
|
905
|
+
|
906
|
+
# The response message for Locations.ListLocations.
|
907
|
+
class ListLocationsResponse
|
908
|
+
include Google::Apis::Core::Hashable
|
909
|
+
|
910
|
+
# A list of locations that matches the specified filter in the request.
|
911
|
+
# Corresponds to the JSON property `locations`
|
912
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Location>]
|
913
|
+
attr_accessor :locations
|
914
|
+
|
915
|
+
# The standard List next-page token.
|
916
|
+
# Corresponds to the JSON property `nextPageToken`
|
917
|
+
# @return [String]
|
918
|
+
attr_accessor :next_page_token
|
919
|
+
|
920
|
+
def initialize(**args)
|
921
|
+
update!(**args)
|
922
|
+
end
|
923
|
+
|
924
|
+
# Update properties of this object
|
925
|
+
def update!(**args)
|
926
|
+
@locations = args[:locations] if args.key?(:locations)
|
927
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
928
|
+
end
|
929
|
+
end
|
930
|
+
|
931
|
+
# The response for HubService.ListSpokes.
|
932
|
+
class ListSpokesResponse
|
933
|
+
include Google::Apis::Core::Hashable
|
934
|
+
|
935
|
+
# The next pagination token in the List response. It should be used as
|
936
|
+
# page_token for the following request. An empty value means no more result.
|
937
|
+
# Corresponds to the JSON property `nextPageToken`
|
938
|
+
# @return [String]
|
939
|
+
attr_accessor :next_page_token
|
940
|
+
|
941
|
+
# Spokes to be returned.
|
942
|
+
# Corresponds to the JSON property `spokes`
|
943
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Spoke>]
|
944
|
+
attr_accessor :spokes
|
945
|
+
|
946
|
+
# Locations that could not be reached.
|
947
|
+
# Corresponds to the JSON property `unreachable`
|
948
|
+
# @return [Array<String>]
|
949
|
+
attr_accessor :unreachable
|
950
|
+
|
951
|
+
def initialize(**args)
|
952
|
+
update!(**args)
|
953
|
+
end
|
954
|
+
|
955
|
+
# Update properties of this object
|
956
|
+
def update!(**args)
|
957
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
958
|
+
@spokes = args[:spokes] if args.key?(:spokes)
|
959
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
960
|
+
end
|
961
|
+
end
|
962
|
+
|
963
|
+
# A resource that represents Google Cloud Platform location.
|
964
|
+
class Location
|
965
|
+
include Google::Apis::Core::Hashable
|
966
|
+
|
967
|
+
# The friendly name for this location, typically a nearby city name. For example,
|
968
|
+
# "Tokyo".
|
969
|
+
# Corresponds to the JSON property `displayName`
|
970
|
+
# @return [String]
|
971
|
+
attr_accessor :display_name
|
972
|
+
|
973
|
+
# Cross-service attributes for the location. For example `"cloud.googleapis.com/
|
974
|
+
# region": "us-east1"`
|
975
|
+
# Corresponds to the JSON property `labels`
|
976
|
+
# @return [Hash<String,String>]
|
977
|
+
attr_accessor :labels
|
978
|
+
|
979
|
+
# The canonical id for this location. For example: `"us-east1"`.
|
980
|
+
# Corresponds to the JSON property `locationId`
|
981
|
+
# @return [String]
|
982
|
+
attr_accessor :location_id
|
983
|
+
|
984
|
+
# Service-specific metadata. For example the available capacity at the given
|
985
|
+
# location.
|
986
|
+
# Corresponds to the JSON property `metadata`
|
987
|
+
# @return [Hash<String,Object>]
|
988
|
+
attr_accessor :metadata
|
989
|
+
|
990
|
+
# Resource name for the location, which may vary between implementations. For
|
991
|
+
# example: `"projects/example-project/locations/us-east1"`
|
992
|
+
# Corresponds to the JSON property `name`
|
993
|
+
# @return [String]
|
994
|
+
attr_accessor :name
|
995
|
+
|
996
|
+
def initialize(**args)
|
997
|
+
update!(**args)
|
998
|
+
end
|
999
|
+
|
1000
|
+
# Update properties of this object
|
1001
|
+
def update!(**args)
|
1002
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
1003
|
+
@labels = args[:labels] if args.key?(:labels)
|
1004
|
+
@location_id = args[:location_id] if args.key?(:location_id)
|
1005
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1006
|
+
@name = args[:name] if args.key?(:name)
|
1007
|
+
end
|
1008
|
+
end
|
1009
|
+
|
1010
|
+
# An individual log entry.
|
1011
|
+
class LogEntry
|
1012
|
+
include Google::Apis::Core::Hashable
|
1013
|
+
|
1014
|
+
# A common proto for logging HTTP requests. Only contains semantics defined by
|
1015
|
+
# the HTTP specification. Product-specific logging information MUST be defined
|
1016
|
+
# in a separate message.
|
1017
|
+
# Corresponds to the JSON property `httpRequest`
|
1018
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::HttpRequest]
|
1019
|
+
attr_accessor :http_request
|
1020
|
+
|
1021
|
+
# A unique ID for the log entry used for deduplication. If omitted, the
|
1022
|
+
# implementation will generate one based on operation_id.
|
1023
|
+
# Corresponds to the JSON property `insertId`
|
1024
|
+
# @return [String]
|
1025
|
+
attr_accessor :insert_id
|
1026
|
+
|
1027
|
+
# A set of user-defined (key, value) data that provides additional information
|
1028
|
+
# about the log entry.
|
1029
|
+
# Corresponds to the JSON property `labels`
|
1030
|
+
# @return [Hash<String,String>]
|
1031
|
+
attr_accessor :labels
|
1032
|
+
|
1033
|
+
# Required. The log to which this log entry belongs. Examples: `"syslog"`, `"
|
1034
|
+
# book_log"`.
|
1035
|
+
# Corresponds to the JSON property `name`
|
1036
|
+
# @return [String]
|
1037
|
+
attr_accessor :name
|
1038
|
+
|
1039
|
+
# Additional information about a potentially long-running operation with which a
|
1040
|
+
# log entry is associated.
|
1041
|
+
# Corresponds to the JSON property `operation`
|
1042
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::LogEntryOperation]
|
1043
|
+
attr_accessor :operation
|
1044
|
+
|
1045
|
+
# The log entry payload, represented as a protocol buffer that is expressed as a
|
1046
|
+
# JSON object. The only accepted type currently is AuditLog.
|
1047
|
+
# Corresponds to the JSON property `protoPayload`
|
1048
|
+
# @return [Hash<String,Object>]
|
1049
|
+
attr_accessor :proto_payload
|
1050
|
+
|
1051
|
+
# The severity of the log entry. The default value is `LogSeverity.DEFAULT`.
|
1052
|
+
# Corresponds to the JSON property `severity`
|
1053
|
+
# @return [String]
|
1054
|
+
attr_accessor :severity
|
1055
|
+
|
1056
|
+
# Additional information about the source code location that produced the log
|
1057
|
+
# entry.
|
1058
|
+
# Corresponds to the JSON property `sourceLocation`
|
1059
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::LogEntrySourceLocation]
|
1060
|
+
attr_accessor :source_location
|
1061
|
+
|
1062
|
+
# The log entry payload, represented as a structure that is expressed as a JSON
|
1063
|
+
# object.
|
1064
|
+
# Corresponds to the JSON property `structPayload`
|
1065
|
+
# @return [Hash<String,Object>]
|
1066
|
+
attr_accessor :struct_payload
|
1067
|
+
|
1068
|
+
# The log entry payload, represented as a Unicode string (UTF-8).
|
1069
|
+
# Corresponds to the JSON property `textPayload`
|
1070
|
+
# @return [String]
|
1071
|
+
attr_accessor :text_payload
|
1072
|
+
|
1073
|
+
# The time the event described by the log entry occurred. If omitted, defaults
|
1074
|
+
# to operation start time.
|
1075
|
+
# Corresponds to the JSON property `timestamp`
|
1076
|
+
# @return [String]
|
1077
|
+
attr_accessor :timestamp
|
1078
|
+
|
1079
|
+
# Optional. Resource name of the trace associated with the log entry, if any. If
|
1080
|
+
# this field contains a relative resource name, you can assume the name is
|
1081
|
+
# relative to `//tracing.googleapis.com`. Example: `projects/my-projectid/traces/
|
1082
|
+
# 06796866738c859f2f19b7cfb3214824`
|
1083
|
+
# Corresponds to the JSON property `trace`
|
1084
|
+
# @return [String]
|
1085
|
+
attr_accessor :trace
|
1086
|
+
|
1087
|
+
def initialize(**args)
|
1088
|
+
update!(**args)
|
1089
|
+
end
|
1090
|
+
|
1091
|
+
# Update properties of this object
|
1092
|
+
def update!(**args)
|
1093
|
+
@http_request = args[:http_request] if args.key?(:http_request)
|
1094
|
+
@insert_id = args[:insert_id] if args.key?(:insert_id)
|
1095
|
+
@labels = args[:labels] if args.key?(:labels)
|
1096
|
+
@name = args[:name] if args.key?(:name)
|
1097
|
+
@operation = args[:operation] if args.key?(:operation)
|
1098
|
+
@proto_payload = args[:proto_payload] if args.key?(:proto_payload)
|
1099
|
+
@severity = args[:severity] if args.key?(:severity)
|
1100
|
+
@source_location = args[:source_location] if args.key?(:source_location)
|
1101
|
+
@struct_payload = args[:struct_payload] if args.key?(:struct_payload)
|
1102
|
+
@text_payload = args[:text_payload] if args.key?(:text_payload)
|
1103
|
+
@timestamp = args[:timestamp] if args.key?(:timestamp)
|
1104
|
+
@trace = args[:trace] if args.key?(:trace)
|
1105
|
+
end
|
1106
|
+
end
|
1107
|
+
|
1108
|
+
# Additional information about a potentially long-running operation with which a
|
1109
|
+
# log entry is associated.
|
1110
|
+
class LogEntryOperation
|
1111
|
+
include Google::Apis::Core::Hashable
|
1112
|
+
|
1113
|
+
# Optional. Set this to True if this is the first log entry in the operation.
|
1114
|
+
# Corresponds to the JSON property `first`
|
1115
|
+
# @return [Boolean]
|
1116
|
+
attr_accessor :first
|
1117
|
+
alias_method :first?, :first
|
1118
|
+
|
1119
|
+
# Optional. An arbitrary operation identifier. Log entries with the same
|
1120
|
+
# identifier are assumed to be part of the same operation.
|
1121
|
+
# Corresponds to the JSON property `id`
|
1122
|
+
# @return [String]
|
1123
|
+
attr_accessor :id
|
1124
|
+
|
1125
|
+
# Optional. Set this to True if this is the last log entry in the operation.
|
1126
|
+
# Corresponds to the JSON property `last`
|
1127
|
+
# @return [Boolean]
|
1128
|
+
attr_accessor :last
|
1129
|
+
alias_method :last?, :last
|
1130
|
+
|
1131
|
+
# Optional. An arbitrary producer identifier. The combination of `id` and `
|
1132
|
+
# producer` must be globally unique. Examples for `producer`: `"MyDivision.
|
1133
|
+
# MyBigCompany.com"`, `"github.com/MyProject/MyApplication"`.
|
1134
|
+
# Corresponds to the JSON property `producer`
|
1135
|
+
# @return [String]
|
1136
|
+
attr_accessor :producer
|
1137
|
+
|
1138
|
+
def initialize(**args)
|
1139
|
+
update!(**args)
|
1140
|
+
end
|
1141
|
+
|
1142
|
+
# Update properties of this object
|
1143
|
+
def update!(**args)
|
1144
|
+
@first = args[:first] if args.key?(:first)
|
1145
|
+
@id = args[:id] if args.key?(:id)
|
1146
|
+
@last = args[:last] if args.key?(:last)
|
1147
|
+
@producer = args[:producer] if args.key?(:producer)
|
1148
|
+
end
|
1149
|
+
end
|
1150
|
+
|
1151
|
+
# Additional information about the source code location that produced the log
|
1152
|
+
# entry.
|
1153
|
+
class LogEntrySourceLocation
|
1154
|
+
include Google::Apis::Core::Hashable
|
1155
|
+
|
1156
|
+
# Optional. Source file name. Depending on the runtime environment, this might
|
1157
|
+
# be a simple name or a fully-qualified name.
|
1158
|
+
# Corresponds to the JSON property `file`
|
1159
|
+
# @return [String]
|
1160
|
+
attr_accessor :file
|
1161
|
+
|
1162
|
+
# Optional. Human-readable name of the function or method being invoked, with
|
1163
|
+
# optional context such as the class or package name. This information may be
|
1164
|
+
# used in contexts such as the logs viewer, where a file and line number are
|
1165
|
+
# less meaningful. The format can vary by language. For example: `qual.if.ied.
|
1166
|
+
# Class.method` (Java), `dir/package.func` (Go), `function` (Python).
|
1167
|
+
# Corresponds to the JSON property `function`
|
1168
|
+
# @return [String]
|
1169
|
+
attr_accessor :function
|
1170
|
+
|
1171
|
+
# Optional. Line within the source file. 1-based; 0 indicates no line number
|
1172
|
+
# available.
|
1173
|
+
# Corresponds to the JSON property `line`
|
1174
|
+
# @return [Fixnum]
|
1175
|
+
attr_accessor :line
|
1176
|
+
|
1177
|
+
def initialize(**args)
|
1178
|
+
update!(**args)
|
1179
|
+
end
|
1180
|
+
|
1181
|
+
# Update properties of this object
|
1182
|
+
def update!(**args)
|
1183
|
+
@file = args[:file] if args.key?(:file)
|
1184
|
+
@function = args[:function] if args.key?(:function)
|
1185
|
+
@line = args[:line] if args.key?(:line)
|
1186
|
+
end
|
1187
|
+
end
|
1188
|
+
|
1189
|
+
# Represents a single metric value.
|
1190
|
+
class MetricValue
|
1191
|
+
include Google::Apis::Core::Hashable
|
1192
|
+
|
1193
|
+
# A boolean value.
|
1194
|
+
# Corresponds to the JSON property `boolValue`
|
1195
|
+
# @return [Boolean]
|
1196
|
+
attr_accessor :bool_value
|
1197
|
+
alias_method :bool_value?, :bool_value
|
1198
|
+
|
1199
|
+
# Distribution represents a frequency distribution of double-valued sample
|
1200
|
+
# points. It contains the size of the population of sample points plus
|
1201
|
+
# additional optional information: - the arithmetic mean of the samples - the
|
1202
|
+
# minimum and maximum of the samples - the sum-squared-deviation of the samples,
|
1203
|
+
# used to compute variance - a histogram of the values of the sample points
|
1204
|
+
# Corresponds to the JSON property `distributionValue`
|
1205
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::Distribution]
|
1206
|
+
attr_accessor :distribution_value
|
1207
|
+
|
1208
|
+
# A double precision floating point value.
|
1209
|
+
# Corresponds to the JSON property `doubleValue`
|
1210
|
+
# @return [Float]
|
1211
|
+
attr_accessor :double_value
|
1212
|
+
|
1213
|
+
# The end of the time period over which this metric value's measurement applies.
|
1214
|
+
# If not specified, google.api.servicecontrol.v1.Operation.end_time will be used.
|
1215
|
+
# Corresponds to the JSON property `endTime`
|
1216
|
+
# @return [String]
|
1217
|
+
attr_accessor :end_time
|
1218
|
+
|
1219
|
+
# A signed 64-bit integer value.
|
1220
|
+
# Corresponds to the JSON property `int64Value`
|
1221
|
+
# @return [Fixnum]
|
1222
|
+
attr_accessor :int64_value
|
1223
|
+
|
1224
|
+
# The labels describing the metric value. See comments on google.api.
|
1225
|
+
# servicecontrol.v1.Operation.labels for the overriding relationship. Note that
|
1226
|
+
# this map must not contain monitored resource labels.
|
1227
|
+
# Corresponds to the JSON property `labels`
|
1228
|
+
# @return [Hash<String,String>]
|
1229
|
+
attr_accessor :labels
|
1230
|
+
|
1231
|
+
# Represents an amount of money with its currency type.
|
1232
|
+
# Corresponds to the JSON property `moneyValue`
|
1233
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::Money]
|
1234
|
+
attr_accessor :money_value
|
1235
|
+
|
1236
|
+
# The start of the time period over which this metric value's measurement
|
1237
|
+
# applies. The time period has different semantics for different metric types (
|
1238
|
+
# cumulative, delta, and gauge). See the metric definition documentation in the
|
1239
|
+
# service configuration for details. If not specified, google.api.servicecontrol.
|
1240
|
+
# v1.Operation.start_time will be used.
|
1241
|
+
# Corresponds to the JSON property `startTime`
|
1242
|
+
# @return [String]
|
1243
|
+
attr_accessor :start_time
|
1244
|
+
|
1245
|
+
# A text string value.
|
1246
|
+
# Corresponds to the JSON property `stringValue`
|
1247
|
+
# @return [String]
|
1248
|
+
attr_accessor :string_value
|
1249
|
+
|
1250
|
+
def initialize(**args)
|
1251
|
+
update!(**args)
|
1252
|
+
end
|
1253
|
+
|
1254
|
+
# Update properties of this object
|
1255
|
+
def update!(**args)
|
1256
|
+
@bool_value = args[:bool_value] if args.key?(:bool_value)
|
1257
|
+
@distribution_value = args[:distribution_value] if args.key?(:distribution_value)
|
1258
|
+
@double_value = args[:double_value] if args.key?(:double_value)
|
1259
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1260
|
+
@int64_value = args[:int64_value] if args.key?(:int64_value)
|
1261
|
+
@labels = args[:labels] if args.key?(:labels)
|
1262
|
+
@money_value = args[:money_value] if args.key?(:money_value)
|
1263
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
1264
|
+
@string_value = args[:string_value] if args.key?(:string_value)
|
1265
|
+
end
|
1266
|
+
end
|
1267
|
+
|
1268
|
+
# Represents a set of metric values in the same metric. Each metric value in the
|
1269
|
+
# set should have a unique combination of start time, end time, and label values.
|
1270
|
+
class MetricValueSet
|
1271
|
+
include Google::Apis::Core::Hashable
|
1272
|
+
|
1273
|
+
# The metric name defined in the service configuration.
|
1274
|
+
# Corresponds to the JSON property `metricName`
|
1275
|
+
# @return [String]
|
1276
|
+
attr_accessor :metric_name
|
1277
|
+
|
1278
|
+
# The values in this metric.
|
1279
|
+
# Corresponds to the JSON property `metricValues`
|
1280
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::MetricValue>]
|
1281
|
+
attr_accessor :metric_values
|
1282
|
+
|
1283
|
+
def initialize(**args)
|
1284
|
+
update!(**args)
|
1285
|
+
end
|
1286
|
+
|
1287
|
+
# Update properties of this object
|
1288
|
+
def update!(**args)
|
1289
|
+
@metric_name = args[:metric_name] if args.key?(:metric_name)
|
1290
|
+
@metric_values = args[:metric_values] if args.key?(:metric_values)
|
1291
|
+
end
|
1292
|
+
end
|
1293
|
+
|
1294
|
+
# Represents an amount of money with its currency type.
|
1295
|
+
class Money
|
1296
|
+
include Google::Apis::Core::Hashable
|
1297
|
+
|
1298
|
+
# The three-letter currency code defined in ISO 4217.
|
1299
|
+
# Corresponds to the JSON property `currencyCode`
|
1300
|
+
# @return [String]
|
1301
|
+
attr_accessor :currency_code
|
1302
|
+
|
1303
|
+
# Number of nano (10^-9) units of the amount. The value must be between -999,999,
|
1304
|
+
# 999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be
|
1305
|
+
# positive or zero. If `units` is zero, `nanos` can be positive, zero, or
|
1306
|
+
# negative. If `units` is negative, `nanos` must be negative or zero. For
|
1307
|
+
# example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
|
1308
|
+
# Corresponds to the JSON property `nanos`
|
1309
|
+
# @return [Fixnum]
|
1310
|
+
attr_accessor :nanos
|
1311
|
+
|
1312
|
+
# The whole units of the amount. For example if `currencyCode` is `"USD"`, then
|
1313
|
+
# 1 unit is one US dollar.
|
1314
|
+
# Corresponds to the JSON property `units`
|
1315
|
+
# @return [Fixnum]
|
1316
|
+
attr_accessor :units
|
1317
|
+
|
1318
|
+
def initialize(**args)
|
1319
|
+
update!(**args)
|
1320
|
+
end
|
1321
|
+
|
1322
|
+
# Update properties of this object
|
1323
|
+
def update!(**args)
|
1324
|
+
@currency_code = args[:currency_code] if args.key?(:currency_code)
|
1325
|
+
@nanos = args[:nanos] if args.key?(:nanos)
|
1326
|
+
@units = args[:units] if args.key?(:units)
|
1327
|
+
end
|
1328
|
+
end
|
1329
|
+
|
1330
|
+
# Represents information regarding an operation.
|
1331
|
+
class Operation
|
1332
|
+
include Google::Apis::Core::Hashable
|
1333
|
+
|
1334
|
+
# Identity of the consumer who is using the service. This field should be filled
|
1335
|
+
# in for the operations initiated by a consumer, but not for service-initiated
|
1336
|
+
# operations that are not related to a specific consumer. - This can be in one
|
1337
|
+
# of the following formats: - project:PROJECT_ID, - project`_`number:
|
1338
|
+
# PROJECT_NUMBER, - projects/PROJECT_ID or PROJECT_NUMBER, - folders/
|
1339
|
+
# FOLDER_NUMBER, - organizations/ORGANIZATION_NUMBER, - api`_`key:API_KEY.
|
1340
|
+
# Corresponds to the JSON property `consumerId`
|
1341
|
+
# @return [String]
|
1342
|
+
attr_accessor :consumer_id
|
1343
|
+
|
1344
|
+
# End time of the operation. Required when the operation is used in
|
1345
|
+
# ServiceController.Report, but optional when the operation is used in
|
1346
|
+
# ServiceController.Check.
|
1347
|
+
# Corresponds to the JSON property `endTime`
|
1348
|
+
# @return [String]
|
1349
|
+
attr_accessor :end_time
|
1350
|
+
|
1351
|
+
# Unimplemented.
|
1352
|
+
# Corresponds to the JSON property `extensions`
|
1353
|
+
# @return [Array<Hash<String,Object>>]
|
1354
|
+
attr_accessor :extensions
|
1355
|
+
|
1356
|
+
# DO NOT USE. This is an experimental field.
|
1357
|
+
# Corresponds to the JSON property `importance`
|
1358
|
+
# @return [String]
|
1359
|
+
attr_accessor :importance
|
1360
|
+
|
1361
|
+
# Labels describing the operation. Only the following labels are allowed: -
|
1362
|
+
# Labels describing monitored resources as defined in the service configuration.
|
1363
|
+
# - Default labels of metric values. When specified, labels defined in the
|
1364
|
+
# metric value override these default. - The following labels defined by Google
|
1365
|
+
# Cloud Platform: - `cloud.googleapis.com/location` describing the location
|
1366
|
+
# where the operation happened, - `servicecontrol.googleapis.com/user_agent`
|
1367
|
+
# describing the user agent of the API request, - `servicecontrol.googleapis.com/
|
1368
|
+
# service_agent` describing the service used to handle the API request (e.g. ESP)
|
1369
|
+
# , - `servicecontrol.googleapis.com/platform` describing the platform where the
|
1370
|
+
# API is served, such as App Engine, Compute Engine, or Kubernetes Engine.
|
1371
|
+
# Corresponds to the JSON property `labels`
|
1372
|
+
# @return [Hash<String,String>]
|
1373
|
+
attr_accessor :labels
|
1374
|
+
|
1375
|
+
# Represents information to be logged.
|
1376
|
+
# Corresponds to the JSON property `logEntries`
|
1377
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::LogEntry>]
|
1378
|
+
attr_accessor :log_entries
|
1379
|
+
|
1380
|
+
# Represents information about this operation. Each MetricValueSet corresponds
|
1381
|
+
# to a metric defined in the service configuration. The data type used in the
|
1382
|
+
# MetricValueSet must agree with the data type specified in the metric
|
1383
|
+
# definition. Within a single operation, it is not allowed to have more than one
|
1384
|
+
# MetricValue instances that have the same metric names and identical label
|
1385
|
+
# value combinations. If a request has such duplicated MetricValue instances,
|
1386
|
+
# the entire request is rejected with an invalid argument error.
|
1387
|
+
# Corresponds to the JSON property `metricValueSets`
|
1388
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::MetricValueSet>]
|
1389
|
+
attr_accessor :metric_value_sets
|
1390
|
+
|
1391
|
+
# Identity of the operation. This must be unique within the scope of the service
|
1392
|
+
# that generated the operation. If the service calls Check() and Report() on the
|
1393
|
+
# same operation, the two calls should carry the same id. UUID version 4 is
|
1394
|
+
# recommended, though not required. In scenarios where an operation is computed
|
1395
|
+
# from existing information and an idempotent id is desirable for deduplication
|
1396
|
+
# purpose, UUID version 5 is recommended. See RFC 4122 for details.
|
1397
|
+
# Corresponds to the JSON property `operationId`
|
1398
|
+
# @return [String]
|
1399
|
+
attr_accessor :operation_id
|
1400
|
+
|
1401
|
+
# Fully qualified name of the operation. Reserved for future use.
|
1402
|
+
# Corresponds to the JSON property `operationName`
|
1403
|
+
# @return [String]
|
1404
|
+
attr_accessor :operation_name
|
1405
|
+
|
1406
|
+
# Represents the properties needed for quota operations.
|
1407
|
+
# Corresponds to the JSON property `quotaProperties`
|
1408
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::QuotaProperties]
|
1409
|
+
attr_accessor :quota_properties
|
1410
|
+
|
1411
|
+
# The resources that are involved in the operation. The maximum supported number
|
1412
|
+
# of entries in this field is 100.
|
1413
|
+
# Corresponds to the JSON property `resources`
|
1414
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::ResourceInfo>]
|
1415
|
+
attr_accessor :resources
|
1416
|
+
|
1417
|
+
# Required. Start time of the operation.
|
1418
|
+
# Corresponds to the JSON property `startTime`
|
1419
|
+
# @return [String]
|
1420
|
+
attr_accessor :start_time
|
1421
|
+
|
1422
|
+
# Unimplemented. A list of Cloud Trace spans. The span names shall contain the
|
1423
|
+
# id of the destination project which can be either the produce or the consumer
|
1424
|
+
# project.
|
1425
|
+
# Corresponds to the JSON property `traceSpans`
|
1426
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::TraceSpan>]
|
1427
|
+
attr_accessor :trace_spans
|
1428
|
+
|
1429
|
+
# Private Preview. This feature is only available for approved services. User
|
1430
|
+
# defined labels for the resource that this operation is associated with. Only a
|
1431
|
+
# combination of 1000 user labels per consumer project are allowed.
|
1432
|
+
# Corresponds to the JSON property `userLabels`
|
1433
|
+
# @return [Hash<String,String>]
|
1434
|
+
attr_accessor :user_labels
|
1435
|
+
|
1436
|
+
def initialize(**args)
|
1437
|
+
update!(**args)
|
1438
|
+
end
|
1439
|
+
|
1440
|
+
# Update properties of this object
|
1441
|
+
def update!(**args)
|
1442
|
+
@consumer_id = args[:consumer_id] if args.key?(:consumer_id)
|
1443
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1444
|
+
@extensions = args[:extensions] if args.key?(:extensions)
|
1445
|
+
@importance = args[:importance] if args.key?(:importance)
|
1446
|
+
@labels = args[:labels] if args.key?(:labels)
|
1447
|
+
@log_entries = args[:log_entries] if args.key?(:log_entries)
|
1448
|
+
@metric_value_sets = args[:metric_value_sets] if args.key?(:metric_value_sets)
|
1449
|
+
@operation_id = args[:operation_id] if args.key?(:operation_id)
|
1450
|
+
@operation_name = args[:operation_name] if args.key?(:operation_name)
|
1451
|
+
@quota_properties = args[:quota_properties] if args.key?(:quota_properties)
|
1452
|
+
@resources = args[:resources] if args.key?(:resources)
|
1453
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
1454
|
+
@trace_spans = args[:trace_spans] if args.key?(:trace_spans)
|
1455
|
+
@user_labels = args[:user_labels] if args.key?(:user_labels)
|
1456
|
+
end
|
1457
|
+
end
|
1458
|
+
|
1459
|
+
# Represents the metadata of the long-running operation.
|
1460
|
+
class OperationMetadata
|
1461
|
+
include Google::Apis::Core::Hashable
|
1462
|
+
|
1463
|
+
# Output only. API version used to start the operation.
|
1464
|
+
# Corresponds to the JSON property `apiVersion`
|
1465
|
+
# @return [String]
|
1466
|
+
attr_accessor :api_version
|
1467
|
+
|
1468
|
+
# Output only. The time the operation was created.
|
1469
|
+
# Corresponds to the JSON property `createTime`
|
1470
|
+
# @return [String]
|
1471
|
+
attr_accessor :create_time
|
1472
|
+
|
1473
|
+
# Output only. The time the operation finished running.
|
1474
|
+
# Corresponds to the JSON property `endTime`
|
1475
|
+
# @return [String]
|
1476
|
+
attr_accessor :end_time
|
1477
|
+
|
1478
|
+
# Output only. Identifies whether the user has requested cancellation of the
|
1479
|
+
# operation. Operations that have successfully been cancelled have Operation.
|
1480
|
+
# error value with a google.rpc.Status.code of 1, corresponding to `Code.
|
1481
|
+
# CANCELLED`.
|
1482
|
+
# Corresponds to the JSON property `requestedCancellation`
|
1483
|
+
# @return [Boolean]
|
1484
|
+
attr_accessor :requested_cancellation
|
1485
|
+
alias_method :requested_cancellation?, :requested_cancellation
|
1486
|
+
|
1487
|
+
# Output only. Human-readable status of the operation, if any.
|
1488
|
+
# Corresponds to the JSON property `statusMessage`
|
1489
|
+
# @return [String]
|
1490
|
+
attr_accessor :status_message
|
1491
|
+
|
1492
|
+
# Output only. Server-defined resource path for the target of the operation.
|
1493
|
+
# Corresponds to the JSON property `target`
|
1494
|
+
# @return [String]
|
1495
|
+
attr_accessor :target
|
1496
|
+
|
1497
|
+
# Output only. Name of the verb executed by the operation.
|
1498
|
+
# Corresponds to the JSON property `verb`
|
1499
|
+
# @return [String]
|
1500
|
+
attr_accessor :verb
|
1501
|
+
|
1502
|
+
def initialize(**args)
|
1503
|
+
update!(**args)
|
1504
|
+
end
|
1505
|
+
|
1506
|
+
# Update properties of this object
|
1507
|
+
def update!(**args)
|
1508
|
+
@api_version = args[:api_version] if args.key?(:api_version)
|
1509
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1510
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
1511
|
+
@requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
|
1512
|
+
@status_message = args[:status_message] if args.key?(:status_message)
|
1513
|
+
@target = args[:target] if args.key?(:target)
|
1514
|
+
@verb = args[:verb] if args.key?(:verb)
|
1515
|
+
end
|
1516
|
+
end
|
1517
|
+
|
1518
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
1519
|
+
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
1520
|
+
# A `binding` binds one or more `members` to a single `role`. Members can be
|
1521
|
+
# user accounts, service accounts, Google groups, and domains (such as G Suite).
|
1522
|
+
# A `role` is a named list of permissions; each `role` can be an IAM predefined
|
1523
|
+
# role or a user-created custom role. For some types of Google Cloud resources,
|
1524
|
+
# a `binding` can also specify a `condition`, which is a logical expression that
|
1525
|
+
# allows access to a resource only if the expression evaluates to `true`. A
|
1526
|
+
# condition can add constraints based on attributes of the request, the resource,
|
1527
|
+
# or both. To learn which resources support conditions in their IAM policies,
|
1528
|
+
# see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
|
1529
|
+
# resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
|
1530
|
+
# resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
|
1531
|
+
# group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
|
1532
|
+
# appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
|
1533
|
+
# organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
|
1534
|
+
# title": "expirable access", "description": "Does not grant access after Sep
|
1535
|
+
# 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
|
1536
|
+
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
|
1537
|
+
# members: - user:mike@example.com - group:admins@example.com - domain:google.
|
1538
|
+
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
|
1539
|
+
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
1540
|
+
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
1541
|
+
# description: Does not grant access after Sep 2020 expression: request.time <
|
1542
|
+
# timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
|
1543
|
+
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
1544
|
+
# google.com/iam/docs/).
|
1545
|
+
class Policy
|
1546
|
+
include Google::Apis::Core::Hashable
|
1547
|
+
|
1548
|
+
# Specifies cloud audit logging configuration for this policy.
|
1549
|
+
# Corresponds to the JSON property `auditConfigs`
|
1550
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::AuditConfig>]
|
1551
|
+
attr_accessor :audit_configs
|
1552
|
+
|
1553
|
+
# Associates a list of `members` to a `role`. Optionally, may specify a `
|
1554
|
+
# condition` that determines how and when the `bindings` are applied. Each of
|
1555
|
+
# the `bindings` must contain at least one member.
|
1556
|
+
# Corresponds to the JSON property `bindings`
|
1557
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Binding>]
|
1558
|
+
attr_accessor :bindings
|
1559
|
+
|
1560
|
+
# `etag` is used for optimistic concurrency control as a way to help prevent
|
1561
|
+
# simultaneous updates of a policy from overwriting each other. It is strongly
|
1562
|
+
# suggested that systems make use of the `etag` in the read-modify-write cycle
|
1563
|
+
# to perform policy updates in order to avoid race conditions: An `etag` is
|
1564
|
+
# returned in the response to `getIamPolicy`, and systems are expected to put
|
1565
|
+
# that etag in the request to `setIamPolicy` to ensure that their change will be
|
1566
|
+
# applied to the same version of the policy. **Important:** If you use IAM
|
1567
|
+
# Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
|
1568
|
+
# If you omit this field, then IAM allows you to overwrite a version `3` policy
|
1569
|
+
# with a version `1` policy, and all of the conditions in the version `3` policy
|
1570
|
+
# are lost.
|
1571
|
+
# Corresponds to the JSON property `etag`
|
1572
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
1573
|
+
# @return [String]
|
1574
|
+
attr_accessor :etag
|
1575
|
+
|
1576
|
+
# Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
|
1577
|
+
# Requests that specify an invalid value are rejected. Any operation that
|
1578
|
+
# affects conditional role bindings must specify version `3`. This requirement
|
1579
|
+
# applies to the following operations: * Getting a policy that includes a
|
1580
|
+
# conditional role binding * Adding a conditional role binding to a policy *
|
1581
|
+
# Changing a conditional role binding in a policy * Removing any role binding,
|
1582
|
+
# with or without a condition, from a policy that includes conditions **
|
1583
|
+
# Important:** If you use IAM Conditions, you must include the `etag` field
|
1584
|
+
# whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
|
1585
|
+
# to overwrite a version `3` policy with a version `1` policy, and all of the
|
1586
|
+
# conditions in the version `3` policy are lost. If a policy does not include
|
1587
|
+
# any conditions, operations on that policy may specify any valid version or
|
1588
|
+
# leave the field unset. To learn which resources support conditions in their
|
1589
|
+
# IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
|
1590
|
+
# conditions/resource-policies).
|
1591
|
+
# Corresponds to the JSON property `version`
|
1592
|
+
# @return [Fixnum]
|
1593
|
+
attr_accessor :version
|
1594
|
+
|
1595
|
+
def initialize(**args)
|
1596
|
+
update!(**args)
|
1597
|
+
end
|
1598
|
+
|
1599
|
+
# Update properties of this object
|
1600
|
+
def update!(**args)
|
1601
|
+
@audit_configs = args[:audit_configs] if args.key?(:audit_configs)
|
1602
|
+
@bindings = args[:bindings] if args.key?(:bindings)
|
1603
|
+
@etag = args[:etag] if args.key?(:etag)
|
1604
|
+
@version = args[:version] if args.key?(:version)
|
1605
|
+
end
|
1606
|
+
end
|
1607
|
+
|
1608
|
+
# Represents the properties needed for quota operations.
|
1609
|
+
class QuotaProperties
|
1610
|
+
include Google::Apis::Core::Hashable
|
1611
|
+
|
1612
|
+
# Quota mode for this operation.
|
1613
|
+
# Corresponds to the JSON property `quotaMode`
|
1614
|
+
# @return [String]
|
1615
|
+
attr_accessor :quota_mode
|
1616
|
+
|
1617
|
+
def initialize(**args)
|
1618
|
+
update!(**args)
|
1619
|
+
end
|
1620
|
+
|
1621
|
+
# Update properties of this object
|
1622
|
+
def update!(**args)
|
1623
|
+
@quota_mode = args[:quota_mode] if args.key?(:quota_mode)
|
1624
|
+
end
|
1625
|
+
end
|
1626
|
+
|
1627
|
+
# Request message for the Report method.
|
1628
|
+
class ReportRequest
|
1629
|
+
include Google::Apis::Core::Hashable
|
1630
|
+
|
1631
|
+
# Operations to be reported. Typically the service should report one operation
|
1632
|
+
# per request. Putting multiple operations into a single request is allowed, but
|
1633
|
+
# should be used only when multiple operations are natually available at the
|
1634
|
+
# time of the report. There is no limit on the number of operations in the same
|
1635
|
+
# ReportRequest, however the ReportRequest size should be no larger than 1MB.
|
1636
|
+
# See ReportResponse.report_errors for partial failure behavior.
|
1637
|
+
# Corresponds to the JSON property `operations`
|
1638
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::Operation>]
|
1639
|
+
attr_accessor :operations
|
1640
|
+
|
1641
|
+
# Specifies which version of service config should be used to process the
|
1642
|
+
# request. If unspecified or no matching version can be found, the latest one
|
1643
|
+
# will be used.
|
1644
|
+
# Corresponds to the JSON property `serviceConfigId`
|
1645
|
+
# @return [String]
|
1646
|
+
attr_accessor :service_config_id
|
1647
|
+
|
1648
|
+
# The service name as specified in its service configuration. For example, `"
|
1649
|
+
# pubsub.googleapis.com"`. See [google.api.Service](https://cloud.google.com/
|
1650
|
+
# service-management/reference/rpc/google.api#google.api.Service) for the
|
1651
|
+
# definition of a service name.
|
1652
|
+
# Corresponds to the JSON property `serviceName`
|
1653
|
+
# @return [String]
|
1654
|
+
attr_accessor :service_name
|
1655
|
+
|
1656
|
+
def initialize(**args)
|
1657
|
+
update!(**args)
|
1658
|
+
end
|
1659
|
+
|
1660
|
+
# Update properties of this object
|
1661
|
+
def update!(**args)
|
1662
|
+
@operations = args[:operations] if args.key?(:operations)
|
1663
|
+
@service_config_id = args[:service_config_id] if args.key?(:service_config_id)
|
1664
|
+
@service_name = args[:service_name] if args.key?(:service_name)
|
1665
|
+
end
|
1666
|
+
end
|
1667
|
+
|
1668
|
+
# Describes a resource associated with this operation.
|
1669
|
+
class ResourceInfo
|
1670
|
+
include Google::Apis::Core::Hashable
|
1671
|
+
|
1672
|
+
# The identifier of the parent of this resource instance. Must be in one of the
|
1673
|
+
# following formats: - `projects/` - `folders/` - `organizations/`
|
1674
|
+
# Corresponds to the JSON property `resourceContainer`
|
1675
|
+
# @return [String]
|
1676
|
+
attr_accessor :resource_container
|
1677
|
+
|
1678
|
+
# The location of the resource. If not empty, the resource will be checked
|
1679
|
+
# against location policy. The value must be a valid zone, region or multiregion.
|
1680
|
+
# For example: "europe-west4" or "northamerica-northeast1-a"
|
1681
|
+
# Corresponds to the JSON property `resourceLocation`
|
1682
|
+
# @return [String]
|
1683
|
+
attr_accessor :resource_location
|
1684
|
+
|
1685
|
+
# Name of the resource. This is used for auditing purposes.
|
1686
|
+
# Corresponds to the JSON property `resourceName`
|
1687
|
+
# @return [String]
|
1688
|
+
attr_accessor :resource_name
|
1689
|
+
|
1690
|
+
def initialize(**args)
|
1691
|
+
update!(**args)
|
1692
|
+
end
|
1693
|
+
|
1694
|
+
# Update properties of this object
|
1695
|
+
def update!(**args)
|
1696
|
+
@resource_container = args[:resource_container] if args.key?(:resource_container)
|
1697
|
+
@resource_location = args[:resource_location] if args.key?(:resource_location)
|
1698
|
+
@resource_name = args[:resource_name] if args.key?(:resource_name)
|
1699
|
+
end
|
1700
|
+
end
|
1701
|
+
|
1702
|
+
# RouterAppliance represents a Router appliance which is specified by a VM URI
|
1703
|
+
# and a NIC address.
|
1704
|
+
class RouterApplianceInstance
|
1705
|
+
include Google::Apis::Core::Hashable
|
1706
|
+
|
1707
|
+
# The IP address of the network interface to use for peering.
|
1708
|
+
# Corresponds to the JSON property `ipAddress`
|
1709
|
+
# @return [String]
|
1710
|
+
attr_accessor :ip_address
|
1711
|
+
|
1712
|
+
#
|
1713
|
+
# Corresponds to the JSON property `networkInterface`
|
1714
|
+
# @return [String]
|
1715
|
+
attr_accessor :network_interface
|
1716
|
+
|
1717
|
+
# The URI of the virtual machine resource
|
1718
|
+
# Corresponds to the JSON property `virtualMachine`
|
1719
|
+
# @return [String]
|
1720
|
+
attr_accessor :virtual_machine
|
1721
|
+
|
1722
|
+
def initialize(**args)
|
1723
|
+
update!(**args)
|
1724
|
+
end
|
1725
|
+
|
1726
|
+
# Update properties of this object
|
1727
|
+
def update!(**args)
|
1728
|
+
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
1729
|
+
@network_interface = args[:network_interface] if args.key?(:network_interface)
|
1730
|
+
@virtual_machine = args[:virtual_machine] if args.key?(:virtual_machine)
|
1731
|
+
end
|
1732
|
+
end
|
1733
|
+
|
1734
|
+
# Request message for `SetIamPolicy` method.
|
1735
|
+
class SetIamPolicyRequest
|
1736
|
+
include Google::Apis::Core::Hashable
|
1737
|
+
|
1738
|
+
# An Identity and Access Management (IAM) policy, which specifies access
|
1739
|
+
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
1740
|
+
# A `binding` binds one or more `members` to a single `role`. Members can be
|
1741
|
+
# user accounts, service accounts, Google groups, and domains (such as G Suite).
|
1742
|
+
# A `role` is a named list of permissions; each `role` can be an IAM predefined
|
1743
|
+
# role or a user-created custom role. For some types of Google Cloud resources,
|
1744
|
+
# a `binding` can also specify a `condition`, which is a logical expression that
|
1745
|
+
# allows access to a resource only if the expression evaluates to `true`. A
|
1746
|
+
# condition can add constraints based on attributes of the request, the resource,
|
1747
|
+
# or both. To learn which resources support conditions in their IAM policies,
|
1748
|
+
# see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
|
1749
|
+
# resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
|
1750
|
+
# resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
|
1751
|
+
# group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
|
1752
|
+
# appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
|
1753
|
+
# organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
|
1754
|
+
# title": "expirable access", "description": "Does not grant access after Sep
|
1755
|
+
# 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
|
1756
|
+
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
|
1757
|
+
# members: - user:mike@example.com - group:admins@example.com - domain:google.
|
1758
|
+
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
|
1759
|
+
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
1760
|
+
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
1761
|
+
# description: Does not grant access after Sep 2020 expression: request.time <
|
1762
|
+
# timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
|
1763
|
+
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
1764
|
+
# google.com/iam/docs/).
|
1765
|
+
# Corresponds to the JSON property `policy`
|
1766
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::Policy]
|
1767
|
+
attr_accessor :policy
|
1768
|
+
|
1769
|
+
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
|
1770
|
+
# the fields in the mask will be modified. If no mask is provided, the following
|
1771
|
+
# default mask is used: `paths: "bindings, etag"`
|
1772
|
+
# Corresponds to the JSON property `updateMask`
|
1773
|
+
# @return [String]
|
1774
|
+
attr_accessor :update_mask
|
1775
|
+
|
1776
|
+
def initialize(**args)
|
1777
|
+
update!(**args)
|
1778
|
+
end
|
1779
|
+
|
1780
|
+
# Update properties of this object
|
1781
|
+
def update!(**args)
|
1782
|
+
@policy = args[:policy] if args.key?(:policy)
|
1783
|
+
@update_mask = args[:update_mask] if args.key?(:update_mask)
|
1784
|
+
end
|
1785
|
+
end
|
1786
|
+
|
1787
|
+
# A Spoke is an abstraction of a network attachment being attached to a Hub. A
|
1788
|
+
# Spoke can be underlying a VPN tunnel, a VLAN (interconnect) attachment, a
|
1789
|
+
# Router appliance, etc.
|
1790
|
+
class Spoke
|
1791
|
+
include Google::Apis::Core::Hashable
|
1792
|
+
|
1793
|
+
# The time when the Spoke was created.
|
1794
|
+
# Corresponds to the JSON property `createTime`
|
1795
|
+
# @return [String]
|
1796
|
+
attr_accessor :create_time
|
1797
|
+
|
1798
|
+
# Short description of the spoke resource
|
1799
|
+
# Corresponds to the JSON property `description`
|
1800
|
+
# @return [String]
|
1801
|
+
attr_accessor :description
|
1802
|
+
|
1803
|
+
# The resource URL of the hub resource that the spoke is attached to
|
1804
|
+
# Corresponds to the JSON property `hub`
|
1805
|
+
# @return [String]
|
1806
|
+
attr_accessor :hub
|
1807
|
+
|
1808
|
+
# User-defined labels.
|
1809
|
+
# Corresponds to the JSON property `labels`
|
1810
|
+
# @return [Hash<String,String>]
|
1811
|
+
attr_accessor :labels
|
1812
|
+
|
1813
|
+
# The URIs of linked interconnect attachment resources
|
1814
|
+
# Corresponds to the JSON property `linkedInterconnectAttachments`
|
1815
|
+
# @return [Array<String>]
|
1816
|
+
attr_accessor :linked_interconnect_attachments
|
1817
|
+
|
1818
|
+
# The URIs of linked Router appliance resources
|
1819
|
+
# Corresponds to the JSON property `linkedRouterApplianceInstances`
|
1820
|
+
# @return [Array<Google::Apis::NetworkconnectivityV1alpha1::RouterApplianceInstance>]
|
1821
|
+
attr_accessor :linked_router_appliance_instances
|
1822
|
+
|
1823
|
+
# The URIs of linked VPN tunnel resources
|
1824
|
+
# Corresponds to the JSON property `linkedVpnTunnels`
|
1825
|
+
# @return [Array<String>]
|
1826
|
+
attr_accessor :linked_vpn_tunnels
|
1827
|
+
|
1828
|
+
# Immutable. The name of a Spoke resource.
|
1829
|
+
# Corresponds to the JSON property `name`
|
1830
|
+
# @return [String]
|
1831
|
+
attr_accessor :name
|
1832
|
+
|
1833
|
+
# Output only. The current lifecycle state of this Hub.
|
1834
|
+
# Corresponds to the JSON property `state`
|
1835
|
+
# @return [String]
|
1836
|
+
attr_accessor :state
|
1837
|
+
|
1838
|
+
# Output only. Google-generated UUID for this resource. This is unique across
|
1839
|
+
# all Spoke resources. If a Spoke resource is deleted and another with the same
|
1840
|
+
# name is created, it gets a different unique_id.
|
1841
|
+
# Corresponds to the JSON property `uniqueId`
|
1842
|
+
# @return [String]
|
1843
|
+
attr_accessor :unique_id
|
1844
|
+
|
1845
|
+
# The time when the Spoke was updated.
|
1846
|
+
# Corresponds to the JSON property `updateTime`
|
1847
|
+
# @return [String]
|
1848
|
+
attr_accessor :update_time
|
1849
|
+
|
1850
|
+
def initialize(**args)
|
1851
|
+
update!(**args)
|
1852
|
+
end
|
1853
|
+
|
1854
|
+
# Update properties of this object
|
1855
|
+
def update!(**args)
|
1856
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1857
|
+
@description = args[:description] if args.key?(:description)
|
1858
|
+
@hub = args[:hub] if args.key?(:hub)
|
1859
|
+
@labels = args[:labels] if args.key?(:labels)
|
1860
|
+
@linked_interconnect_attachments = args[:linked_interconnect_attachments] if args.key?(:linked_interconnect_attachments)
|
1861
|
+
@linked_router_appliance_instances = args[:linked_router_appliance_instances] if args.key?(:linked_router_appliance_instances)
|
1862
|
+
@linked_vpn_tunnels = args[:linked_vpn_tunnels] if args.key?(:linked_vpn_tunnels)
|
1863
|
+
@name = args[:name] if args.key?(:name)
|
1864
|
+
@state = args[:state] if args.key?(:state)
|
1865
|
+
@unique_id = args[:unique_id] if args.key?(:unique_id)
|
1866
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1867
|
+
end
|
1868
|
+
end
|
1869
|
+
|
1870
|
+
# Request message for `TestIamPermissions` method.
|
1871
|
+
class TestIamPermissionsRequest
|
1872
|
+
include Google::Apis::Core::Hashable
|
1873
|
+
|
1874
|
+
# The set of permissions to check for the `resource`. Permissions with wildcards
|
1875
|
+
# (such as '*' or 'storage.*') are not allowed. For more information see [IAM
|
1876
|
+
# Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
1877
|
+
# Corresponds to the JSON property `permissions`
|
1878
|
+
# @return [Array<String>]
|
1879
|
+
attr_accessor :permissions
|
1880
|
+
|
1881
|
+
def initialize(**args)
|
1882
|
+
update!(**args)
|
1883
|
+
end
|
1884
|
+
|
1885
|
+
# Update properties of this object
|
1886
|
+
def update!(**args)
|
1887
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
1888
|
+
end
|
1889
|
+
end
|
1890
|
+
|
1891
|
+
# Response message for `TestIamPermissions` method.
|
1892
|
+
class TestIamPermissionsResponse
|
1893
|
+
include Google::Apis::Core::Hashable
|
1894
|
+
|
1895
|
+
# A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
|
1896
|
+
# Corresponds to the JSON property `permissions`
|
1897
|
+
# @return [Array<String>]
|
1898
|
+
attr_accessor :permissions
|
1899
|
+
|
1900
|
+
def initialize(**args)
|
1901
|
+
update!(**args)
|
1902
|
+
end
|
1903
|
+
|
1904
|
+
# Update properties of this object
|
1905
|
+
def update!(**args)
|
1906
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
1907
|
+
end
|
1908
|
+
end
|
1909
|
+
|
1910
|
+
# A span represents a single operation within a trace. Spans can be nested to
|
1911
|
+
# form a trace tree. Often, a trace contains a root span that describes the end-
|
1912
|
+
# to-end latency, and one or more subspans for its sub-operations. A trace can
|
1913
|
+
# also contain multiple root spans, or none at all. Spans do not need to be
|
1914
|
+
# contiguous—there may be gaps or overlaps between spans in a trace.
|
1915
|
+
class TraceSpan
|
1916
|
+
include Google::Apis::Core::Hashable
|
1917
|
+
|
1918
|
+
# A set of attributes, each in the format `[KEY]:[VALUE]`.
|
1919
|
+
# Corresponds to the JSON property `attributes`
|
1920
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::Attributes]
|
1921
|
+
attr_accessor :attributes
|
1922
|
+
|
1923
|
+
# An optional number of child spans that were generated while this span was
|
1924
|
+
# active. If set, allows implementation to detect missing child spans.
|
1925
|
+
# Corresponds to the JSON property `childSpanCount`
|
1926
|
+
# @return [Fixnum]
|
1927
|
+
attr_accessor :child_span_count
|
1928
|
+
|
1929
|
+
# Represents a string that might be shortened to a specified length.
|
1930
|
+
# Corresponds to the JSON property `displayName`
|
1931
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::TruncatableString]
|
1932
|
+
attr_accessor :display_name
|
1933
|
+
|
1934
|
+
# The end time of the span. On the client side, this is the time kept by the
|
1935
|
+
# local machine where the span execution ends. On the server side, this is the
|
1936
|
+
# time when the server application handler stops running.
|
1937
|
+
# Corresponds to the JSON property `endTime`
|
1938
|
+
# @return [String]
|
1939
|
+
attr_accessor :end_time
|
1940
|
+
|
1941
|
+
# The resource name of the span in the following format: projects/[PROJECT_ID]/
|
1942
|
+
# traces/[TRACE_ID]/spans/SPAN_ID is a unique identifier for a trace within a
|
1943
|
+
# project; it is a 32-character hexadecimal encoding of a 16-byte array. [
|
1944
|
+
# SPAN_ID] is a unique identifier for a span within a trace; it is a 16-
|
1945
|
+
# character hexadecimal encoding of an 8-byte array.
|
1946
|
+
# Corresponds to the JSON property `name`
|
1947
|
+
# @return [String]
|
1948
|
+
attr_accessor :name
|
1949
|
+
|
1950
|
+
# The [SPAN_ID] of this span's parent span. If this is a root span, then this
|
1951
|
+
# field must be empty.
|
1952
|
+
# Corresponds to the JSON property `parentSpanId`
|
1953
|
+
# @return [String]
|
1954
|
+
attr_accessor :parent_span_id
|
1955
|
+
|
1956
|
+
# (Optional) Set this parameter to indicate whether this span is in the same
|
1957
|
+
# process as its parent. If you do not set this parameter, Stackdriver Trace is
|
1958
|
+
# unable to take advantage of this helpful information.
|
1959
|
+
# Corresponds to the JSON property `sameProcessAsParentSpan`
|
1960
|
+
# @return [Boolean]
|
1961
|
+
attr_accessor :same_process_as_parent_span
|
1962
|
+
alias_method :same_process_as_parent_span?, :same_process_as_parent_span
|
1963
|
+
|
1964
|
+
# The [SPAN_ID] portion of the span's resource name.
|
1965
|
+
# Corresponds to the JSON property `spanId`
|
1966
|
+
# @return [String]
|
1967
|
+
attr_accessor :span_id
|
1968
|
+
|
1969
|
+
# Distinguishes between spans generated in a particular context. For example,
|
1970
|
+
# two spans with the same name may be distinguished using `CLIENT` (caller) and `
|
1971
|
+
# SERVER` (callee) to identify an RPC call.
|
1972
|
+
# Corresponds to the JSON property `spanKind`
|
1973
|
+
# @return [String]
|
1974
|
+
attr_accessor :span_kind
|
1975
|
+
|
1976
|
+
# The start time of the span. On the client side, this is the time kept by the
|
1977
|
+
# local machine where the span execution starts. On the server side, this is the
|
1978
|
+
# time when the server's application handler starts running.
|
1979
|
+
# Corresponds to the JSON property `startTime`
|
1980
|
+
# @return [String]
|
1981
|
+
attr_accessor :start_time
|
1982
|
+
|
1983
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1984
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1985
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1986
|
+
# data: error code, error message, and error details. You can find out more
|
1987
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1988
|
+
# //cloud.google.com/apis/design/errors).
|
1989
|
+
# Corresponds to the JSON property `status`
|
1990
|
+
# @return [Google::Apis::NetworkconnectivityV1alpha1::GoogleRpcStatus]
|
1991
|
+
attr_accessor :status
|
1992
|
+
|
1993
|
+
def initialize(**args)
|
1994
|
+
update!(**args)
|
1995
|
+
end
|
1996
|
+
|
1997
|
+
# Update properties of this object
|
1998
|
+
def update!(**args)
|
1999
|
+
@attributes = args[:attributes] if args.key?(:attributes)
|
2000
|
+
@child_span_count = args[:child_span_count] if args.key?(:child_span_count)
|
2001
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
2002
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
2003
|
+
@name = args[:name] if args.key?(:name)
|
2004
|
+
@parent_span_id = args[:parent_span_id] if args.key?(:parent_span_id)
|
2005
|
+
@same_process_as_parent_span = args[:same_process_as_parent_span] if args.key?(:same_process_as_parent_span)
|
2006
|
+
@span_id = args[:span_id] if args.key?(:span_id)
|
2007
|
+
@span_kind = args[:span_kind] if args.key?(:span_kind)
|
2008
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
2009
|
+
@status = args[:status] if args.key?(:status)
|
2010
|
+
end
|
2011
|
+
end
|
2012
|
+
|
2013
|
+
# Represents a string that might be shortened to a specified length.
|
2014
|
+
class TruncatableString
|
2015
|
+
include Google::Apis::Core::Hashable
|
2016
|
+
|
2017
|
+
# The number of bytes removed from the original string. If this value is 0, then
|
2018
|
+
# the string was not shortened.
|
2019
|
+
# Corresponds to the JSON property `truncatedByteCount`
|
2020
|
+
# @return [Fixnum]
|
2021
|
+
attr_accessor :truncated_byte_count
|
2022
|
+
|
2023
|
+
# The shortened string. For example, if the original string is 500 bytes long
|
2024
|
+
# and the limit of the string is 128 bytes, then `value` contains the first 128
|
2025
|
+
# bytes of the 500-byte string. Truncation always happens on a UTF8 character
|
2026
|
+
# boundary. If there are multi-byte characters in the string, then the length of
|
2027
|
+
# the shortened string might be less than the size limit.
|
2028
|
+
# Corresponds to the JSON property `value`
|
2029
|
+
# @return [String]
|
2030
|
+
attr_accessor :value
|
2031
|
+
|
2032
|
+
def initialize(**args)
|
2033
|
+
update!(**args)
|
2034
|
+
end
|
2035
|
+
|
2036
|
+
# Update properties of this object
|
2037
|
+
def update!(**args)
|
2038
|
+
@truncated_byte_count = args[:truncated_byte_count] if args.key?(:truncated_byte_count)
|
2039
|
+
@value = args[:value] if args.key?(:value)
|
2040
|
+
end
|
2041
|
+
end
|
2042
|
+
end
|
2043
|
+
end
|
2044
|
+
end
|