class Acmesmith::ChallengeResponderFilter
Public Class Methods
new(responder, subject_name_exact: nil, subject_name_suffix: nil, subject_name_regexp: nil)
click to toggle source
# File lib/acmesmith/challenge_responder_filter.rb, line 3 def initialize(responder, subject_name_exact: nil, subject_name_suffix: nil, subject_name_regexp: nil) @responder = responder @subject_name_exact = subject_name_exact && [*subject_name_exact].flatten.compact @subject_name_suffix = subject_name_suffix && [*subject_name_suffix].flatten.compact @subject_name_regexp = subject_name_regexp && [*subject_name_regexp].flatten.compact.map{ |_| Regexp.new(_) } end
Public Instance Methods
applicable?(domain)
click to toggle source
# File lib/acmesmith/challenge_responder_filter.rb, line 10 def applicable?(domain) if @subject_name_exact return false unless @subject_name_exact.include?(domain) end if @subject_name_suffix return false unless @subject_name_suffix.any? { |suffix| domain.end_with?(suffix) } end if @subject_name_regexp return false unless @subject_name_regexp.any? { |regexp| domain.match?(regexp) } end @responder.applicable?(domain) end