diff -r a93ae0f6c0ad -r de974465d381 dbapi.py --- a/dbapi.py Mon Aug 03 14:14:07 2009 +0200 +++ b/dbapi.py Mon Aug 03 15:16:47 2009 +0200 @@ -17,6 +17,7 @@ from logilab.common.logging_ext import set_log_methods from logilab.common.decorators import monkeypatch +from logilab.common.deprecation import deprecated from cubicweb import ETYPE_NAME_MAP, ConnectionError, RequestSessionMixIn from cubicweb import cwvreg, cwconfig @@ -29,10 +30,10 @@ except KeyError: return '' -def _fix_cls_attrs(reg, vobject): - vobject.vreg = reg.vreg - vobject.schema = reg.schema - vobject.config = reg.config +def _fix_cls_attrs(reg, appobject): + appobject.vreg = reg.vreg + appobject.schema = reg.schema + appobject.config = reg.config def multiple_connections_fix(): """some monkey patching necessary when an application has to deal with @@ -43,15 +44,15 @@ defaultcls = cwvreg.VRegistry.REGISTRY_FACTORY[None] orig_select_best = defaultcls.orig_select_best = defaultcls.select_best @monkeypatch(defaultcls) - def select_best(self, vobjects, *args, **kwargs): + def select_best(self, appobjects, *args, **kwargs): """return an instance of the most specific object according to parameters raise NoSelectableObject if no object apply """ - for vobjectcls in vobjects: - _fix_cls_attrs(self, vobjectcls) - selected = orig_select_best(self, vobjects, *args, **kwargs) + for appobjectcls in appobjects: + _fix_cls_attrs(self, appobjectcls) + selected = orig_select_best(self, appobjects, *args, **kwargs) # redo the same thing on the instance so it won't use equivalent class # attributes (which may change) _fix_cls_attrs(self, selected) @@ -448,7 +449,7 @@ raise ProgrammingError('Closed connection') return self._repo.get_schema() - def load_vobjects(self, cubes=_MARKER, subpath=None, expand=True, + def load_appobjects(self, cubes=_MARKER, subpath=None, expand=True, force_reload=None): config = self.vreg.config if cubes is _MARKER: @@ -481,11 +482,13 @@ if self._repo.config.instance_hooks: hm.register_hooks(config.load_hooks(self.vreg)) + load_vobjects = deprecated()(load_appobjects) + def use_web_compatible_requests(self, baseurl, sitetitle=None): """monkey patch DBAPIRequest to fake a cw.web.request, so you should able to call html views using rset from a simple dbapi connection. - You should call `load_vobjects` at some point to register those views. + You should call `load_appobjects` at some point to register those views. """ from cubicweb.web.request import CubicWebRequestBase as cwrb DBAPIRequest.build_ajax_replace_url = cwrb.build_ajax_replace_url.im_func