class Eternity::TrackFlatter
Public Class Methods
flatten(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 5 def flatten(changes) send "flatten_#{changes.first['action']}_#{changes.last['action']}", changes end
Private Class Methods
expand(change)
click to toggle source
# File lib/eternity/track_flatter.rb, line 47 def expand(change) return change.dup if change.key? 'data' change.dup.tap do |ch| sha1 = ch.delete 'blob' ch['data'] = Blob.read(:data, sha1) if sha1 end end
flatten_delete_delete(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 43 def flatten_delete_delete(changes) expand changes.last end
flatten_delete_insert(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 35 def flatten_delete_insert(changes) {'action' => UPDATE, 'data' => expand(changes.last)['data']} end
flatten_delete_update(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 39 def flatten_delete_update(changes) {'action' => UPDATE, 'data' => expand(changes.last)['data']} end
flatten_insert_delete(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 19 def flatten_insert_delete(changes) nil end
flatten_insert_insert(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 11 def flatten_insert_insert(changes) expand changes.last end
flatten_insert_update(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 15 def flatten_insert_update(changes) {'action' => INSERT, 'data' => expand(changes.last)['data']} end
flatten_update_delete(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 31 def flatten_update_delete(changes) expand changes.last end
flatten_update_insert(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 23 def flatten_update_insert(changes) {'action' => UPDATE, 'data' => expand(changes.last)['data']} end
flatten_update_update(changes)
click to toggle source
# File lib/eternity/track_flatter.rb, line 27 def flatten_update_update(changes) expand changes.last end