Sha256: 6cd8ba767b07a96c9d0d4534edf57f2673e19735b200495f590ca026c5b40e76

Contents?: true

Size: 637 Bytes

Versions: 6

Compression:

Stored size: 637 Bytes

Contents

# frozen_string_literal: true
# author: Vadim Shaveiko <@vshaveyko>
class RailsApiDoc::Config::Validator

  class << self

    attr_accessor :checkers

    def add_checker(klass)
      return if checkers.detect { |c| c.is_a?(klass) }

      checkers << klass.new
    end

    def remove_checker(klass)
      checkers.delete_if { |c| c.is_a?(klass) }
    end

    def valid_param?(controller_param, api_param_data)
      checkers.all? do |checker|
        checker.valid?(controller_param, api_param_data)
      end
    end

  end

  self.checkers = [RailsApiDoc::Config::ValidateEnum.new, RailsApiDoc::Config::ValidateAryObject.new]

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rails_api_documentation-0.3.4 lib/rails_api_doc/config/validator.rb
rails_api_documentation-0.3.3 lib/rails_api_doc/config/validator.rb
rails_api_documentation-0.3.2 lib/rails_api_doc/config/validator.rb
rails_api_documentation-0.3.1 lib/rails_api_doc/config/validator.rb
rails_api_documentation-0.3.0 lib/rails_api_doc/config/validator.rb
rails_api_documentation-0.2.3 lib/rails_api_doc/config/validator.rb