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 13798 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 13808 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 13818 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 13728 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13737 def name=(value) @name = value end
Returns the value of the `vendor` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 13746 def vendor @vendor end
Sets the value of the `vendor` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13755 def vendor=(value) @vendor = value end
Returns the value of the `version` attribute.
@return [Version]
# File lib/ovirtsdk4/types.rb, line 13764 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 13777 def version=(value) if value.is_a?(Hash) value = Version.new(value) end @version = value end