class Aimastering::LibraryAudio
Attributes
Public Class Methods
Attribute mapping from ruby-style variable name to JSON key.
# File lib/aimastering/models/library_audio.rb, line 90 def self.attribute_map { :'id' => :'id', :'user_id' => :'user_id', :'name' => :'name', :'album' => :'album', :'album_artist' => :'album_artist', :'artist' => :'artist', :'genre' => :'genre', :'track' => :'track', :'publisher' => :'publisher', :'file_hash' => :'file_hash', :'size' => :'size', :'status' => :'status', :'failure_reason' => :'failure_reason', :'probe_json' => :'probe_json', :'rms' => :'rms', :'peak' => :'peak', :'true_peak' => :'true_peak', :'lowpass_true_peak_15khz' => :'lowpass_true_peak_15khz', :'loudness' => :'loudness', :'dynamics' => :'dynamics', :'sharpness' => :'sharpness', :'space' => :'space', :'loudness_range' => :'loudness_range', :'drr' => :'drr', :'sound_quality' => :'sound_quality', :'sound_quality2' => :'sound_quality2', :'dissonance' => :'dissonance', :'frames' => :'frames', :'sample_rate' => :'sample_rate', :'channels' => :'channels', :'is_public' => :'is_public', :'liked_by_self' => :'liked_by_self', :'like_count' => :'like_count', :'created_at' => :'created_at', :'updated_at' => :'updated_at' } end
Initializes the object @param [Hash] attributes Model attributes in the form of hash
# File lib/aimastering/models/library_audio.rb, line 173 def initialize(attributes = {}) return unless attributes.is_a?(Hash) # convert string to symbol for hash key attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v} if attributes.has_key?(:'id') self.id = attributes[:'id'] end if attributes.has_key?(:'user_id') self.user_id = attributes[:'user_id'] end if attributes.has_key?(:'name') self.name = attributes[:'name'] end if attributes.has_key?(:'album') self.album = attributes[:'album'] end if attributes.has_key?(:'album_artist') self.album_artist = attributes[:'album_artist'] end if attributes.has_key?(:'artist') self.artist = attributes[:'artist'] end if attributes.has_key?(:'genre') self.genre = attributes[:'genre'] end if attributes.has_key?(:'track') self.track = attributes[:'track'] end if attributes.has_key?(:'publisher') self.publisher = attributes[:'publisher'] end if attributes.has_key?(:'file_hash') self.file_hash = attributes[:'file_hash'] end if attributes.has_key?(:'size') self.size = attributes[:'size'] end if attributes.has_key?(:'status') self.status = attributes[:'status'] end if attributes.has_key?(:'failure_reason') self.failure_reason = attributes[:'failure_reason'] end if attributes.has_key?(:'probe_json') self.probe_json = attributes[:'probe_json'] end if attributes.has_key?(:'rms') self.rms = attributes[:'rms'] end if attributes.has_key?(:'peak') self.peak = attributes[:'peak'] end if attributes.has_key?(:'true_peak') self.true_peak = attributes[:'true_peak'] end if attributes.has_key?(:'lowpass_true_peak_15khz') self.lowpass_true_peak_15khz = attributes[:'lowpass_true_peak_15khz'] end if attributes.has_key?(:'loudness') self.loudness = attributes[:'loudness'] end if attributes.has_key?(:'dynamics') self.dynamics = attributes[:'dynamics'] end if attributes.has_key?(:'sharpness') self.sharpness = attributes[:'sharpness'] end if attributes.has_key?(:'space') self.space = attributes[:'space'] end if attributes.has_key?(:'loudness_range') self.loudness_range = attributes[:'loudness_range'] end if attributes.has_key?(:'drr') self.drr = attributes[:'drr'] end if attributes.has_key?(:'sound_quality') self.sound_quality = attributes[:'sound_quality'] end if attributes.has_key?(:'sound_quality2') self.sound_quality2 = attributes[:'sound_quality2'] end if attributes.has_key?(:'dissonance') self.dissonance = attributes[:'dissonance'] end if attributes.has_key?(:'frames') self.frames = attributes[:'frames'] end if attributes.has_key?(:'sample_rate') self.sample_rate = attributes[:'sample_rate'] end if attributes.has_key?(:'channels') self.channels = attributes[:'channels'] end if attributes.has_key?(:'is_public') self.is_public = attributes[:'is_public'] end if attributes.has_key?(:'liked_by_self') self.liked_by_self = attributes[:'liked_by_self'] end if attributes.has_key?(:'like_count') self.like_count = attributes[:'like_count'] end if attributes.has_key?(:'created_at') self.created_at = attributes[:'created_at'] end if attributes.has_key?(:'updated_at') self.updated_at = attributes[:'updated_at'] end end
Attribute type mapping.
# File lib/aimastering/models/library_audio.rb, line 131 def self.swagger_types { :'id' => :'Integer', :'user_id' => :'Integer', :'name' => :'String', :'album' => :'String', :'album_artist' => :'String', :'artist' => :'String', :'genre' => :'String', :'track' => :'Integer', :'publisher' => :'String', :'file_hash' => :'String', :'size' => :'Integer', :'status' => :'String', :'failure_reason' => :'String', :'probe_json' => :'String', :'rms' => :'Float', :'peak' => :'Float', :'true_peak' => :'Float', :'lowpass_true_peak_15khz' => :'Float', :'loudness' => :'Float', :'dynamics' => :'Float', :'sharpness' => :'Float', :'space' => :'Float', :'loudness_range' => :'Float', :'drr' => :'Float', :'sound_quality' => :'Float', :'sound_quality2' => :'Float', :'dissonance' => :'Float', :'frames' => :'Integer', :'sample_rate' => :'Integer', :'channels' => :'Integer', :'is_public' => :'BOOLEAN', :'liked_by_self' => :'BOOLEAN', :'like_count' => :'Integer', :'created_at' => :'DateTime', :'updated_at' => :'DateTime' } end
Public Instance Methods
Checks equality by comparing each attribute. @param [Object] Object to be compared
# File lib/aimastering/models/library_audio.rb, line 336 def ==(o) return true if self.equal?(o) self.class == o.class && id == o.id && user_id == o.user_id && name == o.name && album == o.album && album_artist == o.album_artist && artist == o.artist && genre == o.genre && track == o.track && publisher == o.publisher && file_hash == o.file_hash && size == o.size && status == o.status && failure_reason == o.failure_reason && probe_json == o.probe_json && rms == o.rms && peak == o.peak && true_peak == o.true_peak && lowpass_true_peak_15khz == o.lowpass_true_peak_15khz && loudness == o.loudness && dynamics == o.dynamics && sharpness == o.sharpness && space == o.space && loudness_range == o.loudness_range && drr == o.drr && sound_quality == o.sound_quality && sound_quality2 == o.sound_quality2 && dissonance == o.dissonance && frames == o.frames && sample_rate == o.sample_rate && channels == o.channels && is_public == o.is_public && liked_by_self == o.liked_by_self && like_count == o.like_count && created_at == o.created_at && updated_at == o.updated_at end
Deserializes the data based on type @param string type Data type @param string value Value to be deserialized @return [Object] Deserialized data
# File lib/aimastering/models/library_audio.rb, line 412 def _deserialize(type, value) case type.to_sym when :DateTime DateTime.parse(value) when :Date Date.parse(value) when :String value.to_s when :Integer value.to_i when :Float value.to_f when :BOOLEAN 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] value.map { |v| _deserialize(inner_type, v) } when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/ k_type = Regexp.last_match[:k_type] v_type = Regexp.last_match[:v_type] {}.tap do |hash| value.each do |k, v| hash[_deserialize(k_type, k)] = _deserialize(v_type, v) end end else # model temp_model = Aimastering.const_get(type).new temp_model.build_from_hash(value) end end
Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value @param [Object] value Any valid value @return [Hash] Returns the value in the form of hash
# File lib/aimastering/models/library_audio.rb, line 478 def _to_hash(value) if value.is_a?(Array) 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 value.to_hash else value end end
Builds the object from hash @param [Hash] attributes Model attributes in the form of hash @return [Object] Returns the model itself
# File lib/aimastering/models/library_audio.rb, line 391 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.swagger_types.each_pair do |key, type| if type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the 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 self end
@see the `==` method @param [Object] Object to be compared
# File lib/aimastering/models/library_audio.rb, line 378 def eql?(o) self == o end
Calculates hash code according to all attributes. @return [Fixnum] Hash code
# File lib/aimastering/models/library_audio.rb, line 384 def hash [id, user_id, name, album, album_artist, artist, genre, track, publisher, file_hash, size, status, failure_reason, probe_json, rms, peak, true_peak, lowpass_true_peak_15khz, loudness, dynamics, sharpness, space, loudness_range, drr, sound_quality, sound_quality2, dissonance, frames, sample_rate, channels, is_public, liked_by_self, like_count, created_at, updated_at].hash end
Show invalid properties with the reasons. Usually used together with valid? @return Array for valid properties with the reasons
# File lib/aimastering/models/library_audio.rb, line 323 def list_invalid_properties invalid_properties = Array.new return invalid_properties end
Returns the object in the form of hash @return [Hash] Returns the object in the form of hash
# File lib/aimastering/models/library_audio.rb, line 464 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) next if value.nil? hash[param] = _to_hash(value) end hash end
Returns the string representation of the object @return [String] String presentation of the object
# File lib/aimastering/models/library_audio.rb, line 452 def to_s to_hash.to_s end
Check to see if the all the properties in the model are valid @return true if the model is valid
# File lib/aimastering/models/library_audio.rb, line 330 def valid? return true end