google-cloud-security-private_ca-v1 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -96,6 +96,9 @@ module Google
96
96
  channel_args: @config.channel_args,
97
97
  interceptors: @config.interceptors
98
98
  )
99
+
100
+ # Used by an LRO wrapper for some methods of this service
101
+ @operations_client = self
99
102
  end
100
103
 
101
104
  # Service calls
@@ -156,13 +159,11 @@ module Google
156
159
  # # Call the list_operations method.
157
160
  # result = client.list_operations request
158
161
  #
159
- # # The returned object is of type Gapic::PagedEnumerable. You can
160
- # # iterate over all elements by calling #each, and the enumerable
161
- # # will lazily make API calls to fetch subsequent pages. Other
162
- # # methods are also available for managing paging directly.
163
- # result.each do |response|
162
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
163
+ # # over elements, and API calls will be issued to fetch pages as needed.
164
+ # result.each do |item|
164
165
  # # Each element is of type ::Google::Longrunning::Operation.
165
- # p response
166
+ # p item
166
167
  # end
167
168
  #
168
169
  def list_operations request, options = nil
@@ -251,14 +252,14 @@ module Google
251
252
  # # Call the get_operation method.
252
253
  # result = client.get_operation request
253
254
  #
254
- # # The returned object is of type Gapic::Operation. You can use this
255
- # # object to check the status of an operation, cancel it, or wait
256
- # # for results. Here is how to block until completion:
255
+ # # The returned object is of type Gapic::Operation. You can use it to
256
+ # # check the status of an operation, cancel it, or wait for results.
257
+ # # Here is how to wait for a response.
257
258
  # result.wait_until_done! timeout: 60
258
259
  # if result.response?
259
260
  # p result.response
260
261
  # else
261
- # puts "Error!"
262
+ # puts "No response received."
262
263
  # end
263
264
  #
264
265
  def get_operation request, options = nil
@@ -538,14 +539,14 @@ module Google
538
539
  # # Call the wait_operation method.
539
540
  # result = client.wait_operation request
540
541
  #
541
- # # The returned object is of type Gapic::Operation. You can use this
542
- # # object to check the status of an operation, cancel it, or wait
543
- # # for results. Here is how to block until completion:
542
+ # # The returned object is of type Gapic::Operation. You can use it to
543
+ # # check the status of an operation, cancel it, or wait for results.
544
+ # # Here is how to wait for a response.
544
545
  # result.wait_until_done! timeout: 60
545
546
  # if result.response?
546
547
  # p result.response
547
548
  # else
548
- # puts "Error!"
549
+ # puts "No response received."
549
550
  # end
550
551
  #
551
552
  def wait_operation request, options = nil
@@ -33,10 +33,11 @@ module Google
33
33
  module PrivateCA
34
34
  module V1
35
35
  ##
36
- # {::Google::Cloud::Security::PrivateCA::V1::CertificateAuthorityService::Client Certificate Authority Service} manages private
37
- # certificate authorities and issued certificates.
36
+ # [Certificate Authority
37
+ # Service][google.cloud.security.privateca.v1.CertificateAuthorityService]
38
+ # manages private certificate authorities and issued certificates.
38
39
  #
39
- # To load this service and instantiate a client:
40
+ # @example Load this service and instantiate a gRPC client
40
41
  #
41
42
  # require "google/cloud/security/private_ca/v1/certificate_authority_service"
42
43
  # client = ::Google::Cloud::Security::PrivateCA::V1::CertificateAuthorityService::Client.new
@@ -22,7 +22,7 @@ module Google
22
22
  module Security
23
23
  module PrivateCA
24
24
  module V1
25
- VERSION = "0.3.0"
25
+ VERSION = "0.5.0"
26
26
  end
27
27
  end
28
28
  end
@@ -24,9 +24,9 @@ module Google
24
24
  module Security
25
25
  module PrivateCA
26
26
  ##
27
- # To load this package, including all its services, and instantiate a client:
27
+ # API client module.
28
28
  #
29
- # @example
29
+ # @example Load this package, including all its services, and instantiate a gRPC client
30
30
  #
