Class: NestConnect::ChunkParser
- Inherits:
-
Object
- Object
- NestConnect::ChunkParser
- Defined in:
- lib/nest_connect/chunk_parser.rb
Constant Summary collapse
- EVENT =
-'event: '
- DATA =
-'data: '
Class Method Summary collapse
Instance Method Summary collapse
- #cameras ⇒ Object
- #data ⇒ Object
- #event ⇒ Object
-
#initialize(chunk) ⇒ ChunkParser
constructor
A new instance of ChunkParser.
- #protects ⇒ Object
- #thermostats ⇒ Object
Constructor Details
#initialize(chunk) ⇒ ChunkParser
12 13 14 |
# File 'lib/nest_connect/chunk_parser.rb', line 12 def initialize(chunk) @raw_event_line, @raw_data_line = chunk.split("\n") end |
Class Method Details
.write(chunk) ⇒ Object
6 7 8 9 10 |
# File 'lib/nest_connect/chunk_parser.rb', line 6 def self.write(chunk) unless chunk.empty? new(chunk) end end |
Instance Method Details
#cameras ⇒ Object
32 33 34 |
# File 'lib/nest_connect/chunk_parser.rb', line 32 def cameras Device::Camera.from_hash_collection(cameras_hash) end |
#data ⇒ Object
20 21 22 |
# File 'lib/nest_connect/chunk_parser.rb', line 20 def data JSON.parse(data_line, symbolize_names: true) || {} end |
#event ⇒ Object
16 17 18 |
# File 'lib/nest_connect/chunk_parser.rb', line 16 def event event_line end |
#protects ⇒ Object
28 29 30 |
# File 'lib/nest_connect/chunk_parser.rb', line 28 def protects Device::Protect.from_hash_collection(smoke_co_alarms_hash) end |
#thermostats ⇒ Object
24 25 26 |
# File 'lib/nest_connect/chunk_parser.rb', line 24 def thermostats Device::Thermostat.from_hash_collection(thermostats_hash) end |