Class: Health::Checker

Inherits:
Object
  • Object
show all
Defined in:
lib/health/checker.rb

Instance Method Summary collapse

Instance Method Details

#check(name_or_object, &block) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/health/checker.rb', line 7

def check(name_or_object, &block)
  if name_or_object.respond_to?(:call)
    checks[name_or_object.name.to_sym] = name_or_object
  else
    checks[name_or_object.to_sym] = block
  end
end

#checksObject



3
4
5
# File 'lib/health/checker.rb', line 3

def checks
  @checks ||= {}
end

#has_check?(name) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/health/checker.rb', line 15

def has_check?(name)
  checks.has_key?(name.to_sym)
end

#namesObject



19
20
21
# File 'lib/health/checker.rb', line 19

def names
  checks.keys
end

#perform(name) ⇒ Object



23
24
25
26
27
# File 'lib/health/checker.rb', line 23

def perform(name)
  checks[name.to_sym].call.tap do |result|
    assert_necessary_keys(result)
  end
end