Class: Arbi::Modules::Sys::Adapter
- Inherits:
-
Module
- Object
- Module
- Arbi::Modules::Sys::Adapter
show all
- Defined in:
- lib/arbi/modules/sys/adapter.rb
Instance Attribute Summary
Attributes inherited from Module
#data
Instance Method Summary
collapse
Methods inherited from Module
__method_missing__, #every, inherited, json_create, method_missing, modules, name, #to_json
Constructor Details
#initialize(data = []) ⇒ Adapter
Returns a new instance of Adapter.
27
28
29
30
31
32
|
# File 'lib/arbi/modules/sys/adapter.rb', line 27
def initialize(data = [])
super(data)
@adapters = Dir.glob('/sys/class/power_supply/*').select {|ad|
File.read("#{ad}/type").strip == 'Mains'
}
end
|
Instance Method Details
49
50
51
52
53
|
# File 'lib/arbi/modules/sys/adapter.rb', line 49
def format
tablize([['NAME', 'STATE']] + @data.map {|adapter|
[adapter[:name] || adapter['name'], (adapter[:state] || adapter['state']) ? 'on' : 'off']
})
end
|
#refresh ⇒ Object
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/arbi/modules/sys/adapter.rb', line 38
def refresh
@data = []
@adapters.each {|adapter|
@data << {
name: File.basename(adapter),
state: (File.read("#{adapter}/online").to_i.zero? ? false : true)
}
}
end
|
#valid? ⇒ Boolean
34
35
36
|
# File 'lib/arbi/modules/sys/adapter.rb', line 34
def valid?
!@adapters.empty?
end
|