Sha256: 214167435318d9c6e5c2648c95199a0d4fab39ec69d9f47a2d2338439c7c0046

Contents?: true

Size: 709 Bytes

Versions: 16

Compression:

Stored size: 709 Bytes

Contents

module Easymon
  class Repository
    attr_reader :repository

    def self.fetch(name)
      return repository.fetch(name)
    rescue IndexError
      raise NoSuchCheck, "No check named '#{name}'"
    end

    def self.all
      Checklist.new repository
    end

    def self.names
      repository.keys
    end

    def self.add(name, check, is_critical=false)
      entry = {:check => check, :critical => is_critical ? true : false}
      repository[name] = entry
    end

    def self.remove(name)
      repository.delete(name)
    end

    def self.repository
      @repository ||= {}
    end

    def self.critical
      repository.map{ |name, entry| name if entry[:critical] }.compact
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
easymon-1.6.3 lib/easymon/repository.rb
easymon-1.6.2 lib/easymon/repository.rb
easymon-1.6.1 lib/easymon/repository.rb
easymon-1.5 lib/easymon/repository.rb
easymon-1.6.0 lib/easymon/repository.rb
easymon-1.4.2 lib/easymon/repository.rb
easymon-1.4.1 lib/easymon/repository.rb
easymon-1.4 lib/easymon/repository.rb
easymon-1.3 lib/easymon/repository.rb
easymon-1.2.6 lib/easymon/repository.rb
easymon-1.2.5 lib/easymon/repository.rb
easymon-1.2.4 lib/easymon/repository.rb
easymon-1.2.3 lib/easymon/repository.rb
easymon-1.2.2 lib/easymon/repository.rb
easymon-1.2.1 lib/easymon/repository.rb
easymon-1.2 lib/easymon/repository.rb