comparison mercurial/sshserver.py @ 11622:1d48681b17a4

protocol: rename send methods to get grouping by prefix
author Dirkjan Ochtman <dirkjan@ochtman.nl>
date Fri, 16 Jul 2010 18:18:35 +0200
parents e46a8b2331a6
children 31d0a6d50ee2
comparison
equal deleted inserted replaced
11621:e46a8b2331a6 11622:1d48681b17a4
48 48
49 def getarg(self, name): 49 def getarg(self, name):
50 return self.getargs(name)[0] 50 return self.getargs(name)[0]
51 51
52 def getfile(self, fpout): 52 def getfile(self, fpout):
53 self.respond('') 53 self.sendresponse('')
54 count = int(self.fin.readline()) 54 count = int(self.fin.readline())
55 while count: 55 while count:
56 fpout.write(self.fin.read(count)) 56 fpout.write(self.fin.read(count))
57 count = int(self.fin.readline()) 57 count = int(self.fin.readline())
58 58
59 def redirect(self): 59 def redirect(self):
60 pass 60 pass
61 61
62 def respond(self, v): 62 def sendresponse(self, v):
63 self.fout.write("%d\n" % len(v)) 63 self.fout.write("%d\n" % len(v))
64 self.fout.write(v) 64 self.fout.write(v)
65 self.fout.flush() 65 self.fout.flush()
66 66
67 def sendchangegroup(self, changegroup): 67 def sendchangegroup(self, changegroup):
76 def sendstream(self, source): 76 def sendstream(self, source):
77 for chunk in source: 77 for chunk in source:
78 self.fout.write(chunk) 78 self.fout.write(chunk)
79 self.fout.flush() 79 self.fout.flush()
80 80
81 def respondpush(self, ret): 81 def sendpushresponse(self, ret):
82 self.respond('') 82 self.sendresponse('')
83 self.respond(str(ret)) 83 self.sendresponse(str(ret))
84 84
85 def serve_forever(self): 85 def serve_forever(self):
86 try: 86 try:
87 while self.serve_one(): 87 while self.serve_one():
88 pass 88 pass
98 elif cmd: 98 elif cmd:
99 impl = getattr(self, 'do_' + cmd, None) 99 impl = getattr(self, 'do_' + cmd, None)
100 if impl: 100 if impl:
101 r = impl() 101 r = impl()
102 if r is not None: 102 if r is not None:
103 self.respond(r) 103 self.sendresponse(r)
104 else: self.respond("") 104 else: self.sendresponse("")
105 return cmd != '' 105 return cmd != ''
106 106
107 def do_lock(self): 107 def do_lock(self):
108 '''DEPRECATED - allowing remote client to lock repo is not safe''' 108 '''DEPRECATED - allowing remote client to lock repo is not safe'''
109 109
120 120
121 def do_addchangegroup(self): 121 def do_addchangegroup(self):
122 '''DEPRECATED''' 122 '''DEPRECATED'''
123 123
124 if not self.lock: 124 if not self.lock:
125 self.respond("not locked") 125 self.sendresponse("not locked")
126 return 126 return
127 127
128 self.respond("") 128 self.sendresponse("")
129 r = self.repo.addchangegroup(self.fin, 'serve', self._client(), 129 r = self.repo.addchangegroup(self.fin, 'serve', self._client(),
130 lock=self.lock) 130 lock=self.lock)
131 return str(r) 131 return str(r)
132 132
133 def _client(self): 133 def _client(self):