module DNS::ResolveHost::StaticResolver

Public Class Methods

configure(receiver, hosts_file=nil, attr_name: nil) click to toggle source
# File lib/dns/resolve_host/static_resolver.rb, line 20
def self.configure(receiver, hosts_file=nil, attr_name: nil)
  attr_name ||= :static_resolver

  instance = get hosts_file
  receiver.public_send "#{attr_name}=", instance
  instance
end
get(hosts_file=nil) click to toggle source
# File lib/dns/resolve_host/static_resolver.rb, line 4
def self.get(hosts_file=nil)
  logger.trace { "Constructing static resolver (HostsFile: #{hosts_file.inspect})" }

  if hosts_file.nil?
    hosts_file = Resolv::Hosts::DefaultFileName
  elsif !File.exist?(hosts_file)
    File.open(hosts_file) { }
  end

  static_resolver = Resolv::Hosts.new hosts_file

  logger.trace { "Static resolver constructed (HostsFile: #{hosts_file})" }

  static_resolver
end
logger() click to toggle source
# File lib/dns/resolve_host/static_resolver.rb, line 28
def self.logger
  @logger ||= Log.get self
end