Class: OvirtSDK4::VmPlacementPolicy

Inherits:
Struct
  • Object
show all
Defined in:
lib/ovirtsdk4/types.rb,
lib/ovirtsdk4/types.rb

Instance Method Summary collapse

Methods included from Type

#dig, #href, #href=

Constructor Details

#initialize(opts = {}) ⇒ VmPlacementPolicy

Creates a new instance of the OvirtSDK4::VmPlacementPolicy class.

Parameters:

  • opts (Hash) (defaults to: {})

    A hash containing the attributes of the object. The keys of the hash should be symbols corresponding to the names of the attributes. The values of the hash should be the values of the attributes.

Options Hash (opts):

  • :affinity (VmAffinity)

    The value of attribute affinity.

  • :hosts (Array<Host>, Array<Hash>)

    The values of attribute hosts.



25858
25859
25860
25861
25862
# File 'lib/ovirtsdk4/types.rb', line 25858

def initialize(opts = {})
  super(opts)
  self.affinity = opts[:affinity]
  self.hosts = opts[:hosts]
end

Instance Method Details

#==(other) ⇒ Object

Returns true if self and other have the same attributes and values.



25867
25868
25869
25870
25871
# File 'lib/ovirtsdk4/types.rb', line 25867

def ==(other)
  super &&
  @affinity == other.affinity &&
  @hosts == other.hosts
end

#affinityVmAffinity

Returns the value of the affinity attribute.

Returns:



25807
25808
25809
# File 'lib/ovirtsdk4/types.rb', line 25807

def affinity
  @affinity
end

#affinity=(value) ⇒ Object

Sets the value of the affinity attribute.

Parameters:



25816
25817
25818
# File 'lib/ovirtsdk4/types.rb', line 25816

def affinity=(value)
  @affinity = value
end

#hashObject

Generates a hash value for this object.



25876
25877
25878
25879
25880
# File 'lib/ovirtsdk4/types.rb', line 25876

def hash
  super +
  @affinity.hash +
  @hosts.hash
end

#hostsArray<Host>

Returns the value of the hosts attribute.

Returns:



25825
25826
25827
# File 'lib/ovirtsdk4/types.rb', line 25825

def hosts
  @hosts
end

#hosts=(list) ⇒ Object

Sets the value of the hosts attribute.

Parameters:

  • list (Array<Host>)


25834
25835
25836
25837
25838
25839
25840
25841
25842
25843
25844
# File 'lib/ovirtsdk4/types.rb', line 25834

def hosts=(list)
  if list.class == Array
    list = List.new(list)
    list.each_with_index do |value, index|
      if value.is_a?(Hash)
        list[index] = Host.new(value)
      end
    end
  end
  @hosts = list
end