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 12305 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 12314 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 12167 def comment @comment end
Sets the value of the `comment` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12176 def comment=(value) @comment = value end
Returns the value of the `description` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 12185 def description @description end
Sets the value of the `description` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12194 def description=(value) @description = value end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 12323 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 12203 def id @id end
Sets the value of the `id` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12212 def id=(value) @id = value end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 12221 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 12230 def name=(value) @name = value end
Returns the value of the `openstack_volume_provider` attribute.
@return [OpenStackVolumeProvider]
# File lib/ovirtsdk4/types.rb, line 12239 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 12252 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 12264 def properties @properties end
Sets the value of the `properties` attribute.
@param list [Array<Property>]
# File lib/ovirtsdk4/types.rb, line 12273 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