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 12302 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 12311 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 12164 def comment @comment end
Sets the value of the `comment` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12173 def comment=(value) @comment = value end
Returns the value of the `description` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 12182 def description @description end
Sets the value of the `description` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12191 def description=(value) @description = value end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 12320 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 12200 def id @id end
Sets the value of the `id` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12209 def id=(value) @id = value end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 12218 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12227 def name=(value) @name = value end
Returns the value of the `openstack_volume_provider` attribute.
@return [OpenStackVolumeProvider]
# File lib/ovirtsdk4/types.rb, line 12236 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 12249 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 12261 def properties @properties end
Sets the value of the `properties` attribute.
@param list [Array<Property>]
# File lib/ovirtsdk4/types.rb, line 12270 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