31
31
  # require "google/cloud/security/private_ca/v1"
32
32
  # client = ::Google::Cloud::Security::PrivateCA::V1::CertificateAuthorityService::Client.new
@@ -170,12 +170,24 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
170
170
  optional :ca_options, :message, 2, "google.cloud.security.privateca.v1.X509Parameters.CaOptions"
171
171
  repeated :policy_ids, :message, 3, "google.cloud.security.privateca.v1.ObjectId"
172
172
  repeated :aia_ocsp_servers, :string, 4
173
+ optional :name_constraints, :message, 6, "google.cloud.security.privateca.v1.X509Parameters.NameConstraints"
173
174
  repeated :additional_extensions, :message, 5, "google.cloud.security.privateca.v1.X509Extension"
174
175
  end
175
176
  add_message "google.cloud.security.privateca.v1.X509Parameters.CaOptions" do
176
177
  proto3_optional :is_ca, :bool, 1
177
178
  proto3_optional :max_issuer_path_length, :int32, 2
178
179
  end
180
+ add_message "google.cloud.security.privateca.v1.X509Parameters.NameConstraints" do
181
+ optional :critical, :bool, 1
182
+ repeated :permitted_dns_names, :string, 2
183
+ repeated :excluded_dns_names, :string, 3
184
+ repeated :permitted_ip_ranges, :string, 4
185
+ repeated :excluded_ip_ranges, :string, 5
186
+ repeated :permitted_email_addresses, :string, 6
187
+ repeated :excluded_email_addresses, :string, 7
188
+ repeated :permitted_uris, :string, 8
189
+ repeated :excluded_uris, :string, 9
190
+ end
179
191
  add_message "google.cloud.security.privateca.v1.SubordinateConfig" do
180
192
  oneof :subordinate_config do
181
193
  optional :certificate_authority, :string, 1
@@ -291,6 +303,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
291
303
  value :CA_OPTIONS, 3
292
304
  value :POLICY_IDS, 4
293
305
  value :AIA_OCSP_SERVERS, 5
306
+ value :NAME_CONSTRAINTS, 6
294
307
  end
295
308
  add_enum "google.cloud.security.privateca.v1.RevocationReason" do
296
309
  value :REVOCATION_REASON_UNSPECIFIED, 0
@@ -339,6 +352,7 @@ module Google
339
352
  CertificateTemplate = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.CertificateTemplate").msgclass
340
353
  X509Parameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.X509Parameters").msgclass
341
354
  X509Parameters::CaOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.X509Parameters.CaOptions").msgclass
355
+ X509Parameters::NameConstraints = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.X509Parameters.NameConstraints").msgclass
342
356
  SubordinateConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.SubordinateConfig").msgclass
343
357
  SubordinateConfig::SubordinateConfigChain = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.SubordinateConfig.SubordinateConfigChain").msgclass
344
358
  PublicKey = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.security.privateca.v1.PublicKey").msgclass
@@ -25,8 +25,9 @@ module Google
25
25
  module PrivateCA
26
26
  module V1
27
27
  module CertificateAuthorityService
28
- # [Certificate Authority Service][google.cloud.security.privateca.v1.CertificateAuthorityService] manages private
29
- # certificate authorities and issued certificates.
28
+ # [Certificate Authority
29
+ # Service][google.cloud.security.privateca.v1.CertificateAuthorityService]
30
+ # manages private certificate authorities and issued certificates.
30
31
  class Service
31
32
 
32
33
  include ::GRPC::GenericService
@@ -35,7 +36,8 @@ module Google
35
36
  self.unmarshal_class_method = :decode
36
37
  self.service_name = 'google.cloud.security.privateca.v1.CertificateAuthorityService'
37
38
 
38
- # Create a new [Certificate][google.cloud.security.privateca.v1.Certificate] in a given Project, Location from a particular
39
+ # Create a new [Certificate][google.cloud.security.privateca.v1.Certificate]
40
+ # in a given Project, Location from a particular
39
41
  # [CaPool][google.cloud.security.privateca.v1.CaPool].
