google-cloud-app_engine-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google-cloud-app_engine-v1.rb +21 -0
  7. data/lib/google/appengine/v1/app_yaml_pb.rb +137 -0
  8. data/lib/google/appengine/v1/appengine_pb.rb +261 -0
  9. data/lib/google/appengine/v1/appengine_services_pb.rb +313 -0
  10. data/lib/google/appengine/v1/application_pb.rb +69 -0
  11. data/lib/google/appengine/v1/audit_data_pb.rb +35 -0
  12. data/lib/google/appengine/v1/certificate_pb.rb +52 -0
  13. data/lib/google/appengine/v1/deploy_pb.rb +47 -0
  14. data/lib/google/appengine/v1/deployed_files_pb.rb +19 -0
  15. data/lib/google/appengine/v1/domain_mapping_pb.rb +51 -0
  16. data/lib/google/appengine/v1/domain_pb.rb +24 -0
  17. data/lib/google/appengine/v1/firewall_pb.rb +32 -0
  18. data/lib/google/appengine/v1/instance_pb.rb +45 -0
  19. data/lib/google/appengine/v1/location_pb.rb +24 -0
  20. data/lib/google/appengine/v1/network_settings_pb.rb +19 -0
  21. data/lib/google/appengine/v1/operation_pb.rb +37 -0
  22. data/lib/google/appengine/v1/service_pb.rb +37 -0
  23. data/lib/google/appengine/v1/version_pb.rb +183 -0
  24. data/lib/google/cloud/app_engine/v1.rb +45 -0
  25. data/lib/google/cloud/app_engine/v1/applications.rb +49 -0
  26. data/lib/google/cloud/app_engine/v1/applications/client.rb +624 -0
  27. data/lib/google/cloud/app_engine/v1/applications/credentials.rb +53 -0
  28. data/lib/google/cloud/app_engine/v1/applications/operations.rb +655 -0
  29. data/lib/google/cloud/app_engine/v1/authorized_certificates.rb +49 -0
  30. data/lib/google/cloud/app_engine/v1/authorized_certificates/client.rb +690 -0
  31. data/lib/google/cloud/app_engine/v1/authorized_certificates/credentials.rb +53 -0
  32. data/lib/google/cloud/app_engine/v1/authorized_domains.rb +50 -0
  33. data/lib/google/cloud/app_engine/v1/authorized_domains/client.rb +380 -0
  34. data/lib/google/cloud/app_engine/v1/authorized_domains/credentials.rb +53 -0
  35. data/lib/google/cloud/app_engine/v1/domain_mappings.rb +49 -0
  36. data/lib/google/cloud/app_engine/v1/domain_mappings/client.rb +705 -0
  37. data/lib/google/cloud/app_engine/v1/domain_mappings/credentials.rb +53 -0
  38. data/lib/google/cloud/app_engine/v1/domain_mappings/operations.rb +655 -0
  39. data/lib/google/cloud/app_engine/v1/firewall.rb +57 -0
  40. data/lib/google/cloud/app_engine/v1/firewall/client.rb +783 -0
  41. data/lib/google/cloud/app_engine/v1/firewall/credentials.rb +53 -0
  42. data/lib/google/cloud/app_engine/v1/instances.rb +49 -0
  43. data/lib/google/cloud/app_engine/v1/instances/client.rb +644 -0
  44. data/lib/google/cloud/app_engine/v1/instances/credentials.rb +53 -0
  45. data/lib/google/cloud/app_engine/v1/instances/operations.rb +655 -0
  46. data/lib/google/cloud/app_engine/v1/services.rb +49 -0
  47. data/lib/google/cloud/app_engine/v1/services/client.rb +629 -0
  48. data/lib/google/cloud/app_engine/v1/services/credentials.rb +53 -0
  49. data/lib/google/cloud/app_engine/v1/services/operations.rb +655 -0
  50. data/lib/google/cloud/app_engine/v1/version.rb +28 -0
  51. data/lib/google/cloud/app_engine/v1/versions.rb +49 -0
  52. data/lib/google/cloud/app_engine/v1/versions/client.rb +738 -0
  53. data/lib/google/cloud/app_engine/v1/versions/credentials.rb +53 -0
  54. data/lib/google/cloud/app_engine/v1/versions/operations.rb +655 -0
  55. data/proto_docs/README.md +4 -0
  56. data/proto_docs/google/api/resource.rb +283 -0
  57. data/proto_docs/google/appengine/v1/app_yaml.rb +379 -0
  58. data/proto_docs/google/appengine/v1/appengine.rb +639 -0
  59. data/proto_docs/google/appengine/v1/application.rb +192 -0
  60. data/proto_docs/google/appengine/v1/audit_data.rb +56 -0
  61. data/proto_docs/google/appengine/v1/certificate.rb +161 -0
  62. data/proto_docs/google/appengine/v1/deploy.rb +130 -0
  63. data/proto_docs/google/appengine/v1/domain.rb +42 -0
  64. data/proto_docs/google/appengine/v1/domain_mapping.rb +127 -0
  65. data/proto_docs/google/appengine/v1/firewall.rb +72 -0
  66. data/proto_docs/google/appengine/v1/instance.rb +98 -0
  67. data/proto_docs/google/appengine/v1/location.rb +38 -0
  68. data/proto_docs/google/appengine/v1/operation.rb +67 -0
  69. data/proto_docs/google/appengine/v1/service.rb +100 -0
  70. data/proto_docs/google/appengine/v1/version.rb +597 -0
  71. data/proto_docs/google/longrunning/operations.rb +164 -0
  72. data/proto_docs/google/protobuf/any.rb +141 -0
  73. data/proto_docs/google/protobuf/duration.rb +98 -0
  74. data/proto_docs/google/protobuf/empty.rb +36 -0
  75. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  76. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  77. data/proto_docs/google/rpc/status.rb +46 -0
  78. metadata +261 -0
