class Rack::Tipi::Assets
Attributes
app[R]
tipi_root[R]
Public Class Methods
new(app, options)
click to toggle source
# File lib/rack/tipi/assets.rb, line 8 def initialize(app, options) @app = app @tipi_root = options[:tipi_root] end
register(namespace, path, route)
click to toggle source
# File lib/rack/tipi/assets.rb, line 29 def self.register(namespace, path, route) asset = Asset.new(namespace, path, route) (@resources ||= []) << asset unless resources.include? asset end
resources()
click to toggle source
# File lib/rack/tipi/assets.rb, line 25 def self.resources @resources || [] end
Public Instance Methods
call(env)
click to toggle source
# File lib/rack/tipi/assets.rb, line 13 def call(env) asset = self.class.resources.detect do |a| "#{tipi_root}#{a.route}" == env['REQUEST_PATH'] end if asset [ 200, { 'Content-Type' => asset.mime_type }, [ asset.content ] ] else app.call(env) end end