[REF] services: moved the object service to openerp.service.model.
bzr revid: vmt@openerp.com-20130130150207-fz1ueou8prul05qa
This commit is contained in:
parent
8d23b8a63a
commit
93cdfeb86a
|
@ -113,6 +113,8 @@ class ExportService(object):
|
|||
|
||||
@classmethod
|
||||
def getService(cls,name):
|
||||
if name == 'object':
|
||||
return openerp.service.model
|
||||
if name == 'db':
|
||||
return openerp.service.db
|
||||
return cls._services[name]
|
||||
|
|
|
@ -9,8 +9,25 @@ import openerp
|
|||
from openerp.tools.translate import translate
|
||||
from openerp.osv.orm import except_orm
|
||||
|
||||
import security
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
def dispatch(method, params):
|
||||
(db, uid, passwd ) = params[0:3]
|
||||
threading.current_thread().uid = uid
|
||||
params = params[3:]
|
||||
if method == 'obj_list':
|
||||
raise NameError("obj_list has been discontinued via RPC as of 6.0, please query ir.model directly!")
|
||||
if method not in ['execute', 'execute_kw', 'exec_workflow']:
|
||||
raise NameError("Method not available %s" % method)
|
||||
security.check(db,uid,passwd)
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(db)
|
||||
fn = globals()[method]
|
||||
res = fn(db, uid, *params)
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(db)
|
||||
return res
|
||||
|
||||
def check(f):
|
||||
@wraps(f)
|
||||
def wrapper(dbname, *args, **kwargs):
|
||||
|
|
|
@ -255,26 +255,6 @@ GNU Public Licence.
|
|||
return sql_db.sql_counter
|
||||
|
||||
|
||||
class objects_proxy(netsvc.ExportService):
|
||||
def __init__(self, name="object"):
|
||||
netsvc.ExportService.__init__(self,name)
|
||||
|
||||
def dispatch(self, method, params):
|
||||
(db, uid, passwd ) = params[0:3]
|
||||
threading.current_thread().uid = uid
|
||||
params = params[3:]
|
||||
if method == 'obj_list':
|
||||
raise NameError("obj_list has been discontinued via RPC as of 6.0, please query ir.model directly!")
|
||||
if method not in ['execute', 'execute_kw', 'exec_workflow']:
|
||||
raise NameError("Method not available %s" % method)
|
||||
security.check(db,uid,passwd)
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(db)
|
||||
fn = getattr(openerp.service.model, method)
|
||||
res = fn(db, uid, *params)
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(db)
|
||||
return res
|
||||
|
||||
|
||||
#
|
||||
# TODO: set a maximum report number per user to avoid DOS attacks
|
||||
#
|
||||
|
@ -413,7 +393,6 @@ class report_spool(netsvc.ExportService):
|
|||
|
||||
def start_service():
|
||||
common()
|
||||
objects_proxy()
|
||||
report_spool()
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue