class JkoApi::Middleware
Public Class Methods
new(app, options={})
click to toggle source
# File lib/jko_api/middleware.rb, line 3 def initialize(app, options={}) @app = app @only = options[:only] end
Public Instance Methods
call(env)
click to toggle source
# File lib/jko_api/middleware.rb, line 8 def call(env) if @only && @only.call(env) if version_number = extract_version_number(env) ::JkoApi.current_version_number = version_number else ::JkoApi.reset end end @app.call env end
Private Instance Methods
extract_version_number(env)
click to toggle source
# File lib/jko_api/middleware.rb, line 21 def extract_version_number(env) accept_header = env['HTTP_ACCEPT'] return false unless accept_header accept_header[ACCEPT_HEADER_REGEX, 2] || accept_header[ACCEPT_HEADER_REGEX] && ::JkoApi.max_version_number end