[IMP] web.common.sesion local backend part2

bzr revid: al@openerp.com-20110924165705-c0wd7hcup9ib74ry
This commit is contained in:
Antony Lesuisse 2011-09-24 18:57:05 +02:00
parent 0a02a38739
commit c845bef206
3 changed files with 15 additions and 8 deletions

View File

@ -2,16 +2,18 @@ import common
import controllers
import common.dispatch
import logging
import optparse
_logger = logging.getLogger(__name__)
class Options(object):
pass
def wsgi_postload():
import openerp.wsgi
import os
import tempfile
_logger.info("embedded mode")
class Options(object):
pass
o = Options()
o.dbfilter = '.*'
o.session_storage = os.path.join(tempfile.gettempdir(), "oe-sessions")

View File

@ -379,7 +379,7 @@ class Model(object):
records = self.read(record_ids, fields or [], context or {})
return records
def get_connector(hostname, protocol="xmlrpc", port="auto"):
def get_connector(hostname=None, protocol="xmlrpc", port="auto"):
"""
A shortcut method to easily create a connector to a remote server using XMLRPC or NetRPC.
@ -398,7 +398,7 @@ def get_connector(hostname, protocol="xmlrpc", port="auto"):
else:
raise ValueError("You must choose xmlrpc or netrpc or local")
def get_connection(hostname, protocol="xmlrpc", port='auto', database=None,
def get_connection(hostname=None, protocol="xmlrpc", port='auto', database=None,
login=None, password=None, user_id=None):
"""
A shortcut method to easily create a connection to a remote OpenERP server.

View File

@ -39,11 +39,16 @@ class OpenERPSession(object):
self._lang = {}
self.remote_timezone = 'utc'
self.client_timezone = False
def build_connection(self):
return openerplib.get_connection(hostname=self.config.server_host, port=self.config.server_port,
database=self._db, login=self._login,
user_id=self._uid, password=self._password)
if self.config.backend == 'local':
conn = openerplib.get_connection(protocol='local', database=self._db,
login=self._login, user_id=self._uid, password=self._password)
else:
conn = openerplib.get_connection(hostname=self.config.server_host,
port=self.config.server_port, database=self._db, login=self._login,
user_id=self._uid, password=self._password)
return conn
def proxy(self, service):
return self.build_connection().get_service(service)