
ruby.model.mustache Maven / Gradle / Ivy
=begin
{{> api_info}}
=end
require 'date'
module {{moduleName}}{{#models}}{{#model}}{{#description}}
# {{{description}}}{{/description}}
class {{classname}}{{#vars}}{{#description}}
# {{{description}}}{{/description}}
attr_accessor :{{{name}}}
{{/vars}}
# Attribute mapping from ruby-style variable name to JSON key.
def self.attribute_map
{
{{#vars}}
:'{{{name}}}' => :'{{{baseName}}}'{{#hasMore}},{{/hasMore}}
{{/vars}}
}
end
# Attribute type mapping.
def self.swagger_types
{
{{#vars}}:'{{{name}}}' => :'{{{datatype}}}'{{#hasMore}},{{/hasMore}}
{{/vars}}
}
end
def initialize(attributes = {})
return unless attributes.is_a?(Hash)
# convert string to symbol for hash key
attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
{{#vars}}
if attributes[:'{{{baseName}}}']
{{#isContainer}}if (value = attributes[:'{{{baseName}}}']).is_a?(Array)
self.{{{name}}} = value
end{{/isContainer}}{{^isContainer}}self.{{{name}}} = attributes[:'{{{baseName}}}']{{/isContainer}}{{#defaultValue}}
else
self.{{{name}}} = {{{defaultValue}}}{{/defaultValue}}
end
{{/vars}}
end
{{#vars}}{{#isEnum}}
# Custom attribute writer method checking allowed values (enum).
def {{{name}}}=({{{name}}})
allowed_values = [{{#allowableValues}}{{#values}}"{{{this}}}"{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}]
if {{{name}}} && !allowed_values.include?({{{name}}})
fail "invalid value for '{{{name}}}', must be one of #{allowed_values}"
end
@{{{name}}} = {{{name}}}
end
{{/isEnum}}{{/vars}}
# Check equality by comparing each attribute.
def ==(o)
return true if self.equal?(o)
self.class == o.class{{#vars}} &&
{{name}} == o.{{name}}{{/vars}}
end
# @see the `==` method
def eql?(o)
self == o
end
# Calculate hash code according to all attributes.
def hash
[{{#vars}}{{name}}{{#hasMore}}, {{/hasMore}}{{/vars}}].hash
end
{{> base_object}}
end
{{/model}}
{{/models}}
end
© 2015 - 2025 Weber Informatics LLC | Privacy Policy