lib/algolia/models/analytics/daily_conversion_rates.rb in algolia-3.0.0.beta.8 vs lib/algolia/models/analytics/daily_conversion_rates.rb in algolia-3.0.0.beta.9
- old
+ new
@@ -1,9 +1,9 @@
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
-require 'date'
-require 'time'
+require "date"
+require "time"
module Algolia
module Analytics
class DailyConversionRates
# Conversion rate, calculated as number of tracked searches with at least one conversion event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
@@ -34,40 +34,48 @@
end
# Attribute type mapping.
def self.types_mapping
{
- :rate => :Float,
- :tracked_search_count => :Integer,
- :conversion_count => :Integer,
- :date => :String
+ :rate => :"Float",
+ :tracked_search_count => :"Integer",
+ :conversion_count => :"Integer",
+ :date => :"String"
}
end
# List of attributes with nullable: true
def self.openapi_nullable
- Set.new([
- :rate
- ])
+ Set.new(
+ [
+ :rate
+ ]
+ )
end
# Initializes the object
# @param [Hash] attributes Model attributes in the form of hash
def initialize(attributes = {})
- unless attributes.is_a?(Hash)
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::DailyConversionRates` initialize method"
+ if (!attributes.is_a?(Hash))
+ raise(
+ ArgumentError,
+ "The input argument (attributes) must be a hash in `Algolia::DailyConversionRates` initialize method"
+ )
end
# check to see if the attribute exists and convert string to symbol for hash key
- attributes = attributes.each_with_object({}) do |(k, v), h|
- unless self.class.attribute_map.key?(k.to_sym)
- raise ArgumentError,
- "`#{k}` is not a valid attribute in `Algolia::DailyConversionRates`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
+ attributes = attributes.each_with_object({}) { |(k, v), h|
+ if (!self.class.attribute_map.key?(k.to_sym))
+ raise(
+ ArgumentError,
+ "`#{k}` is not a valid attribute in `Algolia::DailyConversionRates`. Please check the name to make sure it's valid. List of attributes: " +
+ self.class.attribute_map.keys.inspect
+ )
end
h[k.to_sym] = v
- end
+ }
if attributes.key?(:rate)
self.rate = attributes[:rate]
else
self.rate = nil
@@ -94,39 +102,38 @@
# Custom attribute writer method with validation
# @param [Object] rate Value to be assigned
def rate=(rate)
if !rate.nil? && rate > 1
- raise ArgumentError, 'invalid value for "rate", must be smaller than or equal to 1.'
+ raise ArgumentError, "invalid value for \"rate\", must be smaller than or equal to 1."
end
if !rate.nil? && rate < 0
- raise ArgumentError, 'invalid value for "rate", must be greater than or equal to 0.'
+ raise ArgumentError, "invalid value for \"rate\", must be greater than or equal to 0."
end
@rate = rate
end
# Custom attribute writer method with validation
# @param [Object] conversion_count Value to be assigned
def conversion_count=(conversion_count)
if conversion_count.nil?
- raise ArgumentError, 'conversion_count cannot be nil'
+ raise ArgumentError, "conversion_count cannot be nil"
end
if conversion_count < 0
- raise ArgumentError, 'invalid value for "conversion_count", must be greater than or equal to 0.'
+ raise ArgumentError, "invalid value for \"conversion_count\", must be greater than or equal to 0."
end
@conversion_count = conversion_count
end
# Checks equality by comparing each attribute.
# @param [Object] Object to be compared
def ==(other)
- return true if equal?(other)
-
+ return true if self.equal?(other)
self.class == other.class &&
rate == other.rate &&
tracked_search_count == other.tracked_search_count &&
conversion_count == other.conversion_count &&
date == other.date
@@ -147,26 +154,28 @@
# Builds the object from hash
# @param [Hash] attributes Model attributes in the form of hash
# @return [Object] Returns the model itself
def self.build_from_hash(attributes)
return nil unless attributes.is_a?(Hash)
-
attributes = attributes.transform_keys(&:to_sym)
transformed_hash = {}
types_mapping.each_pair do |key, type|
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
transformed_hash[key.to_sym] = nil
elsif type =~ /\AArray<(.*)>/i
# check to ensure the input is an array given that the attribute
# is documented as an array but the input is not
if attributes[attribute_map[key]].is_a?(Array)
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
+ _deserialize(::Regexp.last_match(1), v)
+ }
end
elsif !attributes[attribute_map[key]].nil?
transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
end
end
+
new(transformed_hash)
end
# Deserializes the data based on type
# @param string type Data type
@@ -188,10 +197,11 @@
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
true
else
false
end
+
when :Object
# generic object (usually a Hash), return directly
value
when /\AArray<(?<inner_type>.+)>\z/
inner_type = Regexp.last_match[:inner_type]
@@ -202,14 +212,16 @@
{}.tap do |hash|
value.each do |k, v|
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
end
end
- else # model
+ # model
+ else
# models (e.g. Pet) or oneOf
klass = Algolia::Analytics.const_get(type)
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
+ .build_from_hash(value)
end
end
# Returns the string representation of the object
# @return [String] String presentation of the object
@@ -238,10 +250,11 @@
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
end
hash[param] = _to_hash(value)
end
+
hash
end
# Outputs non-array value in the form of hash
# For object, use to_hash. Otherwise, just return the value
@@ -252,14 +265,16 @@
value.compact.map { |v| _to_hash(v) }
elsif value.is_a?(Hash)
{}.tap do |hash|
value.each { |k, v| hash[k] = _to_hash(v) }
end
- elsif value.respond_to? :to_hash
+ elsif value.respond_to?(:to_hash)
value.to_hash
else
value
end
end
+
end
+
end
end