gapic-generator 0.6.15 → 0.7.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +33 -0
  3. data/bin/protoc-gen-ruby_gapic +5 -5
  4. data/lib/gapic/file_formatter.rb +2 -1
  5. data/lib/gapic/formatting_utils.rb +4 -4
  6. data/lib/gapic/generator/version.rb +1 -1
  7. data/lib/gapic/generators/default_generator.rb +8 -5
  8. data/lib/gapic/generators/default_generator_parameters.rb +8 -4
  9. data/lib/gapic/grpc_service_config/method_config.rb +2 -1
  10. data/lib/gapic/grpc_service_config/retry_policy.rb +4 -1
  11. data/lib/gapic/grpc_service_config/service_config.rb +2 -1
  12. data/lib/gapic/path_pattern/parser.rb +1 -1
  13. data/lib/gapic/path_pattern/pattern.rb +2 -1
  14. data/lib/gapic/path_pattern/segment.rb +10 -3
  15. data/lib/gapic/presenters.rb +2 -0
  16. data/lib/gapic/presenters/field_presenter.rb +44 -0
  17. data/lib/gapic/presenters/gem_presenter.rb +4 -1
  18. data/lib/gapic/presenters/method_presenter.rb +32 -16
  19. data/lib/gapic/presenters/method_rest_presenter.rb +186 -0
  20. data/lib/gapic/presenters/package_presenter.rb +21 -3
  21. data/lib/gapic/presenters/resource_presenter.rb +2 -1
  22. data/lib/gapic/presenters/sample_presenter.rb +6 -1
  23. data/lib/gapic/presenters/service_presenter.rb +48 -10
  24. data/lib/gapic/presenters/service_rest_presenter.rb +157 -0
  25. data/lib/gapic/runner.rb +2 -1
  26. data/lib/gapic/schema/api.rb +48 -19
  27. data/lib/gapic/schema/parameter_schema.rb +4 -1
  28. data/lib/gapic/schema/request_param_parser.rb +44 -10
  29. data/lib/gapic/schema/request_parameter.rb +5 -1
  30. data/lib/gapic/schema/wrappers.rb +31 -18
  31. data/lib/gapic/uri_template/parser.rb +4 -6
  32. data/lib/google/protobuf/any.pb.rb +1 -1
  33. data/lib/google/protobuf/compiler/plugin.pb.rb +9 -6
  34. data/lib/google/protobuf/descriptor.pb.rb +2 -2
  35. data/lib/google/protobuf/empty.pb.rb +1 -1
  36. data/templates/default/gem/gemspec.erb +2 -2
  37. data/templates/default/gem/readme.erb +2 -2
  38. data/templates/default/gem/rubocop.erb +2 -12
  39. data/templates/default/lib/_package.erb +11 -1
  40. data/templates/default/lib/_service.erb +31 -1
  41. data/templates/default/lib/rest/_rest.erb +11 -0
  42. data/templates/default/service/client/_config.erb +2 -2
  43. data/templates/default/service/rest.erb +6 -0
  44. data/templates/default/service/rest/client.erb +6 -0
  45. data/templates/default/service/rest/client/_client.erb +115 -0
  46. data/templates/default/service/rest/client/_config.erb +74 -0
  47. data/templates/default/service/rest/client/_requires.erb +1 -0
  48. data/templates/default/service/rest/client/method/_def.erb +18 -0
  49. data/templates/default/service/rest/client/method/def/_options_defaults.erb +14 -0
  50. data/templates/default/service/rest/client/method/def/_rescue.erb +3 -0
  51. data/templates/default/service/rest/client/method/def/_response_normal.erb +17 -0
  52. data/templates/default/service/rest/client/method/docs/_error.erb +2 -0
  53. data/templates/default/service/rest/client/method/docs/_request.erb +27 -0
  54. data/templates/default/service/rest/client/method/docs/_result.erb +6 -0
  55. data/templates/default/service/rest/grpc_transcoding.erb +6 -0
  56. data/templates/default/service/rest/grpc_transcoding/_grpc_transcoding.erb +9 -0
  57. data/templates/default/service/rest/grpc_transcoding/method/_def.erb +21 -0
  58. data/templates/default/service/rest/grpc_transcoding/method/def/_query_string_param.erb +8 -0
  59. data/templates/default/service/test/method/_normal.erb +1 -1
  60. data/templates/default/service/test/method/_server.erb +1 -1
  61. metadata +27 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4b0b5fd921abe9618575956f3eaed4ea23ffbf578c29570934c29a76decdf6cd
