Class: Elesai::LSI::PhysicalDrive
- Inherits:
-
Hash
- Object
- Hash
- Elesai::LSI::PhysicalDrive
- Defined in:
- lib/elesai/lsi.rb
Defined Under Namespace
Classes: FirmwareState, Size
Constant Summary collapse
- STATES =
{ :online => 'Online', :unconfigured_good => 'Unconfigured(good)', :hotspare => 'Hotspare', :failed => 'Failed', :rebuild => 'Rebuild', :unconfigured_bad => 'Unconfigured(bad)', :missing => 'Missing', :offline => 'Offline' }
- SPINS =
{ :spun_up => 'Spun up' }
Instance Method Summary collapse
- #_id ⇒ Object
- #add_adapter(a) ⇒ Object
- #add_virtualdrive(vd) ⇒ Object
- #get_adapter ⇒ Object
- #get_virtualdrive(vd_id) ⇒ Object
- #get_virtualdrives ⇒ Object
-
#initialize ⇒ PhysicalDrive
constructor
A new instance of PhysicalDrive.
- #inspect ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize ⇒ PhysicalDrive
Returns a new instance of PhysicalDrive.
163 164 165 166 |
# File 'lib/elesai/lsi.rb', line 163 def initialize self[:_adapter] = nil self[:_virtualdrives] = [] end |
Instance Method Details
#_id ⇒ Object
168 169 170 |
# File 'lib/elesai/lsi.rb', line 168 def _id "e#{self[:enclosuredeviceid].to_s}s#{self[:slotnumber].to_s}".to_sym end |
#add_adapter(a) ⇒ Object
182 183 184 |
# File 'lib/elesai/lsi.rb', line 182 def add_adapter(a) self[:_adapter] = a end |
#add_virtualdrive(vd) ⇒ Object
190 191 192 |
# File 'lib/elesai/lsi.rb', line 190 def add_virtualdrive(vd) self[:_virtualdrives][vd._id] = vd if self[:_virtualdrives][vd._id].nil? end |
#get_adapter ⇒ Object
186 187 188 |
# File 'lib/elesai/lsi.rb', line 186 def get_adapter self[:_adapter] end |
#get_virtualdrive(vd_id) ⇒ Object
194 195 196 |
# File 'lib/elesai/lsi.rb', line 194 def get_virtualdrive(vd_id) self[:_virtualdrives][vd_id] end |
#get_virtualdrives ⇒ Object
198 199 200 |
# File 'lib/elesai/lsi.rb', line 198 def get_virtualdrives self[:_virtualdrives] end |
#inspect ⇒ Object
178 179 180 |
# File 'lib/elesai/lsi.rb', line 178 def inspect "#{self.class}:#{self.__id__}" end |
#to_s ⇒ Object
172 173 174 175 176 |
# File 'lib/elesai/lsi.rb', line 172 def to_s keys = [:deviceid, :firmwarestate, :coercedsize, :mediatype, :pdtype, :mediaerrorcount, :predictivefailurecount,:inquirydata] #"[PD] %8s %4s %19s %8.2f%s %5s %5s %3d %3d %s" % [ self.id, @deviceid, "#{@state}:#{@spin}", @_size.number, @_size.unit, @mediatype, @pdtype, @mediaerrors, @predictivefailure, @inquirydata ] "[PD] %8s %4s %19s %s %5s %5s %3d %3d a%s %s" % [ self._id, self[:deviceid], self[:firmwarestate], self[:coercedsize], self[:mediatype], self[:pdtype], self[:mediaerrorcount], self[:predictivefailurecount], self[:_adapter]._id, self[:inquirydata] ] end |