class KodiDedup::Deduplicator

Attributes

subject[R]

Public Class Methods

new(subject) click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 5
def initialize(subject)
  @subject = subject
end

Public Instance Methods

deduplicate_entries?() click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 21
def deduplicate_entries?
  subject.length > 0
end
deduplicate_playcounts?() click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 17
def deduplicate_playcounts?
  subject.total_playcount > 0
end
deduplication_required?() click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 13
def deduplication_required?
  deduplicate_playcounts? || deduplicate_entries?
end
entries() { |map do |e| media_file file sort| ... } click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 32
def entries
  return unless deduplicate_entries?
  yield(subject.map do |e|
    KodiDedup::MediaFile.new e.file
  end.sort)
end
playcounts() { |object| ... } click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 25
def playcounts
  return unless deduplicate_playcounts?
  subject.unplayed.each do |object|
    yield object
  end
end
preable() { || ... } click to toggle source
# File lib/kodi_dedup/deduplicator.rb, line 9
def preable
  yield if deduplication_required?
end