Class: Resolv::DNS::Requester

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

Overview

:nodoc:

Direct Known Subclasses

ConnectedUDP, TCP, UnconnectedUDP

Defined Under Namespace

Classes: ConnectedUDP, RequestError, Sender, TCP, UnconnectedUDP

Instance Method Summary collapse

Constructor Details

#initializeRequester

Returns a new instance of Requester.



543
544
545
# File 'lib/resolv.rb', line 543

def initialize
  @senders = {}
end

Instance Method Details

#closeObject



547
548
549
550
551
552
553
554
555
556
557
# File 'lib/resolv.rb', line 547

def close
  thread, sock, @thread, @sock = @thread, @sock
  begin
    if thread
      thread.kill
      thread.join
    end
  ensure
    sock.close if sock
  end
end

#delete(arg) ⇒ Object



559
560
561
562
563
564
565
566
567
568
# File 'lib/resolv.rb', line 559

def delete(arg)
  case arg
  when Sender
    @senders.delete_if {|k, s| s == arg }
  when Queue
    @senders.delete_if {|k, s| s.queue == arg }
  else
    raise ArgumentError.new("neither Sender or Queue: #{arg}")
  end
end