Beispiel #1
0
    def plugins(self, phase=None):
        """Get currently enabled plugins.

        :param string phase:
          Optional, limits to plugins currently configured on given phase, sorted in phase order.
        :return:
          An iterator over configured :class:`flexget.plugin.PluginInfo` instances enabled on this task.
        """
        if phase:
            plugins = sorted(get_plugins(phase=phase), key=lambda p: p.phase_handlers[phase], reverse=True)
        else:
            plugins = all_plugins.itervalues()
        return (p for p in plugins if p.name in self.config or p.builtin)
Beispiel #2
0
    def plugins(self, phase=None):
        """Get currently enabled plugins.

        :param string phase:
          Optional, limits to plugins currently configured on given phase, sorted in phase order.
        :return:
          An iterator over configured :class:`flexget.plugin.PluginInfo` instances enabled on this task.
        """
        if phase:
            plugins = sorted(get_plugins(phase=phase), key=lambda p: p.phase_handlers[phase], reverse=True)
        else:
            plugins = all_plugins.itervalues()
        return (p for p in plugins if p.name in self.config or p.builtin)
Beispiel #3
0
 def validator(self):
     from flexget import validator
     root = validator.factory('list')
     key_validator = validator.factory('regexp_match',
                                       message='If statements cannot contain `__`,  `try` or `lambda` statements')
     key_validator.reject(r'.*?(__|try\s*:|lambda)')
     key_validator.accept('.')
     action = root.accept('dict').accept_valid_keys('root', key_validator=key_validator)
     action.accept('choice').accept_choices(['accept', 'reject', 'fail'])
     filter_action = action.accept('dict')
     # Build a dict validator that accepts all api > 2 plugins except input plugins.
     for plugin in all_plugins.itervalues():
         if plugin.api_ver > 1 and hasattr(plugin.instance, 'validator') and 'input' not in plugin.phase_handlers:
             filter_action.accept(plugin.instance.validator, key=plugin.name)
     return root
Beispiel #4
0
def groups():
    # TODO: There should probably be a function in plugin.py to get this
    groups = set()
    for plugin in plugins.itervalues():
        groups.update(plugin.get('groups'))
    return jsonify(groups=list(groups))
Beispiel #5
0
def all_plugins():
    return jsonify(plugins=plugin_infos(plugins.itervalues()))
Beispiel #6
0
def groups():
    # TODO: There should probably be a function in plugin.py to get this
    groups = set()
    for plugin in plugins.itervalues():
        groups.update(plugin.get('groups'))
    return jsonify(groups=list(groups))
Beispiel #7
0
def all_plugins():
    return jsonify(plugins=plugin_infos(plugins.itervalues()))
Beispiel #8
0
def all_builtins():
    """Helper function to return an iterator over all builtin plugins."""
    return (plugin for plugin in plugins.itervalues() if plugin.builtin)
Beispiel #9
0
def all_builtins():
    """Helper function to return an iterator over all builtin plugins."""
    return (plugin for plugin in plugins.itervalues() if plugin.builtin)