mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2025-02-02 09:17:59 +00:00
31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
"""
|
|
Ported to Python 3.
|
|
"""
|
|
from __future__ import absolute_import
|
|
from __future__ import division
|
|
from __future__ import print_function
|
|
from __future__ import unicode_literals
|
|
|
|
from future.utils import PY2
|
|
if PY2:
|
|
from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401
|
|
|
|
from foolscap.api import Violation, RemoteException
|
|
|
|
|
|
def add_version_to_remote_reference(rref, default):
|
|
"""I try to add a .version attribute to the given RemoteReference. I call
|
|
the remote get_version() method to learn its version. I'll add the
|
|
default value if the remote side doesn't appear to have a get_version()
|
|
method."""
|
|
d = rref.callRemote("get_version")
|
|
def _got_version(version):
|
|
rref.version = version
|
|
return rref
|
|
def _no_get_version(f):
|
|
f.trap(Violation, RemoteException)
|
|
rref.version = default
|
|
return rref
|
|
d.addCallbacks(_got_version, _no_get_version)
|
|
return d
|