[REM] openerp.http: discard deprecated methods and properties
This commit is contained in:
@@ -747,7 +747,7 @@ class Session(http.Controller):
|
||||
:return: A key identifying the saved action.
|
||||
:rtype: integer
|
||||
"""
|
||||
return request.httpsession.save_action(the_action)
|
||||
return request.session.save_action(the_action)
|
||||
|
||||
@http.route('/web/session/get_session_action', type='json', auth="user")
|
||||
def get_session_action(self, key):
|
||||
@@ -760,7 +760,7 @@ class Session(http.Controller):
|
||||
:return: The saved action or None.
|
||||
:rtype: anything
|
||||
"""
|
||||
return request.httpsession.get_action(key)
|
||||
return request.session.get_action(key)
|
||||
|
||||
@http.route('/web/session/check', type='json', auth="user")
|
||||
def check(self):
|
||||
|
||||
@@ -23,7 +23,7 @@ class Http(models.AbstractModel):
|
||||
display_switch_company_menu = user.has_group('base.group_multi_company') and len(user.company_ids) > 1
|
||||
version_info = odoo.service.common.exp_version()
|
||||
return {
|
||||
"session_id": request.session_id,
|
||||
"session_id": request.session.sid,
|
||||
"uid": request.session.uid,
|
||||
"is_admin": request.env.user.has_group('base.group_system'),
|
||||
"is_superuser": request.env.user._is_superuser(),
|
||||
|
||||
@@ -247,9 +247,9 @@ class WebsiteBlog(http.Controller):
|
||||
}
|
||||
response = request.render("website_blog.blog_post_complete", values)
|
||||
|
||||
request.session[request.session_id] = request.session.get(request.session_id, [])
|
||||
if not (blog_post.id in request.session[request.session_id]):
|
||||
request.session[request.session_id].append(blog_post.id)
|
||||
request.session[request.session.sid] = request.session.get(request.session.sid, [])
|
||||
if not (blog_post.id in request.session[request.session.sid]):
|
||||
request.session[request.session.sid].append(blog_post.id)
|
||||
# Increase counter
|
||||
blog_post.sudo().write({
|
||||
'visits': blog_post.visits+1,
|
||||
|
||||
@@ -22,7 +22,7 @@ class WebsiteSlides(http.Controller):
|
||||
}
|
||||
|
||||
def _set_viewed_slide(self, slide, view_mode):
|
||||
slide_key = '%s_%s' % (view_mode, request.session_id)
|
||||
slide_key = '%s_%s' % (view_mode, request.session.sid)
|
||||
viewed_slides = request.session.setdefault(slide_key, list())
|
||||
if slide.id not in viewed_slides:
|
||||
if view_mode == 'slide':
|
||||
|
||||
+1
-200
@@ -185,7 +185,6 @@ class WebRequest(object):
|
||||
def __init__(self, httprequest):
|
||||
self.httprequest = httprequest
|
||||
self.httpresponse = None
|
||||
self.httpsession = httprequest.session
|
||||
self.disable_db = False
|
||||
self.uid = None
|
||||
self.endpoint = None
|
||||
@@ -342,18 +341,6 @@ class WebRequest(object):
|
||||
warnings.warn('please use request.registry and request.cr directly', DeprecationWarning)
|
||||
yield (self.registry, self.cr)
|
||||
|
||||
@lazy_property
|
||||
def session_id(self):
|
||||
"""
|
||||
opaque identifier for the :class:`OpenERPSession` instance of
|
||||
the current request
|
||||
|
||||
.. deprecated:: 8.0
|
||||
|
||||
Use the ``sid`` attribute on :attr:`.session`
|
||||
"""
|
||||
return self.session.sid
|
||||
|
||||
@property
|
||||
def registry(self):
|
||||
"""
|
||||
@@ -364,7 +351,7 @@ class WebRequest(object):
|
||||
|
||||
use :attr:`.env`
|
||||
"""
|
||||
return openerp.modules.registry.RegistryManager.get(self.db) if self.db else None
|
||||
return openerp.registry(self.db) if self.db else None
|
||||
|
||||
@property
|
||||
def db(self):
|
||||
@@ -374,16 +361,6 @@ class WebRequest(object):
|
||||
"""
|
||||
return self.session.db if not self.disable_db else None
|
||||
|
||||
@lazy_property
|
||||
def httpsession(self):
|
||||
""" HTTP session data
|
||||
|
||||
.. deprecated:: 8.0
|
||||
|
||||
Use :attr:`.session` instead.
|
||||
"""
|
||||
return self.session
|
||||
|
||||
def csrf_token(self, time_limit=3600):
|
||||
""" Generates and returns a CSRF token for the current session
|
||||
|
||||
@@ -741,16 +718,6 @@ def to_jsonable(o):
|
||||
return tmp
|
||||
return ustr(o)
|
||||
|
||||
def jsonrequest(f):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use the :func:`~openerp.http.route` decorator instead.
|
||||
"""
|
||||
base = f.__name__.lstrip('/')
|
||||
if f.__name__ == "index":
|
||||
base = ""
|
||||
return route([base, base + "/<path:_ignored_path>"], type="json", auth="user", combine=True)(f)
|
||||
|
||||
class HttpRequest(WebRequest):
|
||||
""" Handler for the ``http`` request type.
|
||||
|
||||
@@ -894,17 +861,6 @@ more details.
|
||||
"""
|
||||
return werkzeug.exceptions.NotFound(description)
|
||||
|
||||
def httprequest(f):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
|
||||
Use the :func:`~openerp.http.route` decorator instead.
|
||||
"""
|
||||
base = f.__name__.lstrip('/')
|
||||
if f.__name__ == "index":
|
||||
base = ""
|
||||
return route([base, base + "/<path:_ignored_path>"], type="http", auth="user", combine=True)(f)
|
||||
|
||||
#----------------------------------------------------------
|
||||
# Controller and route registration
|
||||
#----------------------------------------------------------
|
||||
@@ -1028,57 +984,6 @@ class AuthenticationError(Exception):
|
||||
class SessionExpiredException(Exception):
|
||||
pass
|
||||
|
||||
class Service(object):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use :func:`dispatch_rpc` instead.
|
||||
"""
|
||||
def __init__(self, session, service_name):
|
||||
self.session = session
|
||||
self.service_name = service_name
|
||||
|
||||
def __getattr__(self, method):
|
||||
def proxy_method(*args):
|
||||
result = dispatch_rpc(self.service_name, method, args)
|
||||
return result
|
||||
return proxy_method
|
||||
|
||||
class Model(object):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use the registry and cursor in :data:`request` instead.
|
||||
"""
|
||||
def __init__(self, session, model):
|
||||
self.session = session
|
||||
self.model = model
|
||||
self.proxy = self.session.proxy('object')
|
||||
|
||||
def __getattr__(self, method):
|
||||
self.session.assert_valid()
|
||||
def proxy(*args, **kw):
|
||||
# Can't provide any retro-compatibility for this case, so we check it and raise an Exception
|
||||
# to tell the programmer to adapt his code
|
||||
if not request.db or not request.uid or self.session.db != request.db \
|
||||
or self.session.uid != request.uid:
|
||||
raise Exception("Trying to use Model with badly configured database or user.")
|
||||
|
||||
if method.startswith('_'):
|
||||
raise Exception("Access denied")
|
||||
mod = request.registry[self.model]
|
||||
meth = getattr(mod, method)
|
||||
# make sure to instantiate an environment
|
||||
cr = request.env.cr
|
||||
result = meth(cr, request.uid, *args, **kw)
|
||||
# reorder read
|
||||
if method == "read":
|
||||
if isinstance(result, list) and len(result) > 0 and "id" in result[0]:
|
||||
index = {}
|
||||
for r in result:
|
||||
index[r['id']] = r
|
||||
result = [index[x] for x in args[0] if x in index]
|
||||
return result
|
||||
return proxy
|
||||
|
||||
class OpenERPSession(werkzeug.contrib.sessions.Session):
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.inited = False
|
||||
@@ -1186,110 +1091,6 @@ class OpenERPSession(werkzeug.contrib.sessions.Session):
|
||||
|
||||
context['lang'] = lang or 'en_US'
|
||||
|
||||
# Deprecated to be removed in 9
|
||||
|
||||
"""
|
||||
Damn properties for retro-compatibility. All of that is deprecated,
|
||||
all of that.
|
||||
"""
|
||||
@property
|
||||
def _db(self):
|
||||
return self.db
|
||||
@_db.setter
|
||||
def _db(self, value):
|
||||
self.db = value
|
||||
@property
|
||||
def _uid(self):
|
||||
return self.uid
|
||||
@_uid.setter
|
||||
def _uid(self, value):
|
||||
self.uid = value
|
||||
@property
|
||||
def _login(self):
|
||||
return self.login
|
||||
@_login.setter
|
||||
def _login(self, value):
|
||||
self.login = value
|
||||
@property
|
||||
def _password(self):
|
||||
return self.password
|
||||
@_password.setter
|
||||
def _password(self, value):
|
||||
self.password = value
|
||||
|
||||
def send(self, service_name, method, *args):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use :func:`dispatch_rpc` instead.
|
||||
"""
|
||||
return dispatch_rpc(service_name, method, args)
|
||||
|
||||
def proxy(self, service):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use :func:`dispatch_rpc` instead.
|
||||
"""
|
||||
return Service(self, service)
|
||||
|
||||
def assert_valid(self, force=False):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use :meth:`check_security` instead.
|
||||
|
||||
Ensures this session is valid (logged into the openerp server)
|
||||
"""
|
||||
if self.uid and not force:
|
||||
return
|
||||
# TODO use authenticate instead of login
|
||||
self.uid = self.proxy("common").login(self.db, self.login, self.password)
|
||||
if not self.uid:
|
||||
raise AuthenticationError("Authentication failure")
|
||||
|
||||
def ensure_valid(self):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use :meth:`check_security` instead.
|
||||
"""
|
||||
if self.uid:
|
||||
try:
|
||||
self.assert_valid(True)
|
||||
except Exception:
|
||||
self.uid = None
|
||||
|
||||
def execute(self, model, func, *l, **d):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use the registry and cursor in :data:`request` instead.
|
||||
"""
|
||||
model = self.model(model)
|
||||
r = getattr(model, func)(*l, **d)
|
||||
return r
|
||||
|
||||
def exec_workflow(self, model, id, signal):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use the registry and cursor in :data:`request` instead.
|
||||
"""
|
||||
self.assert_valid()
|
||||
r = self.proxy('object').exec_workflow(self.db, self.uid, self.password, model, signal, id)
|
||||
return r
|
||||
|
||||
def model(self, model):
|
||||
"""
|
||||
.. deprecated:: 8.0
|
||||
Use the registry and cursor in :data:`request` instead.
|
||||
|
||||
Get an RPC proxy for the object ``model``, bound to this session.
|
||||
|
||||
:param model: an OpenERP model name
|
||||
:type model: str
|
||||
:rtype: a model object
|
||||
"""
|
||||
if not self.db:
|
||||
raise SessionExpiredException("Session expired")
|
||||
|
||||
return Model(self, model)
|
||||
|
||||
def save_action(self, action):
|
||||
"""
|
||||
This method store an action object in the session and returns an integer
|
||||
|
||||
Reference in New Issue
Block a user