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 34900 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 34910 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 34735 def comment @comment end
Sets the value of the `comment` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 34744 def comment=(value) @comment = value end
Returns the value of the `description` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 34753 def description @description end
Sets the value of the `description` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 34762 def description=(value) @description = value end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 34920 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 34771 def id @id end
Sets the value of the `id` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 34780 def id=(value) @id = value end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 34789 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 34798 def name=(value) @name = value end
Returns the value of the `permissions` attribute.
@return [Array<Permission>]
# File lib/ovirtsdk4/types.rb, line 34807 def permissions @permissions end
Sets the value of the `permissions` attribute.
@param list [Array<Permission>]
# File lib/ovirtsdk4/types.rb, line 34816 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 34833 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 34846 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 34858 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 34871 def storage_domain=(value) if value.is_a?(Hash) value = StorageDomain.new(value) end @storage_domain = value end