diff options
-rw-r--r-- | ipalib/plugable.py | 11 | ||||
-rwxr-xr-x | lite-xmlrpc.py | 2 |
2 files changed, 11 insertions, 2 deletions
diff --git a/ipalib/plugable.py b/ipalib/plugable.py index 2f86fa22..d10ff797 100644 --- a/ipalib/plugable.py +++ b/ipalib/plugable.py @@ -351,6 +351,15 @@ class Plugin(ReadOnly): assert self.__api is None, 'set_api() can only be called once' assert api is not None, 'set_api() argument cannot be None' self.__api = api + if not isinstance(api, API): + return + for name in api: + assert not hasattr(self, name) + setattr(self, name, api[name]) + for name in ('env', 'context', 'log'): + if hasattr(api, name): + assert not hasattr(self, name) + setattr(self, name, getattr(api, name)) def __repr__(self): """ @@ -768,7 +777,7 @@ class API(DictProxy): self.env.log, self.env.verbose, ) - object.__setattr__(self, 'logger', logger) + object.__setattr__(self, 'log', logger) def load_plugins(self): """ diff --git a/lite-xmlrpc.py b/lite-xmlrpc.py index 3483ceb5..988cc2ba 100755 --- a/lite-xmlrpc.py +++ b/lite-xmlrpc.py @@ -147,7 +147,7 @@ if __name__ == '__main__': api.bootstrap(context='server') api.load_plugins() api.finalize() - logger = api.logger + logger = api.log # Set up the server XMLRPCServer = StoppableXMLRPCServer( |