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 13609 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 13619 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 13629 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 13539 def name @name end
Sets the value of the `name` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13548 def name=(value) @name = value end
Returns the value of the `vendor` attribute.
@return [String]
# File lib/ovirtsdk4/types.rb, line 13557 def vendor @vendor end
Sets the value of the `vendor` attribute.
@param value [String]
# File lib/ovirtsdk4/types.rb, line 13566 def vendor=(value) @vendor = value end
Returns the value of the `version` attribute.
@return [Version]
# File lib/ovirtsdk4/types.rb, line 13575 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 13588 def version=(value) if value.is_a?(Hash) value = Version.new(value) end @version = value end