Module: LocalIPChecker::Adapters

Defined in:
lib/local_ip_checker/adapters.rb

Constant Summary collapse

DOMAIN_REGEX =
/(\w+\.?)+/.freeze

Class Method Summary collapse

Class Method Details

.build(value) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/local_ip_checker/adapters.rb', line 15

def build(value)
  if value.match?(Resolv::IPv4::Regex) || value.match?(Resolv::IPv6::Regex)
    LocalIPChecker::Adapters::IPAddress
  elsif value.match?(DOMAIN_REGEX)
    LocalIPChecker::Adapters::Domain
  else
    raise "ValueError #{value}"
  end.new(value)
end