Patchwork D2379: sshpeer: move logic for sending a request into a new function

login
register
mail settings
Submitter phabricator
Date Feb. 21, 2018, 10:08 p.m.
Message ID <differential-rev-PHID-DREV-hxn3x4nbbptxvi4ruzhl-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/28212/
State Superseded
Headers show

Comments

phabricator - Feb. 21, 2018, 10:08 p.m.
indygreg created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  The **args being used to pass arbitrary command arguments is limiting
  because it makes it harder to control behavior of the function.
  
  We factor most of _callstream() into a new function that doesn't
  use **args.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2379

AFFECTED FILES
  mercurial/sshpeer.py

CHANGE DETAILS




To: indygreg, #hg-reviewers
Cc: mercurial-devel

Patch

diff --git a/mercurial/sshpeer.py b/mercurial/sshpeer.py
--- a/mercurial/sshpeer.py
+++ b/mercurial/sshpeer.py
@@ -410,8 +410,7 @@ 
             work += chunk
         yield wireproto.unescapearg(work)
 
-    def _callstream(self, cmd, **args):
-        args = pycompat.byteskwargs(args)
+    def _sendrequest(self, cmd, args):
         if (self.ui.debugflag
             and self.ui.configbool('devel', 'debug.peer-request')):
             dbg = self.ui.debug
@@ -447,11 +446,17 @@ 
 
         return self._pipei
 
+    def _callstream(self, cmd, **args):
+        args = pycompat.byteskwargs(args)
+        return self._sendrequest(cmd, args)
+
     def _callcompressable(self, cmd, **args):
-        return self._callstream(cmd, **args)
+        args = pycompat.byteskwargs(args)
+        return self._sendrequest(cmd, args)
 
     def _call(self, cmd, **args):
-        self._callstream(cmd, **args)
+        args = pycompat.byteskwargs(args)
+        self._sendrequest(cmd, args)
         return self._readframed()
 
     def _callpush(self, cmd, fp, **args):