lib/algolia/models/ingestion/source_update_commercetools.rb in algolia-3.0.0.beta.8 vs lib/algolia/models/ingestion/source_update_commercetools.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 Ingestion
class SourceUpdateCommercetools
attr_accessor :store_keys
@@ -35,39 +35,47 @@
end
# Attribute type mapping.
def self.types_mapping
{
- :store_keys => :'Array<String>',
- :locales => :'Array<String>',
- :url => :String,
- :fallback_is_in_stock_value => :Boolean,
- :custom_fields => :CommercetoolsCustomFields
+ :store_keys => :"Array<String>",
+ :locales => :"Array<String>",
+ :url => :"String",
+ :fallback_is_in_stock_value => :"Boolean",
+ :custom_fields => :"CommercetoolsCustomFields"
}
end
# List of attributes with nullable: true
def self.openapi_nullable
- Set.new([])
+ Set.new(
+ []
+ )
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::SourceUpdateCommercetools` initialize method"
+ if (!attributes.is_a?(Hash))
+ raise(
+ ArgumentError,
+ "The input argument (attributes) must be a hash in `Algolia::SourceUpdateCommercetools` 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::SourceUpdateCommercetools`. 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::SourceUpdateCommercetools`. 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?(:store_keys)
if (value = attributes[:store_keys]).is_a?(Array)
self.store_keys = value
end
@@ -93,12 +101,11 @@
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 &&
store_keys == other.store_keys &&
locales == other.locales &&
url == other.url &&
fallback_is_in_stock_value == other.fallback_is_in_stock_value &&
@@ -120,26 +127,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
@@ -161,10 +170,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]
@@ -175,14 +185,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::Ingestion.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
@@ -211,10 +223,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
@@ -225,14 +238,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