40
42
  rpc :CreateCertificate, ::Google::Cloud::Security::PrivateCA::V1::CreateCertificateRequest, ::Google::Cloud::Security::PrivateCA::V1::Certificate
41
43
  # Returns a [Certificate][google.cloud.security.privateca.v1.Certificate].
@@ -44,39 +46,58 @@ module Google
44
46
  rpc :ListCertificates, ::Google::Cloud::Security::PrivateCA::V1::ListCertificatesRequest, ::Google::Cloud::Security::PrivateCA::V1::ListCertificatesResponse
45
47
  # Revoke a [Certificate][google.cloud.security.privateca.v1.Certificate].
46
48
  rpc :RevokeCertificate, ::Google::Cloud::Security::PrivateCA::V1::RevokeCertificateRequest, ::Google::Cloud::Security::PrivateCA::V1::Certificate
47
- # Update a [Certificate][google.cloud.security.privateca.v1.Certificate]. Currently, the only field you can update is the
49
+ # Update a [Certificate][google.cloud.security.privateca.v1.Certificate].
50
+ # Currently, the only field you can update is the
48
51
  # [labels][google.cloud.security.privateca.v1.Certificate.labels] field.
49
52
  rpc :UpdateCertificate, ::Google::Cloud::Security::PrivateCA::V1::UpdateCertificateRequest, ::Google::Cloud::Security::PrivateCA::V1::Certificate
50
- # Activate a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority] that is in state
53
+ # Activate a
54
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
55
+ # that is in state
51
56
  # [AWAITING_USER_ACTIVATION][google.cloud.security.privateca.v1.CertificateAuthority.State.AWAITING_USER_ACTIVATION]
52
- # and is of type [SUBORDINATE][google.cloud.security.privateca.v1.CertificateAuthority.Type.SUBORDINATE]. After
53
- # the parent Certificate Authority signs a certificate signing request from
54
- # [FetchCertificateAuthorityCsr][google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCertificateAuthorityCsr], this method can complete the activation
55
- # process.
57
+ # and is of type
58
+ # [SUBORDINATE][google.cloud.security.privateca.v1.CertificateAuthority.Type.SUBORDINATE].
59
+ # After the parent Certificate Authority signs a certificate signing request
60
+ # from
61
+ # [FetchCertificateAuthorityCsr][google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCertificateAuthorityCsr],
62
+ # this method can complete the activation process.
56
63
  rpc :ActivateCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::ActivateCertificateAuthorityRequest, ::Google::Longrunning::Operation
57
- # Create a new [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority] in a given Project and Location.
64
+ # Create a new
65
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
66
+ # in a given Project and Location.
58
67
  rpc :CreateCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::CreateCertificateAuthorityRequest, ::Google::Longrunning::Operation
59
- # Disable a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
68
+ # Disable a
69
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
60
70
  rpc :DisableCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::DisableCertificateAuthorityRequest, ::Google::Longrunning::Operation
61
- # Enable a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
71
+ # Enable a
72
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
62
73
  rpc :EnableCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::EnableCertificateAuthorityRequest, ::Google::Longrunning::Operation
63
- # Fetch a certificate signing request (CSR) from a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
74
+ # Fetch a certificate signing request (CSR) from a
75
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
64
76
  # that is in state
65
77
  # [AWAITING_USER_ACTIVATION][google.cloud.security.privateca.v1.CertificateAuthority.State.AWAITING_USER_ACTIVATION]
66
- # and is of type [SUBORDINATE][google.cloud.security.privateca.v1.CertificateAuthority.Type.SUBORDINATE]. The
67
- # CSR must then be signed by the desired parent Certificate Authority, which
68
- # could be another [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority] resource, or could be an on-prem
69
- # certificate authority. See also [ActivateCertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthorityService.ActivateCertificateAuthority].
78
+ # and is of type
79
+ # [SUBORDINATE][google.cloud.security.privateca.v1.CertificateAuthority.Type.SUBORDINATE].
80
+ # The CSR must then be signed by the desired parent Certificate Authority,
81
+ # which could be another
82
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
83
+ # resource, or could be an on-prem certificate authority. See also
84
+ # [ActivateCertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthorityService.ActivateCertificateAuthority].
70
85
  rpc :FetchCertificateAuthorityCsr, ::Google::Cloud::Security::PrivateCA::V1::FetchCertificateAuthorityCsrRequest, ::Google::Cloud::Security::PrivateCA::V1::FetchCertificateAuthorityCsrResponse
