Class: DnsTimeout
- Inherits:
-
Object
- Object
- DnsTimeout
- Includes:
- SecondsHandle
- Defined in:
- lib/net/dns/resolver/timeouts.rb
Overview
:nodoc: all
Direct Known Subclasses
Instance Method Summary collapse
-
#initialize(seconds) ⇒ DnsTimeout
constructor
A new instance of DnsTimeout.
- #pretty_to_s ⇒ Object
- #timeout ⇒ Object
- #to_s ⇒ Object
Methods included from SecondsHandle
Constructor Details
#initialize(seconds) ⇒ DnsTimeout
Returns a new instance of DnsTimeout.
24 25 26 27 28 29 30 |
# File 'lib/net/dns/resolver/timeouts.rb', line 24 def initialize(seconds) if seconds.is_a? Numeric and seconds >= 0 @timeout = seconds else raise DnsTimeoutArgumentError, "Invalid value for tcp timeout" end end |
Instance Method Details
#pretty_to_s ⇒ Object
40 41 42 |
# File 'lib/net/dns/resolver/timeouts.rb', line 40 def pretty_to_s transform(@timeout) end |
#timeout ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/net/dns/resolver/timeouts.rb', line 44 def timeout unless block_given? raise DnsTimeoutArgumentError, "Block required but missing" end if @timeout == 0 yield else return Timeout.timeout(@timeout) do yield end end end |
#to_s ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/net/dns/resolver/timeouts.rb', line 32 def to_s if @timeout == 0 @output else @timeout.to_s end end |