class PublicSuffix::Domain
Monkey Patch to include the match logic
Public Instance Methods
Source
# File lib/cms_scanner/public_suffix/domain.rb, line 7 def ==(other) name == other.name end
For Sanity
Source
# File lib/cms_scanner/public_suffix/domain.rb, line 13 def match(pattern) pattern = PublicSuffix.parse(pattern) unless pattern.is_a?(PublicSuffix::Domain) return name == pattern.name unless pattern.trd return false unless tld == pattern.tld && sld == pattern.sld matching_pattern?(pattern) end
@return [ Boolean ]
Protected Instance Methods
Source
# File lib/cms_scanner/public_suffix/domain.rb, line 25 def matching_pattern?(pattern) pattern_trds = pattern.trd.split('.') domain_trds = trd.split('.') case pattern_trds.first when '*' pattern_trds[1..-1] == domain_trds[1..-1] when '**' pa = pattern_trds[1..-1] pa_size = pa.size domain_trds[domain_trds.size - pa_size, pa_size] == pa else name == pattern.name end end
@rturn [ Boolean ]