4
- data.tar.gz: cda02cc92c2249e60b7f1692c2b514ac672b49ff46fc52d543ba4d0e133f4308
3
+ metadata.gz: cbb07888e227a0e891359dd684e8ead50be011593929d56a929a9b1e226a8257
4
+ data.tar.gz: 1ef99fe476ca10728df3997f3a01a87e12cf3f681ecb7f1c07e17facbd3ecd7a
5
5
  SHA512:
6
- metadata.gz: 6c3c62bb7d3f29cff6ea57b9b959214ee81f79449d649ae87f95171aad06450f000fda15784d33231418d47729eecc4b4130a4bf16cad95b1d76bac48994fa89
7
- data.tar.gz: c2500d8e7458361e6450cb661c5380075af7a24a3c5063cdc1e237bfeb7fc1c4083dcb5a6a7f7b8cef3b9242e5bc99089ba2d7a651ddd68cbf720ab91bb81478
6
+ metadata.gz: 535fa4c595fc7c3074c9d554303f275039e8952a908f2b9295b62625f14173ed979e684fb11ed33b7dfbce751001cdb4aaa25e2d9f752252af258336a8ca45c3
7
+ data.tar.gz: d36e8866f75c418520142c1b883214540b40261b06e2386ea822fef42de79ebbde38368f21b2bcf726871f64bb12b1e4b4bf8be70d043e44e026f8c41f8ccf23
data/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # Release History for gapic-generator
2
2
 
3
+ ### 0.7.5 / 2021-05-18
4
+
5
+ * Bazel jobs now provide a prebuilt ruby binary.
6
+ * Fixed generated indentation for a few cases, by updating to Rubocop 1.15.
7
+ * Added library_type to generated repo metadata files.
8
+
9
+ ### 0.7.4 / 2021-05-07
10
+
11
+ * Fixed the broken link in the generated libraries' README.md
12
+ * Generated libraries with REST transport now use presense testing instead of rejecting defaults to determine which fields to transcode into the query string parameters
13
+
14
+ ### 0.7.3 / 2021-03-24
15
+
16
+ * Fixed gapic metadata (drift manifest) generation
17
+ * Gapic metadata generation is disabled by default in gapic-generator
18
+ (enabled by default in gapic-generator-cloud)
19
+ * Can now generate libraries with REST transport in addition to GRPC
20
+ * gapic-common 0.4 is the default version for the generated libraries now (was 0.3)
21
+ (required for the generated libraries with the REST transport)
22
+
23
+ ### 0.7.2 / 2021-03-05
24
+
25
+ * No changes.
26
+
27
+ ### 0.7.1 / 2021-02-27
28
+
29
+ * Update generated readmes to reflect that Ruby 2.5 or later is now required.
30
+
31
+ ### 0.7.0 / 2021-02-27
32
+
33
+ * Update minimum Ruby version to 2.5 for generated libraries.
34
+ * Update supported Rubocop to 1.x for generated libraries.
35
+
3
36
  ### 0.6.15 / 2021-02-22
4
37
 
5
38
  * Really fixed encoding arguments in executable entrypoints
@@ -15,19 +15,19 @@
15
15
  # See the License for the specific language governing permissions and
16
16
  # limitations under the License.
17
17
 
18
- $LOAD_PATH.unshift ::File.expand_path("../../lib", __FILE__)
18
+ $LOAD_PATH.unshift ::File.expand_path("../lib", __dir__)
19
19
  require "gapic/runner"
20
20
  require "google/protobuf/compiler/plugin.pb"
21
21
 
22
22
  # Ensure that no encoding conversions are done on STDIN and STDOUT
23
23
  # since we are passing binary data back and forth. Otherwise these
24
24
  # streams will be mangled on Windows.
25
- STDIN.binmode
26
- STDOUT.binmode
25
+ $stdin.binmode
26
+ $stdout.binmode
27
27
 
28
- request = Google::Protobuf::Compiler::CodeGeneratorRequest.decode STDIN.read
28
+ request = Google::Protobuf::Compiler::CodeGeneratorRequest.decode $stdin.read
29
29
 
30
30
  # Run the request
31
31
  response = Gapic::Runner.run request
32
32
 
33
- STDOUT.print response.serialize
33
+ $stdout.print response.serialize
@@ -21,7 +21,8 @@ module Gapic
21
21
  ##
