class EmailDomainValidator::RailsCache

Public Class Methods

cache_key(domain) click to toggle source
# File lib/email_domain_validator/rails_cache.rb, line 16
def self.cache_key(domain)
  [:email_domain_validator, domain]
end
new(app, options = {}) click to toggle source
# File lib/email_domain_validator/rails_cache.rb, line 2
def initialize(app, options = {})
  @app = app
  @options = options
end

Public Instance Methods

valid?(domain) click to toggle source
# File lib/email_domain_validator/rails_cache.rb, line 7
def valid?(domain)
  result = Rails.cache.read(self.class.cache_key(domain))
  if result.nil?
    result = @app.valid?(domain)
    Rails.cache.write(self.class.cache_key(domain), result, @options)
  end
  result
end