Class: NetworkedRFID::RFIDReaderRepository

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

Overview

Репозиторий всех ридеров, с которыми взаимодействует система.

Instance Method Summary collapse

Instance Method Details

#<<(reader) ⇒ Object

Добавить ридер в репозиторий.



20
21
22
# File 'lib/networked_rfid/rfid_reader_repository.rb', line 20

def <<(reader)
  readers[reader.ip] = reader
end

#pollObject

Опросить состояние ридеров и передать каждому полученный ответ на обработку.



8
9
10
11
12
13
14
15
16
17
# File 'lib/networked_rfid/rfid_reader_repository.rb', line 8

def poll
  readers.values.each do |reader|
    reader.poll(socket)
  end

  while have_replies?
    reply_packet = socket.recvfrom_nonblock(64)
    readers[reply_packet[1][2].to_s].process_response reply_packet[0]
  end
end