projects
/
cascardo
/
ipsilon.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement change registration
[cascardo/ipsilon.git]
/
ipsilon
/
info
/
common.py
diff --git
a/ipsilon/info/common.py
b/ipsilon/info/common.py
index
725f0fa
..
4cd6663
100644
(file)
--- a/
ipsilon/info/common.py
+++ b/
ipsilon/info/common.py
@@
-1,16
+1,15
@@
-# Copyright (C) 2014 Ipsilon Project Contributors
-#
-# See the file named COPYING for the project license
+# Copyright (C) 2014 Ipsilon project Contributors, for license see COPYING
from ipsilon.util.log import Log
from ipsilon.util.plugin import PluginInstaller, PluginLoader
from ipsilon.util.log import Log
from ipsilon.util.plugin import PluginInstaller, PluginLoader
-from ipsilon.util.plugin import PluginObject, PluginConfig
+from ipsilon.util.plugin import PluginObject
+from ipsilon.util.config import ConfigHelper
-class InfoProviderBase(
PluginConfig
, PluginObject):
+class InfoProviderBase(
ConfigHelper
, PluginObject):
def __init__(self, *pargs):
def __init__(self, *pargs):
-
PluginConfig
.__init__(self)
+
ConfigHelper
.__init__(self)
PluginObject.__init__(self, *pargs)
def get_user_attrs(self, user):
PluginObject.__init__(self, *pargs)
def get_user_attrs(self, user):
@@
-64,7
+63,13
@@
class Info(Log):
if item not in plugins.available:
self.debug('Info Plugin %s not found' % item)
continue
if item not in plugins.available:
self.debug('Info Plugin %s not found' % item)
continue
- plugins.available[item].enable()
+ try:
+ plugins.available[item].enable()
+ except Exception as e: # pylint: disable=broad-except
+ while item in plugins.enabled:
+ plugins.enabled.remove(item)
+ self.debug("Info Plugin %s couldn't be enabled: %s" % (
+ item, str(e)))
def get_user_attrs(self, user, requested=None):
plugins = self._site[FACILITY].available
def get_user_attrs(self, user, requested=None):
plugins = self._site[FACILITY].available
@@
-94,10
+99,13
@@
class InfoProviderInstaller(object):
def install_args(self, group):
raise NotImplementedError
def install_args(self, group):
raise NotImplementedError
- def
unconfigure(self, opt
s):
+ def
validate_args(self, arg
s):
return
return
- def configure(self, opts):
+ def unconfigure(self, opts, changes):
+ return
+
+ def configure(self, opts, changes):
raise NotImplementedError
raise NotImplementedError