Class: HTTPX::Resolver::Entry

Inherits:
SimpleDelegator
  • Object
show all
Defined in:
lib/httpx/resolver/entry.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(address, expires_in = Float::INFINITY, rescue_on_convert: false) ⇒ Entry

Returns a new instance of Entry.



14
15
16
17
18
19
20
21
22
23
# File 'lib/httpx/resolver/entry.rb', line 14

def initialize(address, expires_in = Float::INFINITY, rescue_on_convert: false)
  @expires_in = expires_in
  @address = address.is_a?(IPAddr) ? address : IPAddr.new(address.to_s)
  super(@address)
rescue IPAddr::InvalidAddressError
  raise unless rescue_on_convert

  @address = address.to_s
  super(@address)
end

Instance Attribute Details

#addressObject (readonly)

Returns the value of attribute address.



8
9
10
# File 'lib/httpx/resolver/entry.rb', line 8

def address
  @address
end

Class Method Details

.convert(address) ⇒ Object



10
11
12
# File 'lib/httpx/resolver/entry.rb', line 10

def self.convert(address)
  new(address, rescue_on_convert: true)
end

Instance Method Details

#expired?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/httpx/resolver/entry.rb', line 25

def expired?
  @expires_in < Utils.now
end