71
- # Returns a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
86
+ # Returns a
87
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
72
88
  rpc :GetCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::GetCertificateAuthorityRequest, ::Google::Cloud::Security::PrivateCA::V1::CertificateAuthority
73
- # Lists [CertificateAuthorities][google.cloud.security.privateca.v1.CertificateAuthority].
89
+ # Lists
90
+ # [CertificateAuthorities][google.cloud.security.privateca.v1.CertificateAuthority].
74
91
  rpc :ListCertificateAuthorities, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateAuthoritiesRequest, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateAuthoritiesResponse
75
- # Undelete a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority] that has been deleted.
92
+ # Undelete a
93
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
94
+ # that has been deleted.
76
95
  rpc :UndeleteCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::UndeleteCertificateAuthorityRequest, ::Google::Longrunning::Operation
77
- # Delete a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
96
+ # Delete a
97
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
78
98
  rpc :DeleteCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::DeleteCertificateAuthorityRequest, ::Google::Longrunning::Operation
79
- # Update a [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
99
+ # Update a
100
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority].
80
101
  rpc :UpdateCertificateAuthority, ::Google::Cloud::Security::PrivateCA::V1::UpdateCertificateAuthorityRequest, ::Google::Longrunning::Operation
81
102
  # Create a [CaPool][google.cloud.security.privateca.v1.CaPool].
82
103
  rpc :CreateCaPool, ::Google::Cloud::Security::PrivateCA::V1::CreateCaPoolRequest, ::Google::Longrunning::Operation
@@ -88,25 +109,36 @@ module Google
88
109
  rpc :ListCaPools, ::Google::Cloud::Security::PrivateCA::V1::ListCaPoolsRequest, ::Google::Cloud::Security::PrivateCA::V1::ListCaPoolsResponse
89
110
  # Delete a [CaPool][google.cloud.security.privateca.v1.CaPool].
90
111
  rpc :DeleteCaPool, ::Google::Cloud::Security::PrivateCA::V1::DeleteCaPoolRequest, ::Google::Longrunning::Operation
91
- # FetchCaCerts returns the current trust anchor for the [CaPool][google.cloud.security.privateca.v1.CaPool]. This will
92
- # include CA certificate chains for all ACTIVE [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
112
+ # FetchCaCerts returns the current trust anchor for the
113
+ # [CaPool][google.cloud.security.privateca.v1.CaPool]. This will include CA
114
+ # certificate chains for all ACTIVE
115
+ # [CertificateAuthority][google.cloud.security.privateca.v1.CertificateAuthority]
93
116
  # resources in the [CaPool][google.cloud.security.privateca.v1.CaPool].
94
117
  rpc :FetchCaCerts, ::Google::Cloud::Security::PrivateCA::V1::FetchCaCertsRequest, ::Google::Cloud::Security::PrivateCA::V1::FetchCaCertsResponse
95
- # Returns a [CertificateRevocationList][google.cloud.security.privateca.v1.CertificateRevocationList].
118
+ # Returns a
119
+ # [CertificateRevocationList][google.cloud.security.privateca.v1.CertificateRevocationList].
96
120
  rpc :GetCertificateRevocationList, ::Google::Cloud::Security::PrivateCA::V1::GetCertificateRevocationListRequest, ::Google::Cloud::Security::PrivateCA::V1::CertificateRevocationList
97
- # Lists [CertificateRevocationLists][google.cloud.security.privateca.v1.CertificateRevocationList].
121
+ # Lists
122
+ # [CertificateRevocationLists][google.cloud.security.privateca.v1.CertificateRevocationList].
98
123
  rpc :ListCertificateRevocationLists, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateRevocationListsRequest, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateRevocationListsResponse
