##// END OF EJS Templates
Moved inject ui into base vcs classe
marcink -
r3477:951aa274 beta
parent child Browse files
Show More
@@ -311,6 +311,27 b' class BaseRepository(object):'
311 311 """
312 312 raise NotImplementedError
313 313
314 def inject_ui(self, **extras):
315 """
316 Injects extra parameters into UI object of this repo
317 """
318 required_extras = [
319 'ip',
320 'username',
321 'action',
322 'repository',
323 'scm',
324 'config',
325 'server_url',
326 'make_lock',
327 'locked_by',
328 ]
329 for req in required_extras:
330 if req not in extras:
331 raise AttributeError('Missing attribute %s in extras' % (req))
332 for k, v in extras.items():
333 self._repo.ui.setconfig('rhodecode_extras', k, v)
334
314 335
315 336 class BaseChangeset(object):
316 337 """
@@ -938,15 +938,7 b' class Repository(Base, BaseModel):'
938 938
939 939 @classmethod
940 940 def inject_ui(cls, repo, extras={}):
941 from rhodecode.lib.vcs.backends.hg import MercurialRepository
942 from rhodecode.lib.vcs.backends.git import GitRepository
943 required = (MercurialRepository, GitRepository)
944 if not isinstance(repo, required):
945 raise Exception('repo must be instance of %s' % required)
946
947 # inject ui extra param to log this action via push logger
948 for k, v in extras.items():
949 repo._repo.ui.setconfig('rhodecode_extras', k, v)
941 repo.inject_ui(extras)
950 942
951 943 @classmethod
952 944 def is_valid(cls, repo_name):
General Comments 0
You need to be logged in to leave comments. Login now