Class: Deepstream::RecordHandler
- Inherits:
-
Object
- Object
- Deepstream::RecordHandler
- Defined in:
- lib/deepstream/record_handler.rb
Instance Method Summary collapse
- #delete(name) ⇒ Object
- #discard(name) ⇒ Object
- #get(name, list: nil) ⇒ Object
- #get_list(name) ⇒ Object
-
#initialize(client) ⇒ RecordHandler
constructor
A new instance of RecordHandler.
- #on_message(message) ⇒ Object
- #set(name, *args) ⇒ Object
- #unsubscribe(name) ⇒ Object
Constructor Details
#initialize(client) ⇒ RecordHandler
Returns a new instance of RecordHandler.
8 9 10 11 |
# File 'lib/deepstream/record_handler.rb', line 8 def initialize(client) @client = client @records = {} end |
Instance Method Details
#delete(name) ⇒ Object
48 49 50 |
# File 'lib/deepstream/record_handler.rb', line 48 def delete(name) @client.(TOPIC::RECORD, ACTION::DELETE, name) if @records.delete(name) end |
#discard(name) ⇒ Object
44 45 46 |
# File 'lib/deepstream/record_handler.rb', line 44 def discard(name) unsubscribe(name) end |
#get(name, list: nil) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/deepstream/record_handler.rb', line 23 def get(name, list: nil) if list name.prepend("#{list}/") @records[list] ||= List.new(@client, list) @records[list].add(name) end @records[name] ||= Record.new(@client, name) end |
#get_list(name) ⇒ Object
32 33 34 |
# File 'lib/deepstream/record_handler.rb', line 32 def get_list(name) @records[name] ||= List.new(@client, name) end |
#on_message(message) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/deepstream/record_handler.rb', line 13 def () case .action when ACTION::ACK then nil when ACTION::PATCH then patch() when ACTION::READ then read() when ACTION::UPDATE then update() else raise(UnknownAction, ) end end |
#set(name, *args) ⇒ Object
36 37 38 |
# File 'lib/deepstream/record_handler.rb', line 36 def set(name, *args) @records[name]&.set(*args) end |
#unsubscribe(name) ⇒ Object
40 41 42 |
# File 'lib/deepstream/record_handler.rb', line 40 def unsubscribe(name) @records[name]&.unsubscribe end |