Class: Updoc::Report::RailsReport
- Inherits:
-
Object
- Object
- Updoc::Report::RailsReport
show all
- Includes:
- Updoc::Report
- Defined in:
- lib/updoc/report/rails_report.rb
Constant Summary
SORT
Class Method Summary
collapse
Instance Method Summary
collapse
#base_report, #map_grape_endpoints, #map_updoc_consumers, #write_updoc_report
Constructor Details
#initialize(rails_app) ⇒ RailsReport
Returns a new instance of RailsReport.
10
11
12
13
|
# File 'lib/updoc/report/rails_report.rb', line 10
def initialize(rails_app)
@rails_app = rails_app
rails_app.eager_load!
end
|
Class Method Details
.report!(rails_app = ::Rails.application) ⇒ Object
6
7
8
|
# File 'lib/updoc/report/rails_report.rb', line 6
def self.report!(rails_app = ::Rails.application)
new(rails_app).report!
end
|
Instance Method Details
#map_producers_from_rails ⇒ Object
26
27
28
29
30
31
32
33
34
|
# File 'lib/updoc/report/rails_report.rb', line 26
def map_producers_from_rails
if Object.const_defined?('Grape::API')
map_grape_endpoints(
rails_app.routes.routes.select do |r|
r.app.class <= Class && r.app < Grape::API
end.map { |rails_route| GrapeApp.new(rails_route.app, rails_route.path.spec.to_s) }
)
end
end
|
#report! ⇒ Object
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/updoc/report/rails_report.rb', line 15
def report!
report = base_report.merge(
consumes: map_updoc_consumers,
produces: map_producers_from_rails
)
report[:name] ||= rails_app.class.parent_name
write_updoc_report(File.expand_path(File.join(rails_app.root, 'updoc.yml')), report)
end
|