class SpamGuardian::Validator
Attributes
params[R]
response[R]
spams[R]
Public Class Methods
new(object)
click to toggle source
# File lib/spam_guardian/validator.rb, line 13 def initialize(object) @params = ParamsBuilder.new(object) @spams = [] end
Public Instance Methods
valid?()
click to toggle source
# File lib/spam_guardian/validator.rb, line 18 def valid? validate! spams.count.zero? end
validate!()
click to toggle source
# File lib/spam_guardian/validator.rb, line 23 def validate! return if @validated @response = Client.new.get(params) params.each_key do |key| case response[key] when Hash validate_response(response[key]) when Array response[key].each do |hash| validate_response(hash) end end end @validated = true end
validate_response(response)
click to toggle source
# File lib/spam_guardian/validator.rb, line 39 def validate_response(response) unless response.fetch('frequency', 0).to_i.zero? spams << response.fetch('value', '') end end