Sha256: 3f3900e0f3780011f2f30d15861c6802089efb2a12d16775013a9ab7d1c7ae5e

Contents?: true

Size: 648 Bytes

Versions: 5

Compression:

Stored size: 648 Bytes

Contents

require 'singleton'

module StatusCat
  class Config
    include Singleton

    NIL_PROC = proc {}

    attr_accessor :enabled
    attr_accessor :authenticate, :authorize
    attr_accessor :from, :to, :subject, :noreply
    attr_accessor :layout

    def initialize
      descendants = StatusCat::Checkers::Base.descendants
      @enabled = descendants.map { |klass| StatusCat::Checkers::Base.class_to_name(klass) }.sort
    end

    def authenticate_with(&blk)
      @authenticate = blk if blk
      @authenticate || NIL_PROC
    end

    def authorize_with(&block)
      @authorize = block if block
      @authorize || NIL_PROC
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
status_cat-5.2.1 lib/status_cat/config.rb
status_cat-5.2.0 lib/status_cat/config.rb
status_cat-5.0.2 lib/status_cat/config.rb
status_cat-5.0.1 lib/status_cat/config.rb
status_cat-5.0.0 lib/status_cat/config.rb