Merge pull request #1568 into feature/file-excluded-file-exts
This commit is contained in:
commit
3d60acd8b2
@ -22,6 +22,7 @@ class Extension(ext.Extension):
|
||||
def get_config_schema(self):
|
||||
schema = super(Extension, self).get_config_schema()
|
||||
schema['media_dirs'] = config.List(optional=True)
|
||||
schema['excluded_file_extensions'] = config.List(optional=True)
|
||||
schema['show_dotfiles'] = config.Boolean(optional=True)
|
||||
schema['follow_symlinks'] = config.Boolean(optional=True)
|
||||
schema['metadata_timeout'] = config.Integer(optional=True)
|
||||
|
||||
@ -6,3 +6,6 @@ media_dirs =
|
||||
show_dotfiles = false
|
||||
follow_symlinks = false
|
||||
metadata_timeout = 1000
|
||||
excluded_file_extensions =
|
||||
.jpg
|
||||
.jpeg
|
||||
|
||||
@ -36,6 +36,12 @@ class FileLibraryProvider(backend.LibraryProvider):
|
||||
self._media_dirs = list(self._get_media_dirs(config))
|
||||
self._follow_symlinks = config['file']['follow_symlinks']
|
||||
self._show_dotfiles = config['file']['show_dotfiles']
|
||||
self._excluded_file_extensions = \
|
||||
config['file']['excluded_file_extensions']
|
||||
self._excluded_file_extensions = tuple(
|
||||
bytes(file_ext.lower()) for file_ext in
|
||||
self._excluded_file_extensions)
|
||||
|
||||
self._scanner = scan.Scanner(
|
||||
timeout=config['file']['metadata_timeout'])
|
||||
|
||||
@ -60,6 +66,10 @@ class FileLibraryProvider(backend.LibraryProvider):
|
||||
if not self._show_dotfiles and dir_entry.startswith(b'.'):
|
||||
continue
|
||||
|
||||
if self._excluded_file_extensions and \
|
||||
dir_entry.endswith(self._excluded_file_extensions):
|
||||
continue
|
||||
|
||||
if os.path.islink(child_path) and not self._follow_symlinks:
|
||||
logger.debug('Ignoring symlink: %s', uri)
|
||||
continue
|
||||
|
||||
Loading…
Reference in New Issue
Block a user