class Rack::AppVersion

AppVersion

Constants

APP_VERSION_PATH
HEADER_KEY
VERSION

Public Class Methods

load_tasks() click to toggle source
# File lib/rack/app_version/rake_task.rb, line 9
def load_tasks
  load_init_task
  load_generate_task
end
new(app) click to toggle source
# File lib/rack/app_version.rb, line 9
def initialize(app)
  @app = app
  @app_version = IO.readlines(APP_VERSION_PATH)[0].chomp
end

Private Class Methods

load_generate_task() click to toggle source
# File lib/rack/app_version/rake_task.rb, line 27
def load_generate_task
  namespace :app_version do
    desc 'generate app version and write it in .app_version file'
    task :generate do
      puts 'Generating app version ...'
      puts '      generate version '
      IO.write APP_VERSION_PATH, Rack::AppVersion.generate_version
    end
  end
end
load_init_task() click to toggle source
# File lib/rack/app_version/rake_task.rb, line 16
def load_init_task
  namespace :app_version do
    desc 'generate .app_version file that will contain application version'
    task :init do
      puts 'Creating file that will contain application version ...'
      puts '      create .app_version'
      FileUtils.touch APP_VERSION_PATH
    end
  end
end

Public Instance Methods

_call(env) click to toggle source
# File lib/rack/app_version.rb, line 18
def _call(env)
  @app.call(env).tap \
    { |_s, headers, _b| headers[HEADER_KEY] = @app_version }
end
call(env) click to toggle source
# File lib/rack/app_version.rb, line 14
def call(env)
  dup._call env
end