Creates a new instance of the {ProductInfo} 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] :name The value of attribute `name`.
@option opts [String] :vendor The value of attribute `vendor`.
@option opts [Version, Hash] :version The value of attribute `version`.
# File lib/ovirtsdk4/types.rb, line 13606 def initialize(opts = {}) super(opts) self.name = opts[:name] self.vendor = opts[:vendor] self.version = opts[:version] end
Returns `true` if `self` and `other` have the same attributes and values.
# File lib/ovirtsdk4/types.rb, line 13616 def ==(other) super && @name == other.name && @vendor == other.vendor && @version == other.version end
Generates a hash value for this object.
# File lib/ovirtsdk4/types.rb, line 13626 def hash super + @name.hash + @vendor.hash + @version.hash end
Returns the value of the `name` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 13536 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13545 def name=(value) @name = value end
Returns the value of the `vendor` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 13554 def vendor @vendor end
Sets the value of the `vendor` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13563 def vendor=(value) @vendor = value end
Returns the value of the `version` attribute.
@return [Version]
# File lib/ovirtsdk4/types.rb, line 13572 def version @version end
Sets the value of the `version` attribute.
@param value [Version, Hash]
The `value` parameter can be an instance of {OvirtSDK4::Version} 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 13585 def version=(value) if value.is_a?(Hash) value = Version.new(value) end @version = value end