Class: Draisine::IpChecker

Inherits:
Object
  • Object
show all
Defined in:
lib/draisine/ip_checker.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ip_ranges) ⇒ IpChecker

Returns a new instance of IpChecker.



6
7
8
# File 'lib/draisine/ip_checker.rb', line 6

def initialize(ip_ranges)
  @ip_ranges = ip_ranges.map {|net| IPAddr.new(net) }
end

Instance Attribute Details

#ip_rangesObject (readonly)

Returns the value of attribute ip_ranges.



5
6
7
# File 'lib/draisine/ip_checker.rb', line 5

def ip_ranges
  @ip_ranges
end

Instance Method Details

#check(ip) ⇒ Object



10
11
12
13
# File 'lib/draisine/ip_checker.rb', line 10

def check(ip)
  addr = IPAddr.new(ip)
  ip_ranges.any? {|range| range.include?(addr) }
end