Mercurial > kallithea
view rhodecode/lib/vcs/utils/imports.py @ 2016:6020e3884a58 beta
implements #212 moved default encoding variable into rhodecode-config. It's now possible to change
default utf8 to some other encoding.
- also added instance-id to config
- update ini files
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 22 Feb 2012 04:30:26 +0200 |
parents | 324ac367a4da |
children | 7e5f8c12a3fc |
line wrap: on
line source
from rhodecode.lib.vcs.exceptions import VCSError def import_class(class_path): """ Returns class from the given path. For example, in order to get class located at ``vcs.backends.hg.MercurialRepository``: try: hgrepo = import_class('vcs.backends.hg.MercurialRepository') except VCSError: # hadle error """ splitted = class_path.split('.') mod_path = '.'.join(splitted[:-1]) class_name = splitted[-1] try: class_mod = __import__(mod_path, {}, {}, [class_name]) except ImportError, err: msg = "There was problem while trying to import backend class. "\ "Original error was:\n%s" % err raise VCSError(msg) cls = getattr(class_mod, class_name) return cls