[IMP] openerp python module.

- Some logging code moved from netsvc.py to loglevels.py
- Changed imports to use the new openerp module
- config and netsvc initialization calls move to openerp-server.py
- Moved openerp-server.py outside the old bin directory
- Some imports in tools moved inside the methods to break mutual-dependencies

bzr revid: vmt@openerp.com-20110207125723-ooee7d7ng5elmkso
This commit is contained in:
Vo Minh Thu 2011-02-07 13:57:23 +01:00
parent 9c287abc14
commit f8572e5c60
411 changed files with 228 additions and 282 deletions

View File

@ -40,7 +40,7 @@ import sys
import threading import threading
import traceback import traceback
import release import openerp.release as release
__author__ = release.author __author__ = release.author
__version__ = release.version __version__ = release.version
@ -52,16 +52,19 @@ if os.name == 'posix':
sys.stderr.write("Attempted to run OpenERP server as root. This is not good, aborting.\n") sys.stderr.write("Attempted to run OpenERP server as root. This is not good, aborting.\n")
sys.exit(1) sys.exit(1)
#----------------------------------------------------------
# get logger
#----------------------------------------------------------
import netsvc
logger = logging.getLogger('server')
#----------------------------------------------------------------------- #-----------------------------------------------------------------------
# import the tools module so that the commandline parameters are parsed # import the tools module so that the commandline parameters are parsed
#----------------------------------------------------------------------- #-----------------------------------------------------------------------
import tools import openerp.tools as tools
tools.config.parse_config()
#----------------------------------------------------------
# get logger
#----------------------------------------------------------
import openerp.netsvc as netsvc
netsvc.init_logger()
logger = logging.getLogger('server')
logger.info("OpenERP version - %s", release.version) logger.info("OpenERP version - %s", release.version)
for name, value in [('addons_path', tools.config['addons_path']), for name, value in [('addons_path', tools.config['addons_path']),
('database hostname', tools.config['db_host'] or 'localhost'), ('database hostname', tools.config['db_host'] or 'localhost'),
@ -84,37 +87,37 @@ logger.info('initialising distributed objects services')
#--------------------------------------------------------------- #---------------------------------------------------------------
# connect to the database and initialize it with base if needed # connect to the database and initialize it with base if needed
#--------------------------------------------------------------- #---------------------------------------------------------------
import pooler import openerp.pooler as pooler
#---------------------------------------------------------- #----------------------------------------------------------
# import basic modules # import basic modules
#---------------------------------------------------------- #----------------------------------------------------------
import osv import openerp.osv as osv
import workflow import openerp.workflow as workflow
import report import openerp.report as report
import service import openerp.service as service
#---------------------------------------------------------- #----------------------------------------------------------
# import addons # import addons
#---------------------------------------------------------- #----------------------------------------------------------
import addons import openerp.addons as addons
#---------------------------------------------------------- #----------------------------------------------------------
# Load and update databases if requested # Load and update databases if requested
#---------------------------------------------------------- #----------------------------------------------------------
import service.http_server import openerp.service.http_server as service_http_server
if not ( tools.config["stop_after_init"] or \ if not ( tools.config["stop_after_init"] or \
tools.config["translate_in"] or \ tools.config["translate_in"] or \
tools.config["translate_out"] ): tools.config["translate_out"] ):
service.http_server.init_servers() service_http_server.init_servers()
service.http_server.init_xmlrpc() service_http_server.init_xmlrpc()
service.http_server.init_static_http() service_http_server.init_static_http()
import service.netrpc_server import openerp.service.netrpc_server as service_netrpc_server
service.netrpc_server.init_servers() service_netrpc_server.init_servers()
if tools.config['db_name']: if tools.config['db_name']:
for dbname in tools.config['db_name'].split(','): for dbname in tools.config['db_name'].split(','):

View File

@ -19,6 +19,28 @@
# #
############################################################################## ##############################################################################
# We don't want addons to be imported right now;
# the commented imports import addons.
# This will change when addons.__init__ and addons.base
# are cleaned.
#import addons
import ir
import loglevels
import netsvc
import osv
#import pooler
import pychart
import release
#import report
import run_tests
#import service
import sql_db
import test
import tiny_socket
#import tools
import wizard
import workflow
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:

View File

@ -25,17 +25,17 @@ from os.path import join as opj
import itertools import itertools
import zipimport import zipimport
import osv import openerp.osv as osv
import tools import openerp.tools as tools
import tools.osutil import openerp.tools.osutil as osutil
from tools.safe_eval import safe_eval as eval from openerp.tools.safe_eval import safe_eval as eval
import pooler import openerp.pooler as pooler
from tools.translate import _ from openerp.tools.translate import _
import netsvc import openerp.netsvc as netsvc
import zipfile import zipfile
import release import openerp.release as release
import re import re
import base64 import base64
@ -44,7 +44,6 @@ from cStringIO import StringIO
import logging import logging
logger = netsvc.Logger() logger = netsvc.Logger()
_ad = os.path.abspath(opj(tools.ustr(tools.config['root_path']), u'addons')) # default addons path (base) _ad = os.path.abspath(opj(tools.ustr(tools.config['root_path']), u'addons')) # default addons path (base)
@ -186,7 +185,7 @@ def get_module_filetree(module, dir='.'):
zip = zipfile.ZipFile(path + ".zip") zip = zipfile.ZipFile(path + ".zip")
files = ['/'.join(f.split('/')[1:]) for f in zip.namelist()] files = ['/'.join(f.split('/')[1:]) for f in zip.namelist()]
else: else:
files = tools.osutil.listdir(path, True) files = osutil.listdir(path, True)
tree = {} tree = {}
for f in files: for f in files:
@ -218,7 +217,7 @@ def zip_directory(directory, b64enc=True, src=True):
def _zippy(archive, path, src=True): def _zippy(archive, path, src=True):
path = os.path.abspath(path) path = os.path.abspath(path)
base = os.path.basename(path) base = os.path.basename(path)
for f in tools.osutil.listdir(path, True): for f in osutil.listdir(path, True):
bf = os.path.basename(f) bf = os.path.basename(f)
if not RE_exclude.search(bf) and (src or bf in ('__openerp__.py', '__terp__.py') or not bf.endswith('.py')): if not RE_exclude.search(bf) and (src or bf in ('__openerp__.py', '__terp__.py') or not bf.endswith('.py')):
archive.write(os.path.join(path, f), os.path.join(base, f)) archive.write(os.path.join(path, f), os.path.join(base, f))
@ -559,7 +558,7 @@ class MigrationManager(object):
a.update(b) a.update(b)
return a return a
from tools.parse_version import parse_version from openerp.tools.parse_version import parse_version
parsed_installed_version = parse_version(pkg.installed_version or '') parsed_installed_version = parse_version(pkg.installed_version or '')
current_version = parse_version(convert_version(pkg.data.get('version', '0'))) current_version = parse_version(convert_version(pkg.data.get('version', '0')))
@ -798,6 +797,12 @@ def _check_module_names(cr, module_names):
logging.getLogger('init').warning('invalid module names, ignored: %s', ", ".join(incorrect_names)) logging.getLogger('init').warning('invalid module names, ignored: %s', ", ".join(incorrect_names))
def load_modules(db, force_demo=False, status=None, update_module=False): def load_modules(db, force_demo=False, status=None, update_module=False):
# Backward compatibility: addons don't have to import openerp.xxx, they still can import xxx
for k, v in list(sys.modules.items()):
if k.startswith('openerp.') and sys.modules.get(k[8:]) is None:
sys.modules[k[8:]] = v
if not status: if not status:
status = {} status = {}
cr = db.cursor() cr = db.cursor()

View File

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Some files were not shown because too many files have changed in this diff Show More