Sha256: b6f3131dcc8f6c9a36cf6e3a2c810b69a6eeab3f43c821e7666aed64556e890b

Contents?: true

Size: 427 Bytes

Versions: 2

Compression:

Stored size: 427 Bytes

Contents

require 'pry'
require 'resolv'
module Pre
  module Validators
    module Domain
      def self.expiry
        3600
      end

      def cache_key key
        "resolv_dns_result_#{key}"
      end

      def valid_domain?(resolution_provider = Resolv::DNS.new)
        cache_fetch cache_key(domain) do
          resolution_provider.getresources(domain, Resolv::DNS::Resource::IN::MX).any?
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pre-0.0.2 lib/pre/validators/domain.rb
pre-0.0.1 lib/pre/validators/domain.rb