Module: KodiDedup

Defined in:
lib/kodi_dedup.rb,
lib/kodi_dedup/cli.rb,
lib/kodi_dedup/config.rb,
lib/kodi_dedup/version.rb,
lib/kodi_dedup/cli/base.rb,
lib/kodi_dedup/mediainfo.rb,
lib/kodi_dedup/cli/movies.rb,
lib/kodi_dedup/media_file.rb,
lib/kodi_dedup/classes/show.rb,
lib/kodi_dedup/cli/episodes.rb,
lib/kodi_dedup/deduplicator.rb,
lib/kodi_dedup/classes/media.rb,
lib/kodi_dedup/classes/movie.rb,
lib/kodi_dedup/classes/shows.rb,
lib/kodi_dedup/classes/medium.rb,
lib/kodi_dedup/classes/movies.rb,
lib/kodi_dedup/classes/episode.rb,
lib/kodi_dedup/classes/episodes.rb

Defined Under Namespace

Classes: Cli, Config, Deduplicator, Episode, Episodes, Media, MediaFile, Mediainfo, Medium, Movie, Movies, Show, Shows

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.clientObject



25
26
27
# File 'lib/kodi_dedup.rb', line 25

def self.client
  @client ||= Kodi::Client.new(config.url)
end

.configObject



47
48
49
# File 'lib/kodi_dedup.rb', line 47

def self.config
  @config
end

.config!(options) ⇒ Object



43
44
45
# File 'lib/kodi_dedup.rb', line 43

def self.config!(options)
  @config = Config.new(options)
end

.episodes(show_id) ⇒ Object



33
34
35
36
37
# File 'lib/kodi_dedup.rb', line 33

def self.episodes(show_id)
  episodes = KodiDedup.client.video_library.GetEpisodes(tvshowid: show_id, properties: [:season, :episode, :file, :lastplayed, :playcount])['episodes']
  return [] unless episodes
  Episodes.new(episodes)
end

.moviesObject



39
40
41
# File 'lib/kodi_dedup.rb', line 39

def self.movies
  Movies.new(KodiDedup.client.video_library.GetMovies(properties: [:file, :title, :playcount])['movies'])
end

.shellObject



51
52
53
# File 'lib/kodi_dedup.rb', line 51

def self.shell
  @shell ||= Thor::Shell::Color.new
end

.showsObject



29
30
31
# File 'lib/kodi_dedup.rb', line 29

def self.shows
  Shows.new(client.video_library.GetTVShows['tvshows'])
end