module Fog::Compute::Ovirt::V4::Shared
Public Instance Methods
check_arguments(id, options)
click to toggle source
# File lib/fog/ovirt/requests/compute/v4/update_interface.rb, line 6 def check_arguments(id, options) raise ArgumentError, "instance id is a required parameter" unless id raise ArgumentError, "interface id is a required parameter for update-interface" unless options.key? :id end
get_attr_value(value, opts)
click to toggle source
rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/MethodLength, Metrics/PerceivedComplexity
# File lib/fog/ovirt/compute/v4.rb, line 77 def get_attr_value(value, opts) case value when OvirtSDK4::List value.to_a when Array, Hash, DateTime value when OvirtSDK4::HighAvailability opts[:ha] = value.enabled when OvirtSDK4::TemplateVersion OpenStruct.new(:version_name => value.version_name, :version_number => value.version_number) when OvirtSDK4::Mac value.address when OvirtSDK4::Cpu opts[:cores] = value.topology.nil? ? nil : value.topology.cores opts[:sockets] = value.topology.nil? ? nil : value.topology.sockets when OvirtSDK4::Display subject = value.certificate.subject if value.certificate { :type => value.type, :address => value.address, :port => value.port, :secure_port => value.secure_port, :subject => subject, :monitors => value.monitors } else if value.class.respond_to?(:parent) && value.class.parent == OvirtSDK4 value.id if value.respond_to?(:id) else value.to_s.strip end end end
ovirt_attrs(obj)
click to toggle source
rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity converts an OVIRT object into an hash for fog to consume.
# File lib/fog/ovirt/compute/v4.rb, line 46 def ovirt_attrs(obj) opts = {} # TODO: stop using instance_variables, they will change obj.instance_variables.each do |v| key = v.to_s.delete("@").to_sym value = obj.instance_variable_get(v) if key == :network opts[key] = client.follow_link(obj.vnic_profile).network.id next end if key == :provisioned_size opts[:size] = value.to_s next end # ignore nil values next if value.nil? if key != :data_center && value.respond_to?(:href) && value.href && value.respond_to?(:id) opts[key] = value.id end opts[key] ||= get_attr_value(value, opts) end opts end