22
22
  # File Formatter
23
23
  class FileFormatter
24
- attr_reader :configuration, :files
24
+ attr_reader :configuration
25
+ attr_reader :files
25
26
 
26
27
  ##
27
28
  # Create a new file formatter object
@@ -21,9 +21,9 @@ module Gapic
21
21
  # Various string formatting utils
22
22
  #
23
23
  module FormattingUtils
24
- @brace_detector = /\A(?<pre>[^`]*(`[^`]*`[^`]*)*[^`\\])?\{(?<inside>[^\s][^}]*)\}(?<post>.*)\z/m
25
- @xref_detector = /\A(?<pre>[^`]*(`[^`]*`[^`]*)*)?\[(?<text>[\w\. `-]+)\]\[(?<addr>[\w\.]+)\](?<post>.*)\z/m
26
- @list_element_detector = /\A\s*(\*|\+|-|[0-9a-zA-Z]+\.)\s/
24
+ @brace_detector = /\A(?<pre>[^`]*(?:`[^`]*`[^`]*)*[^`\\])?\{(?<inside>[^\s][^}]*)\}(?<post>.*)\z/m
25
+ @xref_detector = /\A(?<pre>[^`]*(?:`[^`]*`[^`]*)*)?\[(?<text>[\w. `-]+)\]\[(?<addr>[\w.]+)\](?<post>.*)\z/m
26
+ @list_element_detector = /\A\s*(?:\*|\+|-|[0-9a-zA-Z]+\.)\s/
27
27
  @omit_lines = ["@InputOnly\n", "@OutputOnly\n"]
28
28
 
29
29
  class << self
@@ -76,7 +76,7 @@ module Gapic
76
76
  def format_number value
77
77
  return value.to_s if value.abs < 10_000
78
78
  str = value.is_a?(Integer) ? value.to_s : BigDecimal(value.to_f.to_s).to_s("F")
79
- re = /^(-?\d+)(\d\d\d)([_\.][_\.\d]+)?$/
79
+ re = /^(-?\d+)(\d\d\d)([_.][_.\d]+)?$/
80
80
  while (m = re.match str)
81
81
  str = "#{m[1]}_#{m[2]}#{m[3]}"
82
82
  end
@@ -16,6 +16,6 @@
16
16
 
17
17
  module Gapic
18
18
  module Generator
19
- VERSION = "0.6.15"
19
+ VERSION = "0.7.5"
20
20
  end
21
21
  end
@@ -54,13 +54,16 @@ module Gapic
54
54
  package.services.each do |service|
55
55
  # Service level files
56
56
  files << g("service.erb", "lib/#{service.service_file_path}", service: service)
57
- files << g("service/client.erb", "lib/#{service.client_file_path}", service: service)
57
+ files << g("service/rest.erb", "lib/#{service.rest.service_rest_file_path}", service: service) if @api.generate_rest_clients? and service.methods_rest_bindings?
58
+ files << g("service/client.erb", "lib/#{service.client_file_path}", service: service) unless @api.generate_rest_clients?
58
59
  files << g("service/credentials.erb", "lib/#{service.credentials_file_path}", service: service) unless gem.generic_endpoint?
59
60
  files << g("service/paths.erb", "lib/#{service.paths_file_path}", service: service) if service.paths?
60
- files << g("service/operations.erb", "lib/#{service.operations_file_path}", service: service) if service.lro?
61
- files << g("service/test/client.erb", "test/#{service.test_client_file_path}", service: service)
61
+ files << g("service/operations.erb", "lib/#{service.operations_file_path}", service: service) if service.lro? && !@api.generate_rest_clients?
62
+ files << g("service/rest/client.erb", "lib/#{service.rest.client_file_path}", service: service) if @api.generate_rest_clients? and service.methods_rest_bindings?
63
+ files << g("service/rest/grpc_transcoding.erb", "lib/#{service.rest.transcoding_helper_file_path}", service: service) if @api.generate_rest_clients? and service.methods_rest_bindings?
64
+ files << g("service/test/client.erb", "test/#{service.test_client_file_path}", service: service) unless @api.generate_rest_clients?
62
65
  files << g("service/test/client_paths.erb", "test/#{service.test_paths_file_path}", service: service) if service.paths?
63
- files << g("service/test/client_operations.erb", "test/#{service.test_client_operations_file_path}", service: service) if service.lro?
66
+ files << g("service/test/client_operations.erb", "test/#{service.test_client_operations_file_path}", service: service) if service.lro? && !@api.generate_rest_clients?
64
67
  end
65
68
  end
66
69
 
@@ -77,7 +80,7 @@ module Gapic
77
80
  files << g("gem/yardopts.erb", ".yardopts", gem: gem)
78
81
  files << g("gem/license.erb", "LICENSE.md", gem: gem)
79
82
  files << g("gem/entrypoint.erb", "lib/#{gem.name}.rb", gem: gem)
80
- files << g("gem/gapic_metadata_json.erb", "gapic_metadata.json", gem: gem)
83
+ files << g("gem/gapic_metadata_json.erb", "gapic_metadata.json", gem: gem) if @api.generate_metadata
81
84
 
82
85
  gem.proto_files.each do |proto_file|
83
86
  files << g("proto_docs/proto_file.erb", "proto_docs/#{proto_file.docs_file_path}", file: proto_file)
@@ -23,7 +23,8 @@ module Gapic
23
23
  BOOL_PARAMETERS = [
24
24
  ":gem.:free_tier",
25
25
  ":gem.:yard_strict",
26
- ":gem.:generic_endpoint"
26
+ ":gem.:generic_endpoint",
27
+ ":generate_metadata"
27
28
  ].freeze
28
29
 
29
30
  STRING_PARAMETERS = [
@@ -42,11 +43,13 @@ module Gapic
42
43
  ":gem.:api_shortname",
43
44
  ":gem.:factory_method_suffix",
44
45
  ":defaults.:service.:default_host",
45
- "grpc_service_config"
46
+ "grpc_service_config",
47
+ ":overrides.:wrapper_gem_name"
46
48
  ].freeze
47
49
 
48
50
  ARRAY_PARAMETERS = [
49
- ":defaults.:service.:oauth_scopes"
51
+ ":defaults.:service.:oauth_scopes",
52
+ ":transports"
50
53
  ].freeze
51
54
 
52
55
  MAP_PARAMETERS = [
@@ -83,7 +86,8 @@ module Gapic
83
86
  }.freeze
84
87
 
85
88
  ARRAY_PARAMETERS_ALIASES = {
86
- "default-oauth-scopes" => ":defaults.:service.:oauth_scopes"
89
+ "default-oauth-scopes" => ":defaults.:service.:oauth_scopes",
90
+ "transports" => ":transports"
87
91
  }.freeze
88
92
 
89
93
  MAP_PARAMETERS_ALIASES = {
@@ -23,7 +23,8 @@ module Gapic
23
23
  # client-side timeout/retry policy
24
24
  #
25
25
  class MethodConfig
26
- attr_reader :timeout_seconds, :retry_policy
26
+ attr_reader :timeout_seconds
27
+ attr_reader :retry_policy
27
28
 
28
29
  ##
29
30
  # Create new MethodConfig
@@ -21,7 +21,10 @@ module Gapic
21
21
  # for the GRPC method invocation. It is embedded into the MethodConfig
22
22
  #
23
23
  class RetryPolicy
24
- attr_reader :initial_delay_seconds, :max_delay_seconds, :multiplier, :status_codes
24
+ attr_reader :initial_delay_seconds
25
+ attr_reader :max_delay_seconds
26
+ attr_reader :multiplier
27
+ attr_reader :status_codes
25
28
 
26
29
  ##
27
30
  # Create new ParsedRetryPolicy.
@@ -22,7 +22,8 @@ module Gapic
22
22
  # applied to the specific methods
23
23
  #
24
24
  class ServiceConfig
25
- attr_reader :service_level_configs, :service_method_level_configs
25
+ attr_reader :service_level_configs
26
+ attr_reader :service_method_level_configs
26
27
 
27
28
  ##
28
29
  # Create new ServiceConfig.
@@ -87,7 +87,7 @@ module Gapic
87
87
  # @private
88
88
  def self.try_capture_complex_resource_id_segment url_pattern
89
89
  complex_resource_id_regex =
90
- %r/^(?<segment_pattern>{(?<name_first>[^\/}]+?)}(?:(?<separator>[_\-~\.]){(?<name_seq>[^\/}]+?)})+)(?:\/|$)/
90
+ %r/^(?<segment_pattern>{(?<name_first>[^\/}]+?)}(?:(?<separator>[_\-~.]){(?<name_seq>[^\/}]+?)})+)(?:\/|$)/
91
91
 
92
92
  return nil, url_pattern unless complex_resource_id_regex.match? url_pattern
93
93
 
@@ -29,7 +29,8 @@ module Gapic
29
29
  # @return [Array<PositionalSegment|ResourceIdSegment|CollectionIdSegment>]
30
30
  # The parsed segments of the path pattern
31
31
  class Pattern
32
- attr_reader :path_pattern, :segments
32
+ attr_reader :path_pattern
33
+ attr_reader :segments
33
34
 
34
35
  def initialize path_pattern, segments
35
36
  @path_pattern = path_pattern
@@ -29,7 +29,10 @@ module Gapic
29
29
  # @return [String] The pattern of the segment, for the positional segment it is also
30
30
  # a pattern of its resource
31
31
  class PositionalSegment
32
- attr_reader :type, :position, :pattern
32
+ attr_reader :type
33
+ attr_reader :position
34
+ attr_reader :pattern
35
+
33
36
  def initialize position, pattern
34
37
  @type = :positional
35
38
  @position = position
@@ -117,7 +120,10 @@ module Gapic
117
120
  # @return [Array<String>] The resource patterns associated with
118
121
  # the resource_names of this segment
119
122
  class ResourceIdSegment
120
- attr_reader :type, :pattern, :resource_names, :resource_patterns
123
+ attr_reader :type
124
+ attr_reader :pattern
125
+ attr_reader :resource_names
126
+ attr_reader :resource_patterns
121
127
 
122
128
  def initialize type, pattern, resource_names, resource_patterns = []
123
129
  @type = type
@@ -216,7 +222,8 @@ module Gapic
216
222
  # @return [String] The pattern of the segment, for the positional segment it is also
217
223
  # a pattern of its resource
218
224
  class CollectionIdSegment
219
- attr_reader :type, :pattern
225
+ attr_reader :type
226
+ attr_reader :pattern
220
227
 
221
228
  def initialize pattern
222
229
  @type = :collection_id
@@ -21,10 +21,12 @@ require "gapic/presenters/file_presenter"
21
21
  require "gapic/presenters/gem_presenter"
22
22
  require "gapic/presenters/message_presenter"
23
23
  require "gapic/presenters/method_presenter"
24
+ require "gapic/presenters/method_rest_presenter"
24
25
  require "gapic/presenters/package_presenter"
25
26
  require "gapic/presenters/resource_presenter"
26
27
  require "gapic/presenters/sample_presenter"
27
28
  require "gapic/presenters/service_presenter"
29
+ require "gapic/presenters/service_rest_presenter"
28
30
 
29
31
  module Gapic
30
32
  ##
@@ -88,6 +88,10 @@ module Gapic
88
88
  @field.repeated?
89
89
  end
90
90
 
91
+ def required?
92
+ @field.required?
93
+ end
94
+
91
95
  def map?
92
96
  @field.map?
93
97
  end
@@ -100,6 +104,34 @@ module Gapic
100
104
  @message.oneof_decl[@field.oneof_index].name
101
105
  end
102
106
 
107
+ ##
108
+ # Returns a stringified default value for the protobuf types
109
+ # that are possible to fit into the query string parameter
110
+ # and nil for the other types (e.g. Messages)
111
+ #
112
+ # @return [String, nil]
113
+ #
114
+ def default_value_for_type
115
+ if @field.message?
116
+ nil
117
+ elsif @field.enum?
118
+ ":#{@field.enum.values.first.name}"
119
+ else
120
+ case @field.type
121
+ when 1, 2, 3, 4, 5, 6, 7, 13, 15, 16, 17, 18 then "0" # floating point or integer
122
+ when 9, 12 then "\"\""
123
+ when 8 then "false"
124
+ end
125
+ end
126
+ end
127
+
128
+ ##
129
+ # Name of this field, camel-cased
130
+ # @return [String]
131
+ def camel_name
132
+ camel_name_for name
133
+ end
134
+
103
135
  protected
104
136
 
105
137
  def field_doc_types field, output
@@ -161,6 +193,18 @@ module Gapic
161
193
  def message_ruby_type message
162
194
  ruby_namespace @api, message.address.join(".")
163
195
  end
196
+
197
+ ##
198
+ # Converts a snake_case parameter name into camelCase for query string parameters
199
+ # @param attr_name [String]
200
+ # @return [String] camel-cased parameter name
201
+ def camel_name_for attr_name
202
+ parts = attr_name.split "_"
203
+ first_part = parts[0]
204
+ other_parts = parts[1..-1]
205
+ other_parts_pascal = other_parts.map(&:capitalize).join
206
+ "#{first_part}#{other_parts_pascal}"
207
+ end
164
208
  end
165
209
  end
166
210
  end
@@ -32,6 +32,9 @@ module Gapic
32
32
  @api = api
33
33
  end
34
34
 
35
+ ##
36
+ # @return [Enumerable<Gapic::Presenters::PackagePresenter>]
37
+ #
35
38
  def packages
36
39
  @packages ||= begin
37
40
  packages = @api.generate_files.map(&:package).uniq.sort
@@ -180,7 +183,7 @@ module Gapic
180
183
  end
181
184
 
182
185
  def dependencies
183
- deps = { "gapic-common" => "~> 0.3" }
186
+ deps = { "gapic-common" => "~> 0.4" }
184
187
  deps["grpc-google-iam-v1"] = [">= 0.6.10", "< 2.0"] if iam_dependency?
185
188
  extra_deps = gem_config :extra_dependencies
186
189
  deps.merge! extra_deps if extra_deps
@@ -15,7 +15,6 @@
15
15
  # limitations under the License.
16
16
 
17
17
  require "active_support/inflector"
18
- require "gapic/uri_template"
19
18
  require "gapic/ruby_info"
20
19
  require "gapic/helpers/namespace_helper"
21
20
 
@@ -27,12 +26,26 @@ module Gapic
27
26
  class MethodPresenter
28
27
  include Gapic::Helpers::NamespaceHelper
29
28
 
29
+ # @return [Gapic::Schema::Method]
30
+ attr_accessor :method
31
+
32
+ # @return [Gapic::Presenters::MethodRestPresenter]
33
+ attr_accessor :rest
34
+
35
+ ##
36
+ # @param service_presenter [Gapic::Presenters::ServicePresenter]
37
+ # @param api [Gapic::Schema::Api]
38
+ # @param method [Gapic::Schema::Method]
30
39
  def initialize service_presenter, api, method
31
40
  @service_presenter = service_presenter
32
41
  @api = api
33
42
  @method = method
43
+ @rest = MethodRestPresenter.new self
34
44
  end
35
45
 
46
+ ##
47
+ # @return [Gapic::Presenters::ServicePresenter]
48
+ #
36
49
  def service
37
50
  @service_presenter
38
51
  end
@@ -195,15 +208,17 @@ module Gapic
195
208
  end
196
209
 
197
210
  ##
198
- #
199
211
  # @return [Array<String>] The segment key names.
200
212
  #
201
213
  def routing_params
202
- Gapic::UriTemplate.parse_arguments method_path
214
+ rest.routing_params
203
215
  end
204
216
 
217
+ ##
218
+ # @return [Boolean] Whether any routing params are present
219
+ #
205
220
  def routing_params?
206
- routing_params.any?
221
+ rest.routing_params?
207
222
  end
208
223
 
209
224
  def grpc_service_config
@@ -217,6 +232,19 @@ module Gapic
217
232
  @method.name
218
233
  end
219
234
 
235
+ ##
236
+ # Returns a hash with a drift_manifest of this rpc method
237
+ # describing correspondence between the proto description
238
+ # of the rpc with the generated code for the method.
239
+ # For ruby currently [03/2021] only one method is generated per RPC,
240
+ # so the correspondence is very basic.
241
+ # See https://github.com/googleapis/googleapis/blob/master/gapic/metadata/gapic_metadata.proto
242
+ #
243
+ # @return [Hash]
244
+ def drift_manifest
245
+ { methods: [name] }
246
+ end
247
+
220
248
  protected
221
249
 
222
250
  def message_ruby_type message
@@ -266,18 +294,6 @@ module Gapic
266
294
  end
267
295
  end
268
296
 
269
- def method_path
270
- return "" if @method.http.nil?
271
-
272
- method = [
273
- @method.http.get, @method.http.post, @method.http.put,
274
- @method.http.patch, @method.http.delete
275
- ].find { |x| !x.empty? }
276
- return method unless method.nil?
277
-
278
- return @method.http.custom.path unless @method.http.custom.nil?
279
- end
280
-
281
297
  def paged_request? request
282
298
  page_token = request.fields.find do |f|
283
299
  f.name == "page_token" && f.type == Google::Protobuf::FieldDescriptorProto::Type::TYPE_STRING