equal
deleted
inserted
replaced
12 import weakref |
12 import weakref |
13 |
13 |
14 from .i18n import _ |
14 from .i18n import _ |
15 from .node import ( |
15 from .node import ( |
16 bin, |
16 bin, |
17 ) |
|
18 from .thirdparty.zope import ( |
|
19 interface as zi, |
|
20 ) |
17 ) |
21 from . import ( |
18 from . import ( |
22 bundle2, |
19 bundle2, |
23 changegroup as changegroupmod, |
20 changegroup as changegroupmod, |
24 encoding, |
21 encoding, |
26 pushkey as pushkeymod, |
23 pushkey as pushkeymod, |
27 pycompat, |
24 pycompat, |
28 repository, |
25 repository, |
29 util, |
26 util, |
30 wireprototypes, |
27 wireprototypes, |
|
28 ) |
|
29 from .utils import ( |
|
30 interfaceutil, |
31 ) |
31 ) |
32 |
32 |
33 urlreq = util.urlreq |
33 urlreq = util.urlreq |
34 |
34 |
35 def batchable(f): |
35 def batchable(f): |
108 # This looks like it will infinitely recurse. However, |
108 # This looks like it will infinitely recurse. However, |
109 # sendcommands() should modify __class__. This call serves as a check |
109 # sendcommands() should modify __class__. This call serves as a check |
110 # on that. |
110 # on that. |
111 return self.result(timeout) |
111 return self.result(timeout) |
112 |
112 |
113 @zi.implementer(repository.ipeercommandexecutor) |
113 @interfaceutil.implementer(repository.ipeercommandexecutor) |
114 class peerexecutor(object): |
114 class peerexecutor(object): |
115 def __init__(self, peer): |
115 def __init__(self, peer): |
116 self._peer = peer |
116 self._peer = peer |
117 self._sent = False |
117 self._sent = False |
118 self._closed = False |
118 self._closed = False |
306 except Exception: |
306 except Exception: |
307 pycompat.future_set_exception_info(f, sys.exc_info()[1:]) |
307 pycompat.future_set_exception_info(f, sys.exc_info()[1:]) |
308 else: |
308 else: |
309 f.set_result(result) |
309 f.set_result(result) |
310 |
310 |
311 @zi.implementer(repository.ipeercommands, repository.ipeerlegacycommands) |
311 @interfaceutil.implementer(repository.ipeercommands, |
|
312 repository.ipeerlegacycommands) |
312 class wirepeer(repository.peer): |
313 class wirepeer(repository.peer): |
313 """Client-side interface for communicating with a peer repository. |
314 """Client-side interface for communicating with a peer repository. |
314 |
315 |
315 Methods commonly call wire protocol commands of the same name. |
316 Methods commonly call wire protocol commands of the same name. |
316 |
317 |