Class SystemSettingsPlugin
source code
This is a plugin base class for all SystemSettings plugins. It allows
to add extra parsers (though metadata) to SystemSettings. Just inherit
from this class and call add_parser to add your custom parsers.
SystemSettings will call the parse method, as explained below.
Sample code:
>>>
>>> from entropy.core import SystemSettings, SystemSettingsPlugin
>>> system_settings = SystemSettings()
>>> class MyPlugin(SystemSettingsPlugin):
>>> pass
>>> my_plugin = MyPlugin('mystuff', None)
>>> def myparsing_function():
>>> return {'abc': 1 }
>>> my_plugin.add_parser('parser_no_1', myparsing_function)
>>> system_settings.add_plugin(my_plugin)
>>> print(system_settings['mystuff']['parser_no_1'])
{'abc': 1 }
>>>
>>> system_settings.remove_plugin('mystuff')
>>> print(system_settings.get('mystuff'))
None
|
None
|
|
|
string
|
|
|
|
add_parser(self,
parser_id,
parser_callable)
You must call this method in order to add your custom
parsers to the plugin. |
source code
|
|
|
None
|
parse(self,
system_settings_instance)
This method is called by SystemSettings instance when building its
settings metadata. |
source code
|
|
|
None
|
post_setup(self,
system_settings_instance)
This method is called by SystemSettings instance after having built
all the SystemSettings metadata. |
source code
|
|
__init__(self,
plugin_id,
helper_interface)
(Constructor)
| source code
|
SystemSettingsPlugin constructor.
- Parameters:
plugin_id (string) - plugin identifier, must be unique
helper_interface - any Python object that could be of help to your parsers
handler_instance (Python object)
- Returns: None
- None
|
|
Returns the unique plugin id passed at construction time.
- Returns: string
- plugin identifier
|
add_parser(self,
parser_id,
parser_callable)
| source code
|
You must call this method in order to add your custom
parsers to the plugin.
Please note, if your parser method ends with "_parser"
it will be automatically added this way:
method: foo_parser
parser_id => foo
method: another_fabulous_parser
parser_id => another_fabulous
@param parser_id: parser identifier, must be unique
@type parser_id: string
@param parser_callable: any callable function which has
the following signature: callable(system_settings_instance)
can return True to stop further parsers calls
@type parser_callable: callable
@return: None
@rtype: None
|
|
This method is called by SystemSettings instance when building its
settings metadata.
Returned data from parser will be put into the SystemSettings dict
using plugin_id and parser_id keys. If returned data is None,
SystemSettings dict won't be changed.
- Parameters:
system_settings_instance (SystemSettings instance) - SystemSettings instance
- Returns: None
- None
|
|
This method is called by SystemSettings instance after having built
all the SystemSettings metadata. You can reimplement this and hook your
refinement code into this method.
- Parameters:
system_settings_instance (SystemSettings instance) - SystemSettings instance
- Returns: None
- None
|