您的位置:首页 > 编程语言

OpenERP源码结构分析及RPC相关代码分布

2014-10-30 21:32 369 查看
OpenERP源码结构分析及RPC相关代码分布简单介绍如下:

openerp/
<span style="white-space:pre"> </span>addons/<span style="white-space:pre"> </span>“””存放一个个openerp的可加载模块,如销售、仓库等模块”””
<span style="white-space:pre"> </span>web/<span style="white-space:pre"> </span>“””web模块,一个重要的模块”””
<span style="white-space:pre"> </span>http.py<span style="white-space:pre"> </span>“””用http.py来加载该模块的处理函数”””
<span style="white-space:pre"> </span>controllers/
<span style="white-space:pre"> </span>main.py<span style="white-space:pre"> </span>“””web模块的处理函数全在这里定义,每个函数都继承了<span style="font-family: 宋体;">openerpweb.Controller,并且都有属性_cp_path。””” </span>
<span style="white-space:pre">	</span>cli/<span style="white-space:pre">		</span>“””存放启动服务的代码”””
<span style="white-space:pre">		</span>server.py<span style="white-space:pre">	</span>“””OpenERP启动代码,打开service中的一系列服务”””
<span style="white-space:pre">	</span>conf/
<span style="white-space:pre">	</span>loglevels.py
<span style="white-space:pre">	</span>modeles/<span style="white-space:pre">	</span>“””存放加载模块相关代码”””
<span style="white-space:pre">	</span>netsvc.py		“””网络相关,提供了一个提取服务的基类ExportService,继承此基类实现RPC调用的处理。对不同RPC调用实现分派”””
<span style="white-space:pre">	</span>osv/			“””存放处理对象操作的代码”””
<span style="white-space:pre">		</span>osv.py<span style="white-space:pre">		</span>“””其中定义了对象处理类object_proxy,定义了对对象处理的几个重要函数,RPC调用对象的操作最终便是用这里的函数来实现操作”””
<span style="white-space:pre">	</span>pooler.py<span style="white-space:pre">	</span>“””模块池,用于获取一个已注册的模块。”””
<span style="white-space:pre">	</span>release.py<span style="white-space:pre">	</span>“””控制版本信息”””
<span style="white-space:pre">	</span>report/
<span style="white-space:pre">	</span>service/<span style="white-space:pre">	</span>“””存放服务相关代码,其网络服务很重要”””
<span style="white-space:pre">		</span>__init__.py<span style="white-space:pre">	</span>“””在此打开service下的一系列服务。”””
<span style="white-space:pre">		</span>web_service.py<span style="white-space:pre">	</span>“””继承netsvc.py中的ExportService,定义RPC方法(重要)。其中<span style="font-family: 宋体;">分三大类RPC服务:</span>
<span style="white-space:pre">					</span>1、common类,用于处理通用RPC,既登陆退出OpenERP等;
<span style="white-space:pre">					</span>2、db类,用于处理数据库的RPC,慎用;
<span style="white-space:pre">					</span>3、object类,最有用的网络服务,用于处理各模块的RPC。”””
<span style="white-space:pre">		</span>websrv_lib.py<span style="white-space:pre">	</span>“””注册RPC处理函数,既把调用路径和其代表的处理函数挂钩”””
<span style="white-space:pre">		</span>wsgi_server.py<span style="white-space:pre">	</span>“””web服务器网关接口。服务器开启后在此轮询handler(即RPC处理函数)”””
<span style="white-space:pre">	</span>sql_db.py
<span style="white-space:pre">	</span>tools/
<span style="white-space:pre">		</span>configure.py<span style="white-space:pre">	</span>“””配置相关。第114行有XML-RPC是否默认启动的设置”””
<span style="white-space:pre">	</span>workflow/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  源码 python openerp rpc