class VirtualMachineDevice::Device
Device
Classes
Device
base class
@param id [Integer] The OpenNebula
resource id @param one_res [XMLElement] The OpenNebula
representation of the object @param vc_res [vCenter_class_specific] vCenter object representation
Public Class Methods
new(id, one_res, vc_res)
click to toggle source
# File lib/vm_device.rb, line 14 def initialize(id, one_res, vc_res) @id = id @one_res = one_res @vc_res = vc_res end
Public Instance Methods
detached?()
click to toggle source
# File lib/vm_device.rb, line 65 def detached? !one? end
exists?()
click to toggle source
# File lib/vm_device.rb, line 39 def exists? !@vc_res.nil? end
id()
click to toggle source
# File lib/vm_device.rb, line 20 def id raise_if_no_exists_in_one @id end
managed?()
click to toggle source
# File lib/vm_device.rb, line 69 def managed? raise_if_no_exists_in_one return unless @one_res !(@one_res['OPENNEBULA_MANAGED'] && @one_res['OPENNEBULA_MANAGED'].downcase == 'no') end
no_exists?()
click to toggle source
# File lib/vm_device.rb, line 53 def no_exists? !exists? end
one?()
click to toggle source
# File lib/vm_device.rb, line 35 def one? !@one_res.nil? end
one_item()
click to toggle source
# File lib/vm_device.rb, line 25 def one_item raise_if_no_exists_in_one @one_res end
raise_if_no_exists_in_one()
click to toggle source
Fails if the device is not present in OpenNebula
# File lib/vm_device.rb, line 44 def raise_if_no_exists_in_one raise 'OpenNebula device does not exist at the moment' unless one? end
raise_if_no_exists_in_vcenter()
click to toggle source
Fails if the device is not present in vCenter
# File lib/vm_device.rb, line 49 def raise_if_no_exists_in_vcenter raise 'vCenter device does not exist at the moment' unless exists? end
synced?()
click to toggle source
# File lib/vm_device.rb, line 57 def synced? one? && exists? end
unsynced?()
click to toggle source
# File lib/vm_device.rb, line 61 def unsynced? !synced? end
vc_item()
click to toggle source
# File lib/vm_device.rb, line 30 def vc_item raise_if_no_exists_in_vcenter @vc_res end