class Gapic::Presenters::SnippetPresenter

A presenter for snippets.

Public Class Methods

new(method_presenter, api) click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 25
def initialize method_presenter, api
  @method_presenter = method_presenter
  @api = api
end

Public Instance Methods

base_response_type() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 75
def base_response_type
  @method_presenter.return_type
end
bidi_streaming?() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 34
def bidi_streaming?
  @method_presenter.client_streaming? && @method_presenter.server_streaming?
end
client_streaming?() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 30
def client_streaming?
  @method_presenter.client_streaming?
end
client_type() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 58
def client_type
  @method_presenter.service.client_name_full.sub(/^::/, "")
end
method_name() click to toggle source

TODO: Determine type of LRO response

# File lib/gapic/presenters/snippet_presenter.rb, line 81
def method_name
  @method_presenter.name
end
paged_response_type() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 71
def paged_response_type
  @method_presenter.paged_response_type
end
region_tag() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 85
def region_tag
  gem_presenter = @method_presenter.service.gem
  api_id = gem_presenter.api_shortname || gem_presenter.api_id&.split(".")&.first
  names = gem_presenter.name.split "-"
  final_name = names.pop
  if final_name =~ /^v\d/
    api_version = final_name
    api_id ||= names.last
  else
    api_id ||= final_name
    api_version = "v0"
  end
  service_name = @method_presenter.service.module_name
  method_name = @method_presenter.method.name
  "#{api_id}_#{api_version}_generated_#{service_name}_#{method_name}_sync"
end
request_type() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 62
def request_type
  @method_presenter.request_type.sub(/^::/, "")
end
require_path() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 54
def require_path
  @method_presenter.service.package.package_require
end
response_kind() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 38
def response_kind
  if @method_presenter.server_streaming?
    :streaming
  elsif @method_presenter.paged?
    :paged
  elsif @method_presenter.lro?
    :lro
  else
    :simple
  end
end
return_type() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 66
def return_type
  base_type = @method_presenter.return_type.sub(/^::/, "")
  @method_presenter.server_streaming? ? "Enumerable<#{base_type}>" : base_type
end
snippet_file_path() click to toggle source
# File lib/gapic/presenters/snippet_presenter.rb, line 50
def snippet_file_path
  "#{@method_presenter.service.service_require.split('/').last}/#{@method_presenter.name}.rb"
end