Class: Gapic::Presenters::PackagePresenter
Overview
A presenter for proto packages.
Instance Method Summary
collapse
#fix_namespace, #ruby_namespace, #ruby_namespace_for_address
#fix_file_path, #ruby_file_path, #ruby_file_path_for_namespace
Constructor Details
Returns a new instance of PackagePresenter.
30
31
32
33
|
# File 'lib/gapic/presenters/package_presenter.rb', line 30
def initialize api, package
@api = api
@package = package
end
|
Instance Method Details
#address ⇒ Object
55
56
57
|
# File 'lib/gapic/presenters/package_presenter.rb', line 55
def address
@package.split "."
end
|
#empty? ⇒ Boolean
67
68
69
|
# File 'lib/gapic/presenters/package_presenter.rb', line 67
def empty?
services.empty?
end
|
#gem ⇒ Object
35
36
37
|
# File 'lib/gapic/presenters/package_presenter.rb', line 35
def gem
GemPresenter.new @api
end
|
#name ⇒ Object
39
40
41
|
# File 'lib/gapic/presenters/package_presenter.rb', line 39
def name
@package
end
|
#namespace ⇒ Object
43
44
45
46
|
# File 'lib/gapic/presenters/package_presenter.rb', line 43
def namespace
return services.first&.namespace if services.first&.namespace
ruby_namespace_for_address address
end
|
#package_file_path ⇒ Object
63
64
65
|
# File 'lib/gapic/presenters/package_presenter.rb', line 63
def package_file_path
package_require + ".rb"
end
|
#package_require ⇒ Object
59
60
61
|
# File 'lib/gapic/presenters/package_presenter.rb', line 59
def package_require
ruby_file_path @api, namespace
end
|
#services ⇒ Object
48
49
50
51
52
53
|
# File 'lib/gapic/presenters/package_presenter.rb', line 48
def services
@services ||= begin
files = @api.generate_files.select { |f| f.package == @package }
files.map(&:services).flatten.map { |s| ServicePresenter.new @api, s }
end
end
|