Creates a new instance of the {DiskProfile} 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 [Array<Permission>, Array<Hash>] :permissions The values of attribute `permissions`.
@option opts [Qos, Hash] :qos The value of attribute `qos`.
@option opts [StorageDomain, Hash] :storage_domain The value of attribute `storage_domain`.
# File lib/ovirtsdk4/types.rb, line 32475 def initialize(opts = {}) super(opts) self.permissions = opts[:permissions] self.qos = opts[:qos] self.storage_domain = opts[:storage_domain] end
Returns `true` if `self` and `other` have the same attributes and values.
# File lib/ovirtsdk4/types.rb, line 32485 def ==(other) super && @permissions == other.permissions && @qos == other.qos && @storage_domain == other.storage_domain end
Returns the value of the `comment` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 32310 def comment @comment end
Sets the value of the `comment` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 32319 def comment=(value) @comment = value end
Returns the value of the `description` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 32328 def description @description end
Sets the value of the `description` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 32337 def description=(value) @description = value end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 32495 def hash super + @permissions.hash + @qos.hash + @storage_domain.hash end
Returns the value of the `id` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 32346 def id @id end
Sets the value of the `id` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 32355 def id=(value) @id = value end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 32364 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 32373 def name=(value) @name = value end
Returns the value of the `permissions` attribute.
@return [Array<Permission>]
# File lib/ovirtsdk4/types.rb, line 32382 def permissions @permissions end
Sets the value of the `permissions` attribute.
@param list [Array<Permission>]
# File lib/ovirtsdk4/types.rb, line 32391 def permissions=(list) if list.class == Array list = List.new(list) list.each_with_index do |value, index| if value.is_a?(Hash) list[index] = Permission.new(value) end end end @permissions = list end
Returns the value of the `qos` attribute.
@return [Qos]
# File lib/ovirtsdk4/types.rb, line 32408 def qos @qos end
Sets the value of the `qos` attribute.
@param value [Qos, Hash]
The `value` parameter can be an instance of {OvirtSDK4::Qos} 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 32421 def qos=(value) if value.is_a?(Hash) value = Qos.new(value) end @qos = value end
Returns the value of the `storage_domain` attribute.
@return [StorageDomain]
# File lib/ovirtsdk4/types.rb, line 32433 def storage_domain @storage_domain end
Sets the value of the `storage_domain` attribute.
@param value [StorageDomain, Hash]
The `value` parameter can be an instance of {OvirtSDK4::StorageDomain} 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 32446 def storage_domain=(value) if value.is_a?(Hash) value = StorageDomain.new(value) end @storage_domain = value end