[REF] netsvc: LocalService() can be a function.
bzr revid: vmt@openerp.com-20110728122856-ne9299uqh21xpabs
This commit is contained in:
parent
d8db9e6b1d
commit
df555e35c1
|
@ -94,25 +94,8 @@ class Service(object):
|
||||||
else:
|
else:
|
||||||
raise
|
raise
|
||||||
|
|
||||||
class LocalService(object):
|
def LocalService(name):
|
||||||
""" Proxy for local services.
|
return Service._services[name]
|
||||||
|
|
||||||
Any instance of this class will behave like the single instance
|
|
||||||
of Service(name)
|
|
||||||
"""
|
|
||||||
__logger = logging.getLogger('service')
|
|
||||||
def __init__(self, name):
|
|
||||||
self.__name = name
|
|
||||||
try:
|
|
||||||
self._service = Service._services[name]
|
|
||||||
for method_name, method_definition in self._service._methods.items():
|
|
||||||
setattr(self, method_name, method_definition)
|
|
||||||
except KeyError, keyError:
|
|
||||||
self.__logger.error('This service does not exist: %s' % (str(keyError),) )
|
|
||||||
raise
|
|
||||||
|
|
||||||
def __call__(self, method, *params):
|
|
||||||
return getattr(self, method)(*params)
|
|
||||||
|
|
||||||
class ExportService(object):
|
class ExportService(object):
|
||||||
""" Proxy for exported services.
|
""" Proxy for exported services.
|
||||||
|
|
Loading…
Reference in New Issue