class KodiDedup::Media
Attributes
group_by_proc[R]
singular_class[R]
Public Class Methods
new(media:, singular_class:, group_by_proc: )
click to toggle source
Calls superclass method
# File lib/kodi_dedup/classes/media.rb, line 5 def initialize(media:, singular_class:, group_by_proc: ) @singular_class = singular_class @group_by_proc = group_by_proc super(media.map { |m| singular_class.wrap(m) }.select { |m| m.exists? }) end
Public Instance Methods
grouped()
click to toggle source
# File lib/kodi_dedup/classes/media.rb, line 11 def grouped group_by(&@group_by_proc).values.select { |media| media.length > 1 }.map { |media| self.class.new(media) } end
total_playcount()
click to toggle source
# File lib/kodi_dedup/classes/media.rb, line 19 def total_playcount sum { |e| e.playcount } end
unplayed()
click to toggle source
# File lib/kodi_dedup/classes/media.rb, line 15 def unplayed select { |e| e.playcount == 0 } end