Source code for flexget.plugins.modify.extension
from loguru import logger
from flexget import plugin
from flexget.event import event
logger = logger.bind(name='extension')
[docs]
class ModifyExtension:
"""Allows specifying file extension explicitly when all other built-in detection mechanisms fail.
Example:
extension: nzb
"""
schema = {'type': ['string', 'number']}
[docs]
def on_task_modify(self, task, config):
ext = str(config)
ext = ext.removeprefix('.')
for entry in task.entries:
logger.debug('`{}` filename is `{}`', entry['title'], entry.get('filename', 'N/A'))
entry['filename'] = '{}.{}'.format(entry.get('filename', entry['title']), ext)
logger.debug('filename is now `{}`', entry['filename'])
[docs]
@event('plugin.register')
def register_plugin():
plugin.register(ModifyExtension, 'extension', api_ver=2)