Class: Helium::Label
Instance Attribute Summary collapse
Attributes inherited from Resource
#id, #params, #type
Instance Method Summary
collapse
Methods inherited from Resource
#==, all, all_path, create, #created_at, #destroy, #eql?, find, #hash, initialize_from_path, #metadata, resource_name, #resource_name, #resource_path, singleton, #to_json, #update, #updated_at
Methods included from Utils
#datetime_to_iso, #kebab_case
Constructor Details
#initialize(opts = {}) ⇒ Label
Returns a new instance of Label.
5
6
7
8
9
|
# File 'lib/helium/label.rb', line 5
def initialize(opts = {})
super(opts)
@name = @params.dig("attributes", "name")
end
|
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
3
4
5
|
# File 'lib/helium/label.rb', line 3
def name
@name
end
|
Instance Method Details
#add_elements(elements_to_add = []) ⇒ Object
34
35
36
37
|
# File 'lib/helium/label.rb', line 34
def add_elements(elements_to_add = [])
elements.add_relationships(elements_to_add)
self
end
|
#add_sensors(sensors_to_add = []) ⇒ Object
15
16
17
18
|
# File 'lib/helium/label.rb', line 15
def add_sensors(sensors_to_add = [])
sensors.add_relationships(sensors_to_add)
self
end
|
#as_json ⇒ Object
TODO can probably generalize this a bit more
50
51
52
53
54
|
# File 'lib/helium/label.rb', line 50
def as_json
super.merge({
name: name
})
end
|
#elements ⇒ Object
30
31
32
|
# File 'lib/helium/label.rb', line 30
def elements
Collection.new(klass: Element, client: @client, belongs_to: self)
end
|
#remove_elements(elements_to_remove = []) ⇒ Object
44
45
46
47
|
# File 'lib/helium/label.rb', line 44
def remove_elements(elements_to_remove = [])
elements.remove_relationships(elements_to_remove)
self
end
|
#remove_sensors(sensors_to_remove = []) ⇒ Object
25
26
27
28
|
# File 'lib/helium/label.rb', line 25
def remove_sensors(sensors_to_remove = [])
sensors.remove_relationships(sensors_to_remove)
self
end
|
#replace_elements(elements_to_replace = []) ⇒ Object
39
40
41
42
|
# File 'lib/helium/label.rb', line 39
def replace_elements(elements_to_replace = [])
elements.replace_relationships(elements_to_replace)
self
end
|
#replace_sensors(sensors_to_replace = []) ⇒ Object
20
21
22
23
|
# File 'lib/helium/label.rb', line 20
def replace_sensors(sensors_to_replace = [])
sensors.replace_relationships(sensors_to_replace)
self
end
|
#sensors ⇒ Object
11
12
13
|
# File 'lib/helium/label.rb', line 11
def sensors
Collection.new(klass: Sensor, client: @client, belongs_to: self)
end
|