Merge pull request #253 from mcarlton00/cleanup-remove-libraries

Remove MEDIA lookup dict
This commit is contained in:
Abby 2020-03-29 22:45:11 +01:00 committed by GitHub
commit b37b903cca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 35 deletions

View file

@ -11,6 +11,7 @@ from kodi_six import xbmc
import downloader as server import downloader as server
import helper.xmls as xmls import helper.xmls as xmls
from objects import Movies, TVShows, MusicVideos, Music
from database import Database, get_sync, save_sync, jellyfin_db from database import Database, get_sync, save_sync, jellyfin_db
from helper import translate, settings, window, progress, dialog, LibraryException from helper import translate, settings, window, progress, dialog, LibraryException
from helper.utils import get_screensaver, set_screensaver from helper.utils import get_screensaver, set_screensaver
@ -261,7 +262,6 @@ class FullSync(object):
''' Process movies from a single library. ''' Process movies from a single library.
''' '''
Movies = self.library.media['Movies']
processed_ids = [] processed_ids = []
for items in server.get_items(library['Id'], "Movie", False, self.sync['RestorePoint'].get('params')): for items in server.get_items(library['Id'], "Movie", False, self.sync['RestorePoint'].get('params')):
@ -305,7 +305,6 @@ class FullSync(object):
''' Process tvshows and episodes from a single library. ''' Process tvshows and episodes from a single library.
''' '''
TVShows = self.library.media['TVShows']
processed_ids = [] processed_ids = []
for items in server.get_items(library['Id'], "Series", False, self.sync['RestorePoint'].get('params')): for items in server.get_items(library['Id'], "Series", False, self.sync['RestorePoint'].get('params')):
@ -358,7 +357,6 @@ class FullSync(object):
''' Process musicvideos from a single library. ''' Process musicvideos from a single library.
''' '''
MusicVideos = self.library.media['MusicVideos']
processed_ids = [] processed_ids = []
for items in server.get_items(library['Id'], "MusicVideo", False, self.sync['RestorePoint'].get('params')): for items in server.get_items(library['Id'], "MusicVideo", False, self.sync['RestorePoint'].get('params')):
@ -401,8 +399,6 @@ class FullSync(object):
''' Process artists, album, songs from a single library. ''' Process artists, album, songs from a single library.
''' '''
Music = self.library.media['Music']
with self.library.music_database_lock: with self.library.music_database_lock:
with Database('music') as musicdb: with Database('music') as musicdb:
with Database('jellyfin') as jellyfindb: with Database('jellyfin') as jellyfindb:
@ -462,8 +458,6 @@ class FullSync(object):
''' Process all boxsets. ''' Process all boxsets.
''' '''
Movies = self.library.media['Movies']
for items in server.get_items(library_id, "BoxSet", False, self.sync['RestorePoint'].get('params')): for items in server.get_items(library_id, "BoxSet", False, self.sync['RestorePoint'].get('params')):
with self.video_database_locks() as (videodb, jellyfindb): with self.video_database_locks() as (videodb, jellyfindb):
@ -483,8 +477,6 @@ class FullSync(object):
''' Delete all exisitng boxsets and re-add. ''' Delete all exisitng boxsets and re-add.
''' '''
Movies = self.library.media['Movies']
with self.video_database_locks() as (videodb, jellyfindb): with self.video_database_locks() as (videodb, jellyfindb):
obj = Movies(self.server, jellyfindb, videodb, self.direct_path) obj = Movies(self.server, jellyfindb, videodb, self.direct_path)
obj.boxsets_reset() obj.boxsets_reset()
@ -496,7 +488,6 @@ class FullSync(object):
''' Remove library by their id from the Kodi database. ''' Remove library by their id from the Kodi database.
''' '''
MEDIA = self.library.MEDIA
direct_path = self.library.direct_path direct_path = self.library.direct_path
with Database('jellyfin') as jellyfindb: with Database('jellyfin') as jellyfindb:
@ -536,18 +527,17 @@ class FullSync(object):
dialog.update(int((float(count) / float(len(items)) * 100)), heading="%s: %s" % (translate('addon_name'), library[0])) dialog.update(int((float(count) / float(len(items)) * 100)), heading="%s: %s" % (translate('addon_name'), library[0]))
count += 1 count += 1
else: else:
# from mcarlton: I'm not sure what triggers this. default_args = (self.server, jellyfindb, kodidb, direct_path)
# I've added and removed every media type except
# for music videos (because i don't have any) and
# can't find it, but I'm not comfortable
# removing it right now
LOG.info('Triggered the mystery function')
LOG.debug('Mystery function item type: {}'.format(items[0][1]))
obj = MEDIA[items[0][1]](self.server, jellyfindb, kodidb, direct_path).remove
for item in items: for item in items:
if item[1] in ('Series', 'Season', 'Episode'):
TVShows(*default_args).remove(item[0])
elif item[1] in ('Movie', 'BoxSet'):
Movies(*default_args).remove(item[0])
elif item[1] in ('MusicAlbum', 'MusicArtist', 'AlbumArtist', 'Audio'):
Music(*default_args).remove(item[0])
elif item[1] == 'MusicVideo':
MusicVideos(*default_args).remove(item[0])
obj(item[0])
dialog.update(int((float(count) / float(len(items)) * 100)), heading="%s: %s" % (translate('addon_name'), library[0])) dialog.update(int((float(count) / float(len(items)) * 100)), heading="%s: %s" % (translate('addon_name'), library[0]))
count += 1 count += 1

View file

@ -25,18 +25,6 @@ from jellyfin import Jellyfin
LOG = logging.getLogger("JELLYFIN." + __name__) LOG = logging.getLogger("JELLYFIN." + __name__)
LIMIT = int(settings('limitIndex') or 15) LIMIT = int(settings('limitIndex') or 15)
DTHREADS = int(settings('limitThreads') or 3) DTHREADS = int(settings('limitThreads') or 3)
MEDIA = {
'Movie': Movies,
'BoxSet': Movies,
'MusicVideo': MusicVideos,
'Series': TVShows,
'Season': TVShows,
'Episode': TVShows,
'MusicAlbum': Music,
'MusicArtist': Music,
'AlbumArtist': Music,
'Audio': Music
}
################################################################################################## ##################################################################################################
@ -53,9 +41,6 @@ class Library(threading.Thread):
def __init__(self, monitor): def __init__(self, monitor):
self.media = {'Movies': Movies, 'TVShows': TVShows, 'MusicVideos': MusicVideos, 'Music': Music}
self.MEDIA = MEDIA
self.direct_path = settings('useDirectPaths') == "1" self.direct_path = settings('useDirectPaths') == "1"
self.progress_display = int(settings('syncProgress') or 50) self.progress_display = int(settings('syncProgress') or 50)
self.monitor = monitor self.monitor = monitor