Class: Litbuild::UrlVisitor
Overview
This is a simple Visitor that just accumulates the best download URL for a set of Package blueprints.
Instance Method Summary
collapse
Methods inherited from Visitor
#in_subdirectory, #visit_commands, #visit_narrative, #visit_section
Constructor Details
9
10
11
12
|
# File 'lib/litbuild/url_visitor.rb', line 9
def initialize
super
@urls = []
end
|
Instance Method Details
#download_url(pkg) ⇒ Object
18
19
20
21
22
23
|
# File 'lib/litbuild/url_visitor.rb', line 18
def download_url(pkg)
url = pkg.directives['download-url'] ||
pkg.directives['project-url'] ||
pkg.directives['scm-url']
url ? url.first : "#{name}: no download URL known"
end
|
#urls ⇒ Object
25
26
27
|
# File 'lib/litbuild/url_visitor.rb', line 25
def urls
@urls.compact.flatten.sort.uniq
end
|
#visit_package(package:) ⇒ Object
14
15
16
|
# File 'lib/litbuild/url_visitor.rb', line 14
def visit_package(package:)
@urls << download_url(package)
end
|