Yann Weber
70ff2fcedc
Solves #124 + discover-plugin argparse enhancement
No need of -d flag to specifiy directories
8 anni fa
Yann Weber
1453cf49f9
Plug together Ui <-> client <-> session <-> plugin + bugfixes
Created a new class LodelSession to handle session datas
Created an automatic wrapper to acces to session handler plugin function throug SessionHandlerPlugin class methods
Bugfixes done for plugins. The plugin type is store in __plugin_type___ and not in __type__
8 anni fa
Yann Weber
eae2f83891
Connection between WebUi Client & Session started
8 anni fa
Yann Weber
a82a75dfc6
Bugfixes in lodel_admin init_db action
8 anni fa
Yann Weber
180e41a657
Forgotten file
8 anni fa
Yann Weber
585cc61dff
Quick & dirty interfacePlugin implementation + small import bugfixes
Import bugfixes in settings validator. Hooks must be imported in validatore definition to avoid circular import failure
8 anni fa
Roland Haroutiounian
3700b4cc83
Syntax fix on plugins.py module
8 anni fa
Yann Weber
76e386e321
Implements SessionHandlerPlugin ExtensionsPlugin + settings preload
Implements both Plugin child classes handling extensions and session handling.
Modified the settings plugin preload piece of code. It is now adapted to the new plugins organisation.
Each Plugin child classes provides a confspec indicating where the plugin list is stored in configuration.
8 anni fa
Yann Weber
6a18cf7fa2
Begin implementation of new plugin list retrieval
8 anni fa
m.orban
e4f0bd2358
Debug Metaclass to get child from Plugin Class
8 anni fa
m.orban
22eae9d5ec
Added metaclass to get a list of child Class from Plugin Base class
8 anni fa
Yann Weber
e176693574
Add plugin's discover cache consistency check in Plugin class cache getter
8 anni fa
Yann Weber
34c1784907
Enable factory in Plugin
- now plugin is able to instanciate using the good child class
- the discover cache now contains plugin's type
8 anni fa
Yann Weber
4627ae17e5
DatasourcePlugin class implementation
- DatasourcePlugin implmentation as child class of lodel.plugin.plugins.Plugin
- moved methods about datasource initialisation from LeObject to DatasourcePlugin ( _init_datasource(), plugin_name(), _get_ds_connection_conf() ...)
8 anni fa
m.orban
9ae7855c50
Modified singleton sessionHandler: from __new__ to __init__ checked
8 anni fa
m.orban
0e7b5828fa
Added a settings validator for plugin
8 anni fa
m.orban
81e732a6af
Added inheritance class SessionHandler (Plugin is the base-class
8 anni fa
Yann Weber
7723ab5b16
lodel_admin.py options and output enhancement
- add a -L options to list availables actions
8 anni fa
Yann Weber
cddf221988
Lodel2 script helper class implementation (#122 )
- Allow to extend easily lodel_admin.py script.
- Writtent first lodel_admin.py action : discover-plugins
8 anni fa
Yann Weber
3299dc549a
lodel.plugin.plugins.Plugin log messages enhancement
8 anni fa
Yann Weber
16ef4d9d3f
Settings started detection mechanism enhancement + early log message creation (for plugins & settings)
8 anni fa
Yann Weber
82e9d3c9aa
Allow early utilisation of lodel.logger ( #121 )
http://redmine.labocleo.org/issues/121
8 anni fa
Yann Weber
3395f76238
Updated instance admin script and Makefile to be able to run plugins discover + webui upgrade
8 anni fa
Yann Weber
29e825e6ce
New plugin information & load procedure implementation ( see #13 )
8 anni fa
m.orban
c7278e65b7
discover_plugin() function with the is_plugin_dir() class Method checking
8 anni fa
m.orban
726e86e4b1
Rewrited discover_plugin function whithout a os.walk modules
8 anni fa
m.orban
6787ec1cc8
Added a discover_plugin function to browse plugin directory
8 anni fa
Yann Weber
497d31c6b2
Deleted wrong import
8 anni fa
Yann Weber
6e978a4230
Forgotten exceptions file
8 anni fa
Yann Weber
748850cf33
Adding a core hook that generate debug log listing registered hooks
8 anni fa
Yann Weber
2436d397f8
Update in plugins.py
8 anni fa
Yann Weber
36bded3051
Add the possibility to add custom methods ton LeAPI dynamic objects using plugin
8 anni fa
Yann Weber
9a82936fbf
Datasources plugins enhancement and loading bugfixes
- now we have a LodelHook to trigger migration handlers loading
- datasources initialization in dyncode is now trigger by a hook (lodel2_plugin_loaded)
- datasources loading by dyncode is better
8 anni fa
Yann Weber
785a208d07
LodelHook logging enhancement
8 anni fa
Yann Weber
83afc6b6dd
Deleted datasources plugins and add a settings for datasources declaration
- now datasources are declared with two conf keys : read_only and identifier
- the old datasources plugin hook is now declared in lodel/plugin/core_hooks.py. This file is imported after lodel/plugin/hooks.py in the loader.py
8 anni fa
prieto
413d8e7570
Remove useless changes in PluginErro
8 anni fa
prieto
e01c444436
Remove print(...)
8 anni fa
prieto
73d911f091
Adding a new class methos in plugins.pyto clear the class variables
Adding tests for the Plugin class
8 anni fa
Yann Weber
75c2a81225
Now plugins can define dependencies.
8 anni fa
Yann Weber
3adad7bb02
Now plugins can check EM and invalidate activation
They have to implement a _activate() method in their __init__.py file
8 anni fa
Yann Weber
23e29b4336
Add _activate check when plugins are loaded
8 anni fa
Yann Weber
8204f97fc5
Documentin Plugin + update pickle file example
8 anni fa
Yann Weber
61f19772fb
New way to handles plugin
- renamed Plugins class to Plugin
- an instance represent a loaded plugin
- classmethod allows to preload & load plugins
8 anni fa
Yann Weber
84717328e3
Enhancement in datasources plugins handling
- now datasources are handled in LeObject child classes
- plugins module now have a method to retrieve a plugin module
8 anni fa
Yann Weber
5c8f46c51e
Updated webui plugin to enable standalone mode
To start in standalone uwsgi set lodel2.webui.standalone=True in conf file and start loader.py
8 anni fa
Yann Weber
a312cbc4d9
First version of lodel2 instance creation script
8 anni fa
Yann Weber
8659e91f43
Fixing settings & logger
8 anni fa
Yann Weber
e0717c9317
More comments + a script to list default settings validators
8 anni fa
Yann Weber
c5971d9590
Updated comments (and deleting space between ## and @brief )
8 anni fa
Yann Weber
c0c5d23adb
Commit with comments, code clean etc.
8 anni fa