mercurial/wireproto.py
changeset 29590 84c1a5942f1d
parent 29341 0d83ad967bf8
child 29706 7f6130c7ffe1
equal deleted inserted replaced
29589:486de14eb394 29590:84c1a5942f1d
   534     `self.message`.
   534     `self.message`.
   535     """
   535     """
   536     def __init__(self, message):
   536     def __init__(self, message):
   537         self.message = message
   537         self.message = message
   538 
   538 
       
   539 def getdispatchrepo(repo, proto, command):
       
   540     """Obtain the repo used for processing wire protocol commands.
       
   541 
       
   542     The intent of this function is to serve as a monkeypatch point for
       
   543     extensions that need commands to operate on different repo views under
       
   544     specialized circumstances.
       
   545     """
       
   546     return repo.filtered('served')
       
   547 
   539 def dispatch(repo, proto, command):
   548 def dispatch(repo, proto, command):
   540     repo = repo.filtered("served")
   549     repo = getdispatchrepo(repo, proto, command)
   541     func, spec = commands[command]
   550     func, spec = commands[command]
   542     args = proto.getargs(spec)
   551     args = proto.getargs(spec)
   543     return func(repo, proto, *args)
   552     return func(repo, proto, *args)
   544 
   553 
   545 def options(cmd, keys, others):
   554 def options(cmd, keys, others):