99
- # Update a [CertificateRevocationList][google.cloud.security.privateca.v1.CertificateRevocationList].
124
+ # Update a
125
+ # [CertificateRevocationList][google.cloud.security.privateca.v1.CertificateRevocationList].
100
126
  rpc :UpdateCertificateRevocationList, ::Google::Cloud::Security::PrivateCA::V1::UpdateCertificateRevocationListRequest, ::Google::Longrunning::Operation
101
- # Create a new [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate] in a given Project and Location.
127
+ # Create a new
128
+ # [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate]
129
+ # in a given Project and Location.
102
130
  rpc :CreateCertificateTemplate, ::Google::Cloud::Security::PrivateCA::V1::CreateCertificateTemplateRequest, ::Google::Longrunning::Operation
103
- # DeleteCertificateTemplate deletes a [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
131
+ # DeleteCertificateTemplate deletes a
132
+ # [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
104
133
  rpc :DeleteCertificateTemplate, ::Google::Cloud::Security::PrivateCA::V1::DeleteCertificateTemplateRequest, ::Google::Longrunning::Operation
105
- # Returns a [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
134
+ # Returns a
135
+ # [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
106
136
  rpc :GetCertificateTemplate, ::Google::Cloud::Security::PrivateCA::V1::GetCertificateTemplateRequest, ::Google::Cloud::Security::PrivateCA::V1::CertificateTemplate
107
- # Lists [CertificateTemplates][google.cloud.security.privateca.v1.CertificateTemplate].
137
+ # Lists
138
+ # [CertificateTemplates][google.cloud.security.privateca.v1.CertificateTemplate].
108
139
  rpc :ListCertificateTemplates, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateTemplatesRequest, ::Google::Cloud::Security::PrivateCA::V1::ListCertificateTemplatesResponse
109
- # Update a [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
140
+ # Update a
141
+ # [CertificateTemplate][google.cloud.security.privateca.v1.CertificateTemplate].
110
142
  rpc :UpdateCertificateTemplate, ::Google::Cloud::Security::PrivateCA::V1::UpdateCertificateTemplateRequest, ::Google::Longrunning::Operation
111
143
  end
112
144
 
