class KakaxiParse::Timelapse
Constants
- COLUMNS
Public Class Methods
new( id: nil, name: nil, created_at: nil, updated_at: nil, start_datetime: nil, end_datetime: nil, thumbnail_url: nil, url: nil, device_id: nil )
click to toggle source
Calls superclass method
KakaxiParse::BaseModel::new
# File lib/kakaxi_parse/timelapse.rb, line 8 def initialize( id: nil, name: nil, created_at: nil, updated_at: nil, start_datetime: nil, end_datetime: nil, thumbnail_url: nil, url: nil, device_id: nil ) @start_datetime = DateTime.iso8601(start_datetime) @end_datetime = DateTime.iso8601(end_datetime) @thumbnail_url = thumbnail_url @url = url @device_id = device_id super(id, name, updated_at, created_at) end
short_name()
click to toggle source
# File lib/kakaxi_parse/timelapse.rb, line 33 def self.short_name 'timelapse' end
where(hash, limit: DEFUALT_LIMIT)
click to toggle source
Calls superclass method
KakaxiParse::BaseModel::where
# File lib/kakaxi_parse/timelapse.rb, line 29 def self.where(hash, limit: DEFUALT_LIMIT) to_objects(super(self, hash, limit, @@belongs_to)) if valid_key?(hash) end
Private Class Methods
to_objects(timelapses)
click to toggle source
# File lib/kakaxi_parse/timelapse.rb, line 42 def self.to_objects(timelapses) timelapses.map do |timelapse| new( id: timelapse['objectId'], url: timelapse['videoURL'], thumbnail_url: timelapse['thumbnail'] && timelapse['thumbnail']['url'], device_id: timelapse['device'] && timelapse['device']['objectId'], start_datetime: timelapse['beginningTime'] && timelapse['beginningTime']['iso'], end_datetime: timelapse['endTime'] && timelapse['endTime']['iso'], updated_at: timelapse['updatedAt'], created_at: timelapse['createdAt'] ) end end
valid_key?(hash)
click to toggle source
# File lib/kakaxi_parse/timelapse.rb, line 38 def self.valid_key?(hash) hash.keys.all? { |key| COLUMNS.push(*%i(id name updated_at created_at)).include? key } end