Class: Wifidiag::App

Inherits:
Sinatra::Base
  • Object
show all
Defined in:
lib/wifidiag/app.rb

Defined Under Namespace

Classes: Boom

Constant Summary collapse

CONTEXT_RACK_ENV_NAME =
'wifidiag.ctx'

Class Method Summary collapse

Class Method Details

.initialize_context(config) ⇒ Object



18
19
20
21
22
23
# File 'lib/wifidiag/app.rb', line 18

def self.initialize_context(config)
  {
    config: config,
    revision: self.revision(),
  }
end

.rack(config = {}) ⇒ Object



34
35
36
37
38
39
40
41
42
# File 'lib/wifidiag/app.rb', line 34

def self.rack(config={})
  klass = App

  context = initialize_context(config)
  app = lambda { |env|
    env[CONTEXT_RACK_ENV_NAME] = context
    klass.call(env)
  }
end

.revisionObject



25
26
27
28
29
30
31
32
# File 'lib/wifidiag/app.rb', line 25

def self.revision
  path = File.join(__dir__, '..', '..', 'REVISION')
  if File.exist?(path)
    File.read(path).chomp
  else
    nil
  end
end