@@ -0,0 +1,37 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/appengine/v1/service.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ Google::Protobuf::DescriptorPool.generated_pool.build do
8
+ add_file("google/appengine/v1/service.proto", :syntax => :proto3) do
9
+ add_message "google.appengine.v1.Service" do
10
+ optional :name, :string, 1
11
+ optional :id, :string, 2
12
+ optional :split, :message, 3, "google.appengine.v1.TrafficSplit"
13
+ end
14
+ add_message "google.appengine.v1.TrafficSplit" do
15
+ optional :shard_by, :enum, 1, "google.appengine.v1.TrafficSplit.ShardBy"
16
+ map :allocations, :string, :double, 2
17
+ end
18
+ add_enum "google.appengine.v1.TrafficSplit.ShardBy" do
19
+ value :UNSPECIFIED, 0
20
+ value :COOKIE, 1
21
+ value :IP, 2
22
+ value :RANDOM, 3
23
+ end
24
+ end
25
+ end
26
+
27
+ module Google
28
+ module Cloud
29
+ module AppEngine
30
+ module V1
31
+ Service = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Service").msgclass
32
+ TrafficSplit = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.TrafficSplit").msgclass
33
+ TrafficSplit::ShardBy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.TrafficSplit.ShardBy").enummodule
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,183 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/appengine/v1/version.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/appengine/v1/app_yaml_pb'
7
+ require 'google/appengine/v1/deploy_pb'
8
+ require 'google/protobuf/duration_pb'
9
+ require 'google/protobuf/timestamp_pb'
10
+ require 'google/api/annotations_pb'
11
+ Google::Protobuf::DescriptorPool.generated_pool.build do
12
+ add_file("google/appengine/v1/version.proto", :syntax => :proto3) do
13
+ add_message "google.appengine.v1.Version" do
14
+ optional :name, :string, 1
15
+ optional :id, :string, 2
16
+ repeated :inbound_services, :enum, 6, "google.appengine.v1.InboundServiceType"
17
+ optional :instance_class, :string, 7
18
+ optional :network, :message, 8, "google.appengine.v1.Network"
19
+ repeated :zones, :string, 118
20
+ optional :resources, :message, 9, "google.appengine.v1.Resources"
21
+ optional :runtime, :string, 10
22
+ optional :runtime_channel, :string, 117
23
+ optional :threadsafe, :bool, 11
24
+ optional :vm, :bool, 12
25
+ map :beta_settings, :string, :string, 13
26
+ optional :env, :string, 14
27
+ optional :serving_status, :enum, 15, "google.appengine.v1.ServingStatus"
28
+ optional :created_by, :string, 16
29
+ optional :create_time, :message, 17, "google.protobuf.Timestamp"
30
+ optional :disk_usage_bytes, :int64, 18
31
+ optional :runtime_api_version, :string, 21
32
+ optional :runtime_main_executable_path, :string, 22
33
+ repeated :handlers, :message, 100, "google.appengine.v1.UrlMap"
34
+ repeated :error_handlers, :message, 101, "google.appengine.v1.ErrorHandler"
35
+ repeated :libraries, :message, 102, "google.appengine.v1.Library"
36
+ optional :api_config, :message, 103, "google.appengine.v1.ApiConfigHandler"
37
+ map :env_variables, :string, :string, 104
38
+ optional :default_expiration, :message, 105, "google.protobuf.Duration"
39
+ optional :health_check, :message, 106, "google.appengine.v1.HealthCheck"
40
+ optional :readiness_check, :message, 112, "google.appengine.v1.ReadinessCheck"
41
+ optional :liveness_check, :message, 113, "google.appengine.v1.LivenessCheck"
42
+ optional :nobuild_files_regex, :string, 107
43
+ optional :deployment, :message, 108, "google.appengine.v1.Deployment"
44
+ optional :version_url, :string, 109
45
+ optional :endpoints_api_service, :message, 110, "google.appengine.v1.EndpointsApiService"
46
+ optional :entrypoint, :message, 122, "google.appengine.v1.Entrypoint"
47
+ optional :vpc_access_connector, :message, 121, "google.appengine.v1.VpcAccessConnector"
48
+ oneof :scaling do
49
+ optional :automatic_scaling, :message, 3, "google.appengine.v1.AutomaticScaling"
50
+ optional :basic_scaling, :message, 4, "google.appengine.v1.BasicScaling"
51
+ optional :manual_scaling, :message, 5, "google.appengine.v1.ManualScaling"
52
+ end
53
+ end
54
+ add_message "google.appengine.v1.EndpointsApiService" do
55
+ optional :name, :string, 1
56
+ optional :config_id, :string, 2
57
+ optional :rollout_strategy, :enum, 3, "google.appengine.v1.EndpointsApiService.RolloutStrategy"
58
+ optional :disable_trace_sampling, :bool, 4
59
+ end
60
+ add_enum "google.appengine.v1.EndpointsApiService.RolloutStrategy" do
61
+ value :UNSPECIFIED_ROLLOUT_STRATEGY, 0
62
+ value :FIXED, 1
63
+ value :MANAGED, 2
64
+ end
65
+ add_message "google.appengine.v1.AutomaticScaling" do
66
+ optional :cool_down_period, :message, 1, "google.protobuf.Duration"
67
+ optional :cpu_utilization, :message, 2, "google.appengine.v1.CpuUtilization"
68
+ optional :max_concurrent_requests, :int32, 3
69
+ optional :max_idle_instances, :int32, 4
70
+ optional :max_total_instances, :int32, 5
71
+ optional :max_pending_latency, :message, 6, "google.protobuf.Duration"
72
+ optional :min_idle_instances, :int32, 7
73
+ optional :min_total_instances, :int32, 8
74
+ optional :min_pending_latency, :message, 9, "google.protobuf.Duration"
75
+ optional :request_utilization, :message, 10, "google.appengine.v1.RequestUtilization"
76
+ optional :disk_utilization, :message, 11, "google.appengine.v1.DiskUtilization"
77
+ optional :network_utilization, :message, 12, "google.appengine.v1.NetworkUtilization"
78
+ optional :standard_scheduler_settings, :message, 20, "google.appengine.v1.StandardSchedulerSettings"
79
+ end
80
+ add_message "google.appengine.v1.BasicScaling" do
81
+ optional :idle_timeout, :message, 1, "google.protobuf.Duration"
82
+ optional :max_instances, :int32, 2
83
+ end
84
+ add_message "google.appengine.v1.ManualScaling" do
85
+ optional :instances, :int32, 1
86
+ end
87
+ add_message "google.appengine.v1.CpuUtilization" do
88
+ optional :aggregation_window_length, :message, 1, "google.protobuf.Duration"
89
+ optional :target_utilization, :double, 2
90
+ end
91
+ add_message "google.appengine.v1.RequestUtilization" do
92
+ optional :target_request_count_per_second, :int32, 1
93
+ optional :target_concurrent_requests, :int32, 2
94
+ end
95
+ add_message "google.appengine.v1.DiskUtilization" do
96
+ optional :target_write_bytes_per_second, :int32, 14
97
+ optional :target_write_ops_per_second, :int32, 15
98
+ optional :target_read_bytes_per_second, :int32, 16
99
+ optional :target_read_ops_per_second, :int32, 17
100
+ end
101
+ add_message "google.appengine.v1.NetworkUtilization" do
102
+ optional :target_sent_bytes_per_second, :int32, 1
103
+ optional :target_sent_packets_per_second, :int32, 11
104
+ optional :target_received_bytes_per_second, :int32, 12
105
+ optional :target_received_packets_per_second, :int32, 13
106
+ end
107
+ add_message "google.appengine.v1.StandardSchedulerSettings" do
108
+ optional :target_cpu_utilization, :double, 1
109
+ optional :target_throughput_utilization, :double, 2
110
+ optional :min_instances, :int32, 3
111
+ optional :max_instances, :int32, 4
112
+ end
113
+ add_message "google.appengine.v1.Network" do
114
+ repeated :forwarded_ports, :string, 1
115
+ optional :instance_tag, :string, 2
116
+ optional :name, :string, 3
117
+ optional :subnetwork_name, :string, 4
118
+ optional :session_affinity, :bool, 5
119
+ end
120
+ add_message "google.appengine.v1.Volume" do
121
+ optional :name, :string, 1
122
+ optional :volume_type, :string, 2
123
+ optional :size_gb, :double, 3
124
+ end
125
+ add_message "google.appengine.v1.Resources" do
126
+ optional :cpu, :double, 1
127
+ optional :disk_gb, :double, 2
128
+ optional :memory_gb, :double, 3
129
+ repeated :volumes, :message, 4, "google.appengine.v1.Volume"
130
+ end
131
+ add_message "google.appengine.v1.VpcAccessConnector" do
132
+ optional :name, :string, 1
133
+ end
134
+ add_message "google.appengine.v1.Entrypoint" do
135
+ oneof :command do
136
+ optional :shell, :string, 1
137
+ end
138
+ end
139
+ add_enum "google.appengine.v1.InboundServiceType" do
140
+ value :INBOUND_SERVICE_UNSPECIFIED, 0
141
+ value :INBOUND_SERVICE_MAIL, 1
142
+ value :INBOUND_SERVICE_MAIL_BOUNCE, 2
143
+ value :INBOUND_SERVICE_XMPP_ERROR, 3
144
+ value :INBOUND_SERVICE_XMPP_MESSAGE, 4
145
+ value :INBOUND_SERVICE_XMPP_SUBSCRIBE, 5
146
+ value :INBOUND_SERVICE_XMPP_PRESENCE, 6
147
+ value :INBOUND_SERVICE_CHANNEL_PRESENCE, 7
148
+ value :INBOUND_SERVICE_WARMUP, 9
149
+ end
150
+ add_enum "google.appengine.v1.ServingStatus" do
151
+ value :SERVING_STATUS_UNSPECIFIED, 0
152
+ value :SERVING, 1
153
+ value :STOPPED, 2
154
+ end
155
+ end
156
+ end
157
+
158
+ module Google
159
+ module Cloud
160
+ module AppEngine
161
+ module V1
162
+ Version = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Version").msgclass
163
+ EndpointsApiService = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.EndpointsApiService").msgclass
164
+ EndpointsApiService::RolloutStrategy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.EndpointsApiService.RolloutStrategy").enummodule
165
+ AutomaticScaling = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.AutomaticScaling").msgclass
166
+ BasicScaling = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.BasicScaling").msgclass
167
+ ManualScaling = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.ManualScaling").msgclass
168
+ CpuUtilization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.CpuUtilization").msgclass
169
+ RequestUtilization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.RequestUtilization").msgclass
170
+ DiskUtilization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.DiskUtilization").msgclass
171
+ NetworkUtilization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.NetworkUtilization").msgclass
172
+ StandardSchedulerSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.StandardSchedulerSettings").msgclass
173
+ Network = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Network").msgclass
174
+ Volume = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Volume").msgclass
175
+ Resources = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Resources").msgclass
176
+ VpcAccessConnector = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.VpcAccessConnector").msgclass
177
+ Entrypoint = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.Entrypoint").msgclass
178
+ InboundServiceType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.InboundServiceType").enummodule
179
+ ServingStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.appengine.v1.ServingStatus").enummodule
180
+ end
181
+ end
182
+ end
183
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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
+ require "google/cloud/app_engine/v1/applications"
20
+ require "google/cloud/app_engine/v1/services"
21
+ require "google/cloud/app_engine/v1/versions"
22
+ require "google/cloud/app_engine/v1/instances"
23
+ require "google/cloud/app_engine/v1/firewall"
24
+ require "google/cloud/app_engine/v1/authorized_domains"
25
+ require "google/cloud/app_engine/v1/authorized_certificates"
26
+ require "google/cloud/app_engine/v1/domain_mappings"
27
+ require "google/cloud/app_engine/v1/version"
28
+
29
+ module Google
30
+ module Cloud
31
+ module AppEngine
32
+ ##
33
+ # To load this package, including all its services, and instantiate a client:
34
+ #
35
+ # require "google/cloud/app_engine/v1"
36
+ # client = ::Google::Cloud::AppEngine::V1::Applications::Client.new
37
+ #
38
+ module V1
39
+ end
40
+ end
41
+ end
42
+ end
43
+
44
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
45
+ require "google/cloud/app_engine/v1/_helpers" if ::File.file? helper_path
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/app_engine/v1/version"
24
+
25
+ require "google/cloud/app_engine/v1/applications/credentials"
26
+ require "google/cloud/app_engine/v1/applications/operations"
27
+ require "google/cloud/app_engine/v1/applications/client"
28
+
29
+ module Google
30
+ module Cloud
31
+ module AppEngine
32
+ module V1
33
+ ##
34
+ # Manages App Engine applications.
35
+ #
36
+ # To load this service and instantiate a client:
37
+ #
38
+ # require "google/cloud/app_engine/v1/applications"
39
+ # client = ::Google::Cloud::AppEngine::V1::Applications::Client.new
40
+ #
41
+ module Applications
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+
48
+ helper_path = ::File.join __dir__, "applications", "helpers.rb"
49
+ require "google/cloud/app_engine/v1/applications/helpers" if ::File.file? helper_path
@@ -0,0 +1,624 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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
+ require "google/cloud/errors"
20
+ require "google/appengine/v1/appengine_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module AppEngine
25
+ module V1
26
+ module Applications
27
+ ##
28
+ # Client for the Applications service.
29
+ #
30
+ # Manages App Engine applications.
31
+ #
32
+ class Client
33
+ # @private
34
+ attr_reader :applications_stub
35
+
36
+ ##
37
+ # Configure the Applications Client class.
38
+ #
39
+ # See {::Google::Cloud::AppEngine::V1::Applications::Client::Configuration}
40
+ # for a description of the configuration fields.
41
+ #
42
+ # ## Example
43
+ #
44
+ # To modify the configuration for all Applications clients:
45
+ #
46
+ # ::Google::Cloud::AppEngine::V1::Applications::Client.configure do |config|
47
+ # config.timeout = 10.0
48
+ # end
49
+ #
50
+ # @yield [config] Configure the Client client.
51
+ # @yieldparam config [Client::Configuration]
52
+ #
53
+ # @return [Client::Configuration]
54
+ #
55
+ def self.configure
56
+ @configure ||= begin
57
+ namespace = ["Google", "Cloud", "AppEngine", "V1"]
58
+ parent_config = while namespace.any?
59
+ parent_name = namespace.join "::"
60
+ parent_const = const_get parent_name
61
+ break parent_const.configure if parent_const&.respond_to? :configure
62
+ namespace.pop
63
+ end
64
+ default_config = Client::Configuration.new parent_config
65
+
66
+ default_config
67
+ end
68
+ yield @configure if block_given?
69
+ @configure
70
+ end
71
+
72
+ ##
73
+ # Configure the Applications Client instance.
74
+ #
75
+ # The configuration is set to the derived mode, meaning that values can be changed,
76
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
77
+ # should be made on {Client.configure}.
78
+ #
79
+ # See {::Google::Cloud::AppEngine::V1::Applications::Client::Configuration}
80
+ # for a description of the configuration fields.
81
+ #
82
+ # @yield [config] Configure the Client client.
83
+ # @yieldparam config [Client::Configuration]
84
+ #
85
+ # @return [Client::Configuration]
86
+ #
87
+ def configure
88
+ yield @config if block_given?
89
+ @config
90
+ end
91
+
92
+ ##
93
+ # Create a new Applications client object.
94
+ #
95
+ # ## Examples
96
+ #
97
+ # To create a new Applications client with the default
98
+ # configuration:
99
+ #
100
+ # client = ::Google::Cloud::AppEngine::V1::Applications::Client.new
101
+ #
102
+ # To create a new Applications client with a custom
103
+ # configuration:
104
+ #
105
+ # client = ::Google::Cloud::AppEngine::V1::Applications::Client.new do |config|
106
+ # config.timeout = 10.0
107
+ # end
108
+ #
109
+ # @yield [config] Configure the Applications client.
110
+ # @yieldparam config [Client::Configuration]
111
+ #
112
+ def initialize
113
+ # These require statements are intentionally placed here to initialize
114
+ # the gRPC module only when it's required.
115
+ # See https://github.com/googleapis/toolkit/issues/446
116
+ require "gapic/grpc"
117
+ require "google/appengine/v1/appengine_services_pb"
118
+
119
+ # Create the configuration object
120
+ @config = Configuration.new Client.configure
121
+
122
+ # Yield the configuration if needed
123
+ yield @config if block_given?
124
+
125
+ # Create credentials
126
+ credentials = @config.credentials
127
+ # Use self-signed JWT if the scope and endpoint are unchanged from default,
128
+ # but only if the default endpoint does not have a region prefix.
129
+ enable_self_signed_jwt = @config.scope == Client.configure.scope &&
130
+ @config.endpoint == Client.configure.endpoint &&
131
+ !@config.endpoint.split(".").first.include?("-")
132
+ credentials ||= Credentials.default scope: @config.scope,
133
+ enable_self_signed_jwt: enable_self_signed_jwt
134
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
135
+ credentials = Credentials.new credentials, scope: @config.scope
136
+ end
137
+ @quota_project_id = @config.quota_project
138
+ @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
139
+
140
+ @operations_client = Operations.new do |config|
141
+ config.credentials = credentials
142
+ config.endpoint = @config.endpoint
143
+ end
144
+
145
+ @applications_stub = ::Gapic::ServiceStub.new(
146
+ ::Google::Cloud::AppEngine::V1::Applications::Stub,
147
+ credentials: credentials,
148
+ endpoint: @config.endpoint,
149
+ channel_args: @config.channel_args,
150
+ interceptors: @config.interceptors
151
+ )
152
+ end
153
+
154
+ ##
155
+ # Get the associated client for long-running operations.
156
+ #
157
+ # @return [::Google::Cloud::AppEngine::V1::Applications::Operations]
158
+ #
159
+ attr_reader :operations_client
160
+
161
+ # Service calls
162
+
163
+ ##
164
+ # Gets information about an application.
165
+ #
166
+ # @overload get_application(request, options = nil)
167
+ # Pass arguments to `get_application` via a request object, either of type
168
+ # {::Google::Cloud::AppEngine::V1::GetApplicationRequest} or an equivalent Hash.
169
+ #
170
+ # @param request [::Google::Cloud::AppEngine::V1::GetApplicationRequest, ::Hash]
171
+ # A request object representing the call parameters. Required. To specify no
172
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
173
+ # @param options [::Gapic::CallOptions, ::Hash]
174
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
175
+ #
176
+ # @overload get_application(name: nil)
177
+ # Pass arguments to `get_application` via keyword arguments. Note that at
178
+ # least one keyword argument is required. To specify no parameters, or to keep all
179
+ # the default parameter values, pass an empty Hash as a request object (see above).
180
+ #
181
+ # @param name [::String]
182
+ # Name of the Application resource to get. Example: `apps/myapp`.
183
+ #
184
+ # @yield [response, operation] Access the result along with the RPC operation
185
+ # @yieldparam response [::Google::Cloud::AppEngine::V1::Application]
186
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
187
+ #
188
+ # @return [::Google::Cloud::AppEngine::V1::Application]
189
+ #
190
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
191
+ #
192
+ def get_application request, options = nil
193
+ raise ::ArgumentError, "request must be provided" if request.nil?
194
+
195
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AppEngine::V1::GetApplicationRequest
196
+
197
+ # Converts hash and nil to an options object
198
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
199
+
200
+ # Customize the options with defaults
201
+ metadata = @config.rpcs.get_application.metadata.to_h
202
+
203
+ # Set x-goog-api-client and x-goog-user-project headers
204
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
205
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
206
+ gapic_version: ::Google::Cloud::AppEngine::V1::VERSION
207
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
208
+
209
+ header_params = {
210
+ "name" => request.name
211
+ }
212
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
213
+ metadata[:"x-goog-request-params"] ||= request_params_header
214
+
215
+ options.apply_defaults timeout: @config.rpcs.get_application.timeout,
216
+ metadata: metadata,
217
+ retry_policy: @config.rpcs.get_application.retry_policy
218
+ options.apply_defaults metadata: @config.metadata,
219
+ retry_policy: @config.retry_policy
220
+
221
+ @applications_stub.call_rpc :get_application, request, options: options do |response, operation|
222
+ yield response, operation if block_given?
223
+ return response
224
+ end
225
+ rescue ::GRPC::BadStatus => e
226
+ raise ::Google::Cloud::Error.from_error(e)
227
+ end
228
+
229
+ ##
230
+ # Creates an App Engine application for a Google Cloud Platform project.
231
+ # Required fields:
232
+ #
233
+ # * `id` - The ID of the target Cloud Platform project.
234
+ # * *location* - The [region](https://cloud.google.com/appengine/docs/locations) where you want the App Engine application located.
235
+ #
236
+ # For more information about App Engine applications, see [Managing Projects, Applications, and Billing](https://cloud.google.com/appengine/docs/standard/python/console/).
237
+ #
238
+ # @overload create_application(request, options = nil)
239
+ # Pass arguments to `create_application` via a request object, either of type
240
+ # {::Google::Cloud::AppEngine::V1::CreateApplicationRequest} or an equivalent Hash.
241
+ #
242
+ # @param request [::Google::Cloud::AppEngine::V1::CreateApplicationRequest, ::Hash]
243
+ # A request object representing the call parameters. Required. To specify no
244
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
245
+ # @param options [::Gapic::CallOptions, ::Hash]
246
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
247
+ #
248
+ # @overload create_application(application: nil)
249
+ # Pass arguments to `create_application` via keyword arguments. Note that at
250
+ # least one keyword argument is required. To specify no parameters, or to keep all
251
+ # the default parameter values, pass an empty Hash as a request object (see above).
252
+ #
253
+ # @param application [::Google::Cloud::AppEngine::V1::Application, ::Hash]
254
+ # Application configuration.
255
+ #
256
+ # @yield [response, operation] Access the result along with the RPC operation
257
+ # @yieldparam response [::Gapic::Operation]
258
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
259
+ #
260
+ # @return [::Gapic::Operation]
261
+ #
262
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
263
+ #
264
+ def create_application request, options = nil
265
+ raise ::ArgumentError, "request must be provided" if request.nil?
266
+
267
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AppEngine::V1::CreateApplicationRequest
268
+
269
+ # Converts hash and nil to an options object
270
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
271
+
272
+ # Customize the options with defaults
273
+ metadata = @config.rpcs.create_application.metadata.to_h
274
+
275
+ # Set x-goog-api-client and x-goog-user-project headers
276
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
277
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
278
+ gapic_version: ::Google::Cloud::AppEngine::V1::VERSION
279
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
280
+
281
+ options.apply_defaults timeout: @config.rpcs.create_application.timeout,
282
+ metadata: metadata,
283
+ retry_policy: @config.rpcs.create_application.retry_policy
284
+ options.apply_defaults metadata: @config.metadata,
285
+ retry_policy: @config.retry_policy
286
+
287
+ @applications_stub.call_rpc :create_application, request, options: options do |response, operation|
288
+ response = ::Gapic::Operation.new response, @operations_client, options: options
289
+ yield response, operation if block_given?
290
+ return response
291
+ end
292
+ rescue ::GRPC::BadStatus => e
293
+ raise ::Google::Cloud::Error.from_error(e)
294
+ end
295
+
296
+ ##
297
+ # Updates the specified Application resource.
298
+ # You can update the following fields:
299
+ #
300
+ # * `auth_domain` - Google authentication domain for controlling user access to the application.
301
+ # * `default_cookie_expiration` - Cookie expiration policy for the application.
302
+ #
303
+ # @overload update_application(request, options = nil)
304
+ # Pass arguments to `update_application` via a request object, either of type
305
+ # {::Google::Cloud::AppEngine::V1::UpdateApplicationRequest} or an equivalent Hash.
306
+ #
307
+ # @param request [::Google::Cloud::AppEngine::V1::UpdateApplicationRequest, ::Hash]
308
+ # A request object representing the call parameters. Required. To specify no
309
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
310
+ # @param options [::Gapic::CallOptions, ::Hash]
311
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
312
+ #
313
+ # @overload update_application(name: nil, application: nil, update_mask: nil)
314
+ # Pass arguments to `update_application` via keyword arguments. Note that at
315
+ # least one keyword argument is required. To specify no parameters, or to keep all
316
+ # the default parameter values, pass an empty Hash as a request object (see above).
317
+ #
318
+ # @param name [::String]
319
+ # Name of the Application resource to update. Example: `apps/myapp`.
320
+ # @param application [::Google::Cloud::AppEngine::V1::Application, ::Hash]
321
+ # An Application containing the updated resource.
322
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
323
+ # Standard field mask for the set of fields to be updated.
324
+ #
325
+ # @yield [response, operation] Access the result along with the RPC operation
326
+ # @yieldparam response [::Gapic::Operation]
327
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
328
+ #
329
+ # @return [::Gapic::Operation]
330
+ #
331
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
332
+ #
333
+ def update_application request, options = nil
334
+ raise ::ArgumentError, "request must be provided" if request.nil?
335
+
336
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AppEngine::V1::UpdateApplicationRequest
337
+
338
+ # Converts hash and nil to an options object
339
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
340
+
341
+ # Customize the options with defaults
342
+ metadata = @config.rpcs.update_application.metadata.to_h
343
+
344
+ # Set x-goog-api-client and x-goog-user-project headers
345
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
346
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
347
+ gapic_version: ::Google::Cloud::AppEngine::V1::VERSION
348
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
349
+
350
+ header_params = {
351
+ "name" => request.name
352
+ }
353
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
354
+ metadata[:"x-goog-request-params"] ||= request_params_header
355
+
356
+ options.apply_defaults timeout: @config.rpcs.update_application.timeout,
357
+ metadata: metadata,
358
+ retry_policy: @config.rpcs.update_application.retry_policy
359
+ options.apply_defaults metadata: @config.metadata,
360
+ retry_policy: @config.retry_policy
361
+
362
+ @applications_stub.call_rpc :update_application, request, options: options do |response, operation|
363
+ response = ::Gapic::Operation.new response, @operations_client, options: options
364
+ yield response, operation if block_given?
365
+ return response
366
+ end
367
+ rescue ::GRPC::BadStatus => e
368
+ raise ::Google::Cloud::Error.from_error(e)
369
+ end
370
+
371
+ ##
372
+ # Recreates the required App Engine features for the specified App Engine
373
+ # application, for example a Cloud Storage bucket or App Engine service
374
+ # account.
375
+ # Use this method if you receive an error message about a missing feature,
376
+ # for example, *Error retrieving the App Engine service account*.
377
+ # If you have deleted your App Engine service account, this will
378
+ # not be able to recreate it. Instead, you should attempt to use the
379
+ # IAM undelete API if possible at https://cloud.google.com/iam/reference/rest/v1/projects.serviceAccounts/undelete?apix_params=%7B"name"%3A"projects%2F-%2FserviceAccounts%2Funique_id"%2C"resource"%3A%7B%7D%7D .
380
+ # If the deletion was recent, the numeric ID can be found in the Cloud
381
+ # Console Activity Log.
382
+ #
383
+ # @overload repair_application(request, options = nil)
384
+ # Pass arguments to `repair_application` via a request object, either of type
385
+ # {::Google::Cloud::AppEngine::V1::RepairApplicationRequest} or an equivalent Hash.
386
+ #
387
+ # @param request [::Google::Cloud::AppEngine::V1::RepairApplicationRequest, ::Hash]
388
+ # A request object representing the call parameters. Required. To specify no
389
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
390
+ # @param options [::Gapic::CallOptions, ::Hash]
391
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
392
+ #
393
+ # @overload repair_application(name: nil)
394
+ # Pass arguments to `repair_application` via keyword arguments. Note that at
395
+ # least one keyword argument is required. To specify no parameters, or to keep all
396
+ # the default parameter values, pass an empty Hash as a request object (see above).
397
+ #
398
+ # @param name [::String]
399
+ # Name of the application to repair. Example: `apps/myapp`
400
+ #
401
+ # @yield [response, operation] Access the result along with the RPC operation
402
+ # @yieldparam response [::Gapic::Operation]
403
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
404
+ #
405
+ # @return [::Gapic::Operation]
406
+ #
407
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
408
+ #
409
+ def repair_application request, options = nil
410
+ raise ::ArgumentError, "request must be provided" if request.nil?
411
+
412
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::AppEngine::V1::RepairApplicationRequest
413
+
414
+ # Converts hash and nil to an options object
415
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
416
+
417
+ # Customize the options with defaults
418
+ metadata = @config.rpcs.repair_application.metadata.to_h
419
+
420
+ # Set x-goog-api-client and x-goog-user-project headers
421
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
422
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
423
+ gapic_version: ::Google::Cloud::AppEngine::V1::VERSION
424
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
425
+
426
+ header_params = {
427
+ "name" => request.name
428
+ }
429
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
430
+ metadata[:"x-goog-request-params"] ||= request_params_header
431
+
432
+ options.apply_defaults timeout: @config.rpcs.repair_application.timeout,
433
+ metadata: metadata,
434
+ retry_policy: @config.rpcs.repair_application.retry_policy
435
+ options.apply_defaults metadata: @config.metadata,
436
+ retry_policy: @config.retry_policy
437
+
438
+ @applications_stub.call_rpc :repair_application, request, options: options do |response, operation|
439
+ response = ::Gapic::Operation.new response, @operations_client, options: options
440
+ yield response, operation if block_given?
441
+ return response
442
+ end
443
+ rescue ::GRPC::BadStatus => e
444
+ raise ::Google::Cloud::Error.from_error(e)
445
+ end
446
+
447
+ ##
448
+ # Configuration class for the Applications API.
449
+ #
450
+ # This class represents the configuration for Applications,
451
+ # providing control over timeouts, retry behavior, logging, transport
452
+ # parameters, and other low-level controls. Certain parameters can also be
453
+ # applied individually to specific RPCs. See
454
+ # {::Google::Cloud::AppEngine::V1::Applications::Client::Configuration::Rpcs}
455
+ # for a list of RPCs that can be configured independently.
456
+ #
457
+ # Configuration can be applied globally to all clients, or to a single client
458
+ # on construction.
459
+ #
460
+ # # Examples
461
+ #
462
+ # To modify the global config, setting the timeout for get_application
463
+ # to 20 seconds, and all remaining timeouts to 10 seconds:
464
+ #
465
+ # ::Google::Cloud::AppEngine::V1::Applications::Client.configure do |config|
466
+ # config.timeout = 10.0
467
+ # config.rpcs.get_application.timeout = 20.0
468
+ # end
469
+ #
470
+ # To apply the above configuration only to a new client:
471
+ #
472
+ # client = ::Google::Cloud::AppEngine::V1::Applications::Client.new do |config|
473
+ # config.timeout = 10.0
474
+ # config.rpcs.get_application.timeout = 20.0
475
+ # end
476
+ #
477
+ # @!attribute [rw] endpoint
478
+ # The hostname or hostname:port of the service endpoint.
479
+ # Defaults to `"appengine.googleapis.com"`.
480
+ # @return [::String]
481
+ # @!attribute [rw] credentials
482
+ # Credentials to send with calls. You may provide any of the following types:
483
+ # * (`String`) The path to a service account key file in JSON format
484
+ # * (`Hash`) A service account key as a Hash
485
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
486
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
487
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
488
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
489
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
490
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
491
+ # * (`nil`) indicating no credentials
492
+ # @return [::Object]
493
+ # @!attribute [rw] scope
494
+ # The OAuth scopes
495
+ # @return [::Array<::String>]
496
+ # @!attribute [rw] lib_name
497
+ # The library name as recorded in instrumentation and logging
498
+ # @return [::String]
499
+ # @!attribute [rw] lib_version
500
+ # The library version as recorded in instrumentation and logging
501
+ # @return [::String]
502
+ # @!attribute [rw] channel_args
503
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
504
+ # `GRPC::Core::Channel` object is provided as the credential.
505
+ # @return [::Hash]
506
+ # @!attribute [rw] interceptors
507
+ # An array of interceptors that are run before calls are executed.
508
+ # @return [::Array<::GRPC::ClientInterceptor>]
509
+ # @!attribute [rw] timeout
510
+ # The call timeout in seconds.
511
+ # @return [::Numeric]
512
+ # @!attribute [rw] metadata
513
+ # Additional gRPC headers to be sent with the call.
514
+ # @return [::Hash{::Symbol=>::String}]
515
+ # @!attribute [rw] retry_policy
516
+ # The retry policy. The value is a hash with the following keys:
517
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
518
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
519
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
520
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
521
+ # trigger a retry.
522
+ # @return [::Hash]
523
+ # @!attribute [rw] quota_project
524
+ # A separate project against which to charge quota.
525
+ # @return [::String]
526
+ #
527
+ class Configuration
528
+ extend ::Gapic::Config
529
+
530
+ config_attr :endpoint, "appengine.googleapis.com", ::String
531
+ config_attr :credentials, nil do |value|
532
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
533
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
534
+ allowed.any? { |klass| klass === value }
535
+ end
536
+ config_attr :scope, nil, ::String, ::Array, nil
537
+ config_attr :lib_name, nil, ::String, nil
538
+ config_attr :lib_version, nil, ::String, nil
539
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, ::Hash, nil)
540
+ config_attr :interceptors, nil, ::Array, nil
541
+ config_attr :timeout, nil, ::Numeric, nil
542
+ config_attr :metadata, nil, ::Hash, nil
543
+ config_attr :retry_policy, nil, ::Hash, ::Proc, nil
544
+ config_attr :quota_project, nil, ::String, nil
545
+
546
+ # @private
547
+ def initialize parent_config = nil
548
+ @parent_config = parent_config unless parent_config.nil?
549
+
550
+ yield self if block_given?
551
+ end
552
+
553
+ ##
554
+ # Configurations for individual RPCs
555
+ # @return [Rpcs]
556
+ #
557
+ def rpcs
558
+ @rpcs ||= begin
559
+ parent_rpcs = nil
560
+ parent_rpcs = @parent_config.rpcs if defined?(@parent_config) && @parent_config&.respond_to?(:rpcs)
561
+ Rpcs.new parent_rpcs
562
+ end
563
+ end
564
+
565
+ ##
566
+ # Configuration RPC class for the Applications API.
567
+ #
568
+ # Includes fields providing the configuration for each RPC in this service.
569
+ # Each configuration object is of type `Gapic::Config::Method` and includes
570
+ # the following configuration fields:
571
+ #
572
+ # * `timeout` (*type:* `Numeric`) - The call timeout in seconds
573
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
574
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
575
+ # include the following keys:
576
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
577
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
578
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
579
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
580
+ # trigger a retry.
581
+ #
582
+ class Rpcs
583
+ ##
584
+ # RPC-specific configuration for `get_application`
585
+ # @return [::Gapic::Config::Method]
586
+ #
587
+ attr_reader :get_application
588
+ ##
589
+ # RPC-specific configuration for `create_application`
590
+ # @return [::Gapic::Config::Method]
591
+ #
592
+ attr_reader :create_application
593
+ ##
594
+ # RPC-specific configuration for `update_application`
595
+ # @return [::Gapic::Config::Method]
596
+ #
597
+ attr_reader :update_application
598
+ ##
599
+ # RPC-specific configuration for `repair_application`
600
+ # @return [::Gapic::Config::Method]
601
+ #
602
+ attr_reader :repair_application
603
+
604
+ # @private
605
+ def initialize parent_rpcs = nil
606
+ get_application_config = parent_rpcs&.get_application if parent_rpcs&.respond_to? :get_application
607
+ @get_application = ::Gapic::Config::Method.new get_application_config
608
+ create_application_config = parent_rpcs&.create_application if parent_rpcs&.respond_to? :create_application
609
+ @create_application = ::Gapic::Config::Method.new create_application_config
610
+ update_application_config = parent_rpcs&.update_application if parent_rpcs&.respond_to? :update_application
611
+ @update_application = ::Gapic::Config::Method.new update_application_config
612
+ repair_application_config = parent_rpcs&.repair_application if parent_rpcs&.respond_to? :repair_application
613
+ @repair_application = ::Gapic::Config::Method.new repair_application_config
614
+
615
+ yield self if block_given?
616
+ end
617
+ end
618
+ end
619
+ end
620
+ end
621
+ end
622
+ end
623
+ end
624
+ end