Module: YARD::Server::Commands::StaticFileHelpers
- Includes:
- WEBrick::HTTPUtils
- Included in:
- RootRequestCommand, StaticFileCommand
- Defined in:
- lib/yard/server/commands/static_file_helpers.rb
Overview
Include this module to get access to #static_template_file? and #favicon? helpers.
Class Method Summary collapse
Instance Method Summary collapse
-
#favicon? ⇒ Boolean
Serves an empty favicon.
-
#static_template_file? ⇒ void
Attempts to route a path to a static template file.
Class Method Details
.find_file(adapter, url) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/yard/server/commands/static_file_helpers.rb', line 43 def find_file(adapter, url) # this const was defined in StaticFileCommand originally static_paths = StaticFileCommand::STATIC_PATHS file = nil ([adapter.document_root] + static_paths.reverse).compact.each do |path_prefix| file = File.join(path_prefix, url) break if File.exist?(file) file = nil end # Search in default/fulldoc/html template if nothing in static asset paths assets_template = Templates::Engine.template(:default, :fulldoc, :html) file || assets_template.find_file(url) end |
Instance Method Details
#favicon? ⇒ Boolean
Serves an empty favicon.
15 16 17 18 19 20 21 |
# File 'lib/yard/server/commands/static_file_helpers.rb', line 15 def favicon? return unless request.path == '/favicon.ico' headers['Content-Type'] = 'image/png' self.status = 200 self.body = '' raise FinishRequest end |
#static_template_file? ⇒ void
This method returns an undefined value.
Attempts to route a path to a static template file.
27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/yard/server/commands/static_file_helpers.rb', line 27 def static_template_file? # this const was defined in StaticFileCommand originally default_mime_types = StaticFileCommand::DefaultMimeTypes file = find_file(adapter, path) if file ext = "." + (path[/\.(\w+)$/, 1] || "html") headers['Content-Type'] = mime_type(ext, default_mime_types) self.body = File.read(file) raise FinishRequest end end |