Package entropy :: Module core :: Class SystemSettingsPlugin

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.

Instance Methods
 
__init__(self, plugin_id, helper_interface)
SystemSettingsPlugin constructor.
source code
 
get_id(self)
Returns the unique plugin id passed at construction time.
source code
 
add_parser(self, parser_id, parser_callable)
You must call this method in order to add your custom parsers to the plugin.
source code
 
parse(self, system_settings_instance)
This method is called by SystemSettings instance when building its settings metadata.
source code
Method Details

__init__(self, plugin_id, helper_interface)
(Constructor)

source code 

SystemSettingsPlugin constructor.

@param plugin_id -- plugin identifier, must be unique
@type plugin_id basestring
@param helper_interface -- any Python instance that could
    be of help to your parsers
@type handler_instance instance

get_id(self)

source code 

Returns the unique plugin id passed at construction time.

@return 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 basestring
@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

parse(self, system_settings_instance)

source code 

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.

@param system_settings_instance -- SystemSettings instance @type system_settings_instance SystemSettings instance