diff mercurial/sshpeer.py @ 29745:bb04f96df51c

wireproto: consolidate code for obtaining "cmds" argument value Both wireproto.py and sshpeer.py had code for producing the value to the "cmds" argument used by the "batch" command. This patch extracts that code to a standalone function and uses it.
author Gregory Szorc <gregory.szorc@gmail.com>
date Sat, 06 Aug 2016 13:46:28 -0700
parents 0dbd788a2dfd
children 764f4581d1f3
line wrap: on
line diff
--- a/mercurial/sshpeer.py	Fri Aug 05 15:35:02 2016 -0400
+++ b/mercurial/sshpeer.py	Sat Aug 06 13:46:28 2016 -0700
@@ -232,13 +232,7 @@
     __del__ = cleanup
 
     def _submitbatch(self, req):
-        cmds = []
-        for op, argsdict in req:
-            args = ','.join('%s=%s' % (wireproto.escapearg(k),
-                                       wireproto.escapearg(v))
-                            for k, v in argsdict.iteritems())
-            cmds.append('%s %s' % (op, args))
-        rsp = self._callstream("batch", cmds=';'.join(cmds))
+        rsp = self._callstream("batch", cmds=wireproto.encodebatchcmds(req))
         available = self._getamount()
         # TODO this response parsing is probably suboptimal for large
         # batches with large responses.