@@ -0,0 +1,318 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @return [::String]
25
+ # Link to automatically generated reference documentation. Example:
26
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
27
+ # @!attribute [rw] destinations
28
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
29
+ # The destination where API teams want this client library to be published.
30
+ class CommonLanguageSettings
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # Details about how and where to publish client libraries.
36
+ # @!attribute [rw] version
37
+ # @return [::String]
38
+ # Version of the API to apply these settings to.
39
+ # @!attribute [rw] launch_stage
40
+ # @return [::Google::Api::LaunchStage]
41
+ # Launch stage of this version of the API.
42
+ # @!attribute [rw] rest_numeric_enums
43
+ # @return [::Boolean]
44
+ # When using transport=rest, the client request will encode enums as
45
+ # numbers rather than strings.
46
+ # @!attribute [rw] java_settings
47
+ # @return [::Google::Api::JavaSettings]
48
+ # Settings for legacy Java features, supported in the Service YAML.
49
+ # @!attribute [rw] cpp_settings
50
+ # @return [::Google::Api::CppSettings]
51
+ # Settings for C++ client libraries.
52
+ # @!attribute [rw] php_settings
53
+ # @return [::Google::Api::PhpSettings]
54
+ # Settings for PHP client libraries.
55
+ # @!attribute [rw] python_settings
56
+ # @return [::Google::Api::PythonSettings]
57
+ # Settings for Python client libraries.
58
+ # @!attribute [rw] node_settings
59
+ # @return [::Google::Api::NodeSettings]
60
+ # Settings for Node client libraries.
61
+ # @!attribute [rw] dotnet_settings
62
+ # @return [::Google::Api::DotnetSettings]
63
+ # Settings for .NET client libraries.
64
+ # @!attribute [rw] ruby_settings
65
+ # @return [::Google::Api::RubySettings]
66
+ # Settings for Ruby client libraries.
67
+ # @!attribute [rw] go_settings
68
+ # @return [::Google::Api::GoSettings]
69
+ # Settings for Go client libraries.
70
+ class ClientLibrarySettings
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # This message configures the settings for publishing [Google Cloud Client
76
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
77
+ # generated from the service config.
78
+ # @!attribute [rw] method_settings
79
+ # @return [::Array<::Google::Api::MethodSettings>]
80
+ # A list of API method settings, e.g. the behavior for methods that use the
81
+ # long-running operation pattern.
82
+ # @!attribute [rw] new_issue_uri
83
+ # @return [::String]
84
+ # Link to a place that API users can report issues. Example:
85
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
86
+ # @!attribute [rw] documentation_uri
87
+ # @return [::String]
88
+ # Link to product home page. Example:
89
+ # https://cloud.google.com/asset-inventory/docs/overview
90
+ # @!attribute [rw] api_short_name
91
+ # @return [::String]
92
+ # Used as a tracking tag when collecting data about the APIs developer
93
+ # relations artifacts like docs, packages delivered to package managers,
94
+ # etc. Example: "speech".
95
+ # @!attribute [rw] github_label
96
+ # @return [::String]
97
+ # GitHub label to apply to issues and pull requests opened for this API.
98
+ # @!attribute [rw] codeowner_github_teams
99
+ # @return [::Array<::String>]
100
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
101
+ # containing source code for the client libraries for this API.
102
+ # @!attribute [rw] doc_tag_prefix
103
+ # @return [::String]
104
+ # A prefix used in sample code when demarking regions to be included in
105
+ # documentation.
106
+ # @!attribute [rw] organization
107
+ # @return [::Google::Api::ClientLibraryOrganization]
108
+ # For whom the client library is being published.
109
+ # @!attribute [rw] library_settings
110
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
111
+ # Client library settings. If the same version string appears multiple
112
+ # times in this list, then the last one wins. Settings from earlier
113
+ # settings with the same version string are discarded.
114
+ class Publishing
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Settings for Java client libraries.
120
+ # @!attribute [rw] library_package
121
+ # @return [::String]
122
+ # The package name to use in Java. Clobbers the java_package option
123
+ # set in the protobuf. This should be used **only** by APIs
124
+ # who have already set the language_settings.java.package_name" field
125
+ # in gapic.yaml. API teams should use the protobuf java_package option
126
+ # where possible.
127
+ #
128
+ # Example of a YAML configuration::
129
+ #
130
+ # publishing:
131
+ # java_settings:
132
+ # library_package: com.google.cloud.pubsub.v1
133
+ # @!attribute [rw] service_class_names
134
+ # @return [::Google::Protobuf::Map{::String => ::String}]
135
+ # Configure the Java class name to use instead of the service's for its
136
+ # corresponding generated GAPIC client. Keys are fully-qualified
137
+ # service names as they appear in the protobuf (including the full
138
+ # the language_settings.java.interface_names" field in gapic.yaml. API
139
+ # teams should otherwise use the service name as it appears in the
140
+ # protobuf.
141
+ #
142
+ # Example of a YAML configuration::
143
+ #
144
+ # publishing:
145
+ # java_settings:
146
+ # service_class_names:
147
+ # - google.pubsub.v1.Publisher: TopicAdmin
148
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
149
+ # @!attribute [rw] common
150
+ # @return [::Google::Api::CommonLanguageSettings]
151
+ # Some settings.
152
+ class JavaSettings
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+
156
+ # @!attribute [rw] key
157
+ # @return [::String]
158
+ # @!attribute [rw] value
159
+ # @return [::String]
160
+ class ServiceClassNamesEntry
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+
166
+ # Settings for C++ client libraries.
167
+ # @!attribute [rw] common
168
+ # @return [::Google::Api::CommonLanguageSettings]
169
+ # Some settings.
170
+ class CppSettings
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Settings for Php client libraries.
176
+ # @!attribute [rw] common
177
+ # @return [::Google::Api::CommonLanguageSettings]
178
+ # Some settings.
179
+ class PhpSettings
180
+ include ::Google::Protobuf::MessageExts
181
+ extend ::Google::Protobuf::MessageExts::ClassMethods
182
+ end
183
+
184
+ # Settings for Python client libraries.
185
+ # @!attribute [rw] common
186
+ # @return [::Google::Api::CommonLanguageSettings]
187
+ # Some settings.
188
+ class PythonSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Settings for Node client libraries.
194
+ # @!attribute [rw] common
195
+ # @return [::Google::Api::CommonLanguageSettings]
196
+ # Some settings.
197
+ class NodeSettings
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+
202
+ # Settings for Dotnet client libraries.
203
+ # @!attribute [rw] common
204
+ # @return [::Google::Api::CommonLanguageSettings]
205
+ # Some settings.
206
+ class DotnetSettings
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Settings for Ruby client libraries.
212
+ # @!attribute [rw] common
213
+ # @return [::Google::Api::CommonLanguageSettings]
214
+ # Some settings.
215
+ class RubySettings
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Settings for Go client libraries.
221
+ # @!attribute [rw] common
222
+ # @return [::Google::Api::CommonLanguageSettings]
223
+ # Some settings.
224
+ class GoSettings
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+
229
+ # Describes the generator configuration for a method.
230
+ # @!attribute [rw] selector
231
+ # @return [::String]
232
+ # The fully qualified name of the method, for which the options below apply.
233
+ # This is used to find the method to apply the options.
234
+ # @!attribute [rw] long_running
235
+ # @return [::Google::Api::MethodSettings::LongRunning]
236
+ # Describes settings to use for long-running operations when generating
237
+ # API methods for RPCs. Complements RPCs that use the annotations in
238
+ # google/longrunning/operations.proto.
239
+ #
240
+ # Example of a YAML configuration::
241
+ #
242
+ # publishing:
243
+ # method_behavior:
244
+ # - selector: CreateAdDomain
245
+ # long_running:
246
+ # initial_poll_delay:
247
+ # seconds: 60 # 1 minute
248
+ # poll_delay_multiplier: 1.5
249
+ # max_poll_delay:
250
+ # seconds: 360 # 6 minutes
251
+ # total_poll_timeout:
252
+ # seconds: 54000 # 90 minutes
253
+ class MethodSettings
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # Describes settings to use when generating API methods that use the
258
+ # long-running operation pattern.
259
+ # All default values below are from those used in the client library
260
+ # generators (e.g.
261
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
262
+ # @!attribute [rw] initial_poll_delay
263
+ # @return [::Google::Protobuf::Duration]
264
+ # Initial delay after which the first poll request will be made.
265
+ # Default value: 5 seconds.
266
+ # @!attribute [rw] poll_delay_multiplier
267
+ # @return [::Float]
268
+ # Multiplier to gradually increase delay between subsequent polls until it
269
+ # reaches max_poll_delay.
270
+ # Default value: 1.5.
271
+ # @!attribute [rw] max_poll_delay
272
+ # @return [::Google::Protobuf::Duration]
273
+ # Maximum time between two subsequent poll requests.
274
+ # Default value: 45 seconds.
275
+ # @!attribute [rw] total_poll_timeout
276
+ # @return [::Google::Protobuf::Duration]
277
+ # Total polling timeout.
278
+ # Default value: 5 minutes.
279
+ class LongRunning
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+ end
284
+
285
+ # The organization for which the client libraries are being published.
286
+ # Affects the url where generated docs are published, etc.
287
+ module ClientLibraryOrganization
288
+ # Not useful.
289
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
290
+
291
+ # Google Cloud Platform Org.
292
+ CLOUD = 1
293
+
294
+ # Ads (Advertising) Org.
295
+ ADS = 2
296
+
297
+ # Photos Org.
298
+ PHOTOS = 3
299
+
300
+ # Street View Org.
301
+ STREET_VIEW = 4
302
+ end
303
+
304
+ # To where should client libraries be published?
305
+ module ClientLibraryDestination
306
+ # Client libraries will neither be generated nor published to package
307
+ # managers.
308
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
309
+
310
+ # Generate the client library in a repo under github.com/googleapis,
311
+ # but don't publish it to package managers.
312
+ GITHUB = 10
313
+
314
+ # Publish the library to package managers like nuget.org and npmjs.com.
315
+ PACKAGE_MANAGER = 20
316
+ end
317
+ end
318
+ end