class MiniCheck::VersionRackApp
Constants
- APP_KEY
- CONTENT_TYPE_HEADER
- JSON_MIME_TYPE
- PATH_INFO
- REQUEST_METHOD
- TEXT_MIME_TYPE
Attributes
build_file[RW]
host_app[RW]
path[RW]
Public Class Methods
new(args = {})
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 14 def initialize args = {} set_attributes args end
Private Class Methods
file_content(build_file)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 67 def self.file_content(build_file) @file_content ||= YAML.load_file(build_file) end
raw_file_content(build_file)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 71 def self.raw_file_content(build_file) @raw_file_content ||= IO.read(build_file) end
Public Instance Methods
call(env)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 22 def call env case "#{env[REQUEST_METHOD]} #{env[PATH_INFO]}" when "GET #{path}.json" JsonResponse.render(output_hash) when "GET #{path}" PlainTextResponse.render(output_hash) else host_app.call(env) end end
metadata()
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 18 def metadata @metadata ||= Hash.new end
new(app)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 33 def new(app) copy = self.dup copy.host_app = app copy end
Private Instance Methods
file_content(build_file)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 75 def file_content(build_file) self.class.file_content(build_file) end
file_hash()
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 56 def file_hash if (content = file_content(build_file)).instance_of?(Hash) content else content = raw_file_content(build_file).split("\n") Hash[content.map{ |pair| pair.split("=") }] end rescue => ex { error: ex.message } end
name=(name)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 42 def name= name metadata[APP_KEY] = name end
output_hash()
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 52 def output_hash metadata.merge(file_hash) end
raw_file_content(build_file)
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 79 def raw_file_content(build_file) self.class.raw_file_content(build_file) end
set_attributes(args = {})
click to toggle source
# File lib/mini_check/version_rack_app.rb, line 46 def set_attributes args = {} args.each do |k,v| send("#{k}=", v) end end