lib/hubspot/codegen/crm/objects/tasks/models/public_merge_input.rb in hubspot-api-client-15.0.2 vs lib/hubspot/codegen/crm/objects/tasks/models/public_merge_input.rb in hubspot-api-client-16.0.0
- old
+ new
@@ -4,15 +4,16 @@
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
The version of the OpenAPI document: v3
Generated by: https://openapi-generator.tech
-OpenAPI Generator version: 4.3.1
+OpenAPI Generator version: 6.2.1
=end
require 'date'
+require 'time'
module Hubspot
module Crm
module Objects
module Tasks
@@ -27,10 +28,15 @@
:'primary_object_id' => :'primaryObjectId',
:'object_id_to_merge' => :'objectIdToMerge'
}
end
+ # Returns all the JSON keys this model knows about
+ def self.acceptable_attributes
+ attribute_map.values
+ end
+
# Attribute type mapping.
def self.openapi_types
{
:'primary_object_id' => :'String',
:'object_id_to_merge' => :'String'
@@ -121,20 +127,23 @@
# Builds the object from hash
# @param [Hash] attributes Model attributes in the form of hash
# @return [Object] Returns the model itself
def build_from_hash(attributes)
return nil unless attributes.is_a?(Hash)
+ attributes = attributes.transform_keys(&:to_sym)
self.class.openapi_types.each_pair do |key, type|
- if type =~ /\AArray<(.*)>/i
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
+ self.send("#{key}=", 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[self.class.attribute_map[key]].is_a?(Array)
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
end
elsif !attributes[self.class.attribute_map[key]].nil?
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
- end # or else data not found in attributes(hash), not an issue as the data can be optional
+ end
end
self
end
@@ -142,12 +151,12 @@
# @param string type Data type
# @param string value Value to be deserialized
# @return [Object] Deserialized data
def _deserialize(type, value)
case type.to_sym
- when :DateTime
- DateTime.parse(value)
+ when :Time
+ Time.parse(value)
when :Date
Date.parse(value)
when :String
value.to_s
when :Integer
@@ -173,11 +182,13 @@
value.each do |k, v|
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
end
end
else # model
- Hubspot::Crm::Objects::Tasks.const_get(type).build_from_hash(value)
+ # models (e.g. Pet) or oneOf
+ klass = Hubspot::Crm::Objects::Tasks.const_get(type)
+ 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
@@ -199,11 +210,11 @@
value = self.send(attr)
if value.nil?
is_nullable = self.class.openapi_nullable.include?(attr)
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
end
-
+
hash[param] = _to_hash(value)
end
hash
end
@@ -222,10 +233,12 @@
value.to_hash
else
value
end
end
+
end
+
end
end
end
end