Creates a new instance of the {OpenStackVolumeType} class.
@param opts [Hash] 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.
@option opts [String] :comment The value of attribute `comment`.
@option opts [String] :description The value of attribute `description`.
@option opts [String] :id The value of attribute `id`.
@option opts [String] :name The value of attribute `name`.
@option opts [OpenStackVolumeProvider, Hash] :openstack_volume_provider The value of attribute `openstack_volume_provider`.
@option opts [Array<Property>, Array<Hash>] :properties The values of attribute `properties`.
# File lib/ovirtsdk4/types.rb, line 11758 def initialize(opts = {}) super(opts) self.openstack_volume_provider = opts[:openstack_volume_provider] self.properties = opts[:properties] end
Returns `true` if `self` and `other` have the same attributes and values.
# File lib/ovirtsdk4/types.rb, line 11767 def ==(other) super && @openstack_volume_provider == other.openstack_volume_provider && @properties == other.properties end
Returns the value of the `comment` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 11620 def comment @comment end
Sets the value of the `comment` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 11629 def comment=(value) @comment = value end
Returns the value of the `description` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 11638 def description @description end
Sets the value of the `description` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 11647 def description=(value) @description = value end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 11776 def hash super + @openstack_volume_provider.hash + @properties.hash end
Returns the value of the `id` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 11656 def id @id end
Sets the value of the `id` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 11665 def id=(value) @id = value end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 11674 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 11683 def name=(value) @name = value end
Returns the value of the `openstack_volume_provider` attribute.
@return [OpenStackVolumeProvider]
# File lib/ovirtsdk4/types.rb, line 11692 def openstack_volume_provider @openstack_volume_provider end
Sets the value of the `openstack_volume_provider` attribute.
@param value [OpenStackVolumeProvider, Hash]
The `value` parameter can be an instance of {OvirtSDK4::OpenStackVolumeProvider} or a hash. If it is a hash then a new instance will be created passing the hash as the `opts` parameter to the constructor.
# File lib/ovirtsdk4/types.rb, line 11705 def openstack_volume_provider=(value) if value.is_a?(Hash) value = OpenStackVolumeProvider.new(value) end @openstack_volume_provider = value end
Returns the value of the `properties` attribute.
@return [Array<Property>]
# File lib/ovirtsdk4/types.rb, line 11717 def properties @properties end
Sets the value of the `properties` attribute.
@param list [Array<Property>]
# File lib/ovirtsdk4/types.rb, line 11726 def properties=(list) if list.class == Array list = List.new(list) list.each_with_index do |value, index| if value.is_a?(Hash) list[index] = Property.new(value) end end end @properties = list end