summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/docs/server2/file_system.py
diff options
context:
space:
mode:
authorahernandez.miralles@gmail.com <ahernandez.miralles@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-08-05 07:46:03 +0000
committerahernandez.miralles@gmail.com <ahernandez.miralles@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-08-05 07:46:03 +0000
commitcc0d4be2389a0cc9eb37e50b4fd868916655ba21 (patch)
tree5327e211e95711a6e70531bbfb320ca6bfe75969 /chrome/common/extensions/docs/server2/file_system.py
parentf0938d1e15514d060fde1acdc96124aa58f9f296 (diff)
downloadchromium_src-cc0d4be2389a0cc9eb37e50b4fd868916655ba21.zip
chromium_src-cc0d4be2389a0cc9eb37e50b4fd868916655ba21.tar.gz
chromium_src-cc0d4be2389a0cc9eb37e50b4fd868916655ba21.tar.bz2
Docserver: Update Future.Then() to be more Promise-like
BUG=306341 NOTRY=True Review URL: https://codereview.chromium.org/417163004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287482 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/docs/server2/file_system.py')
-rw-r--r--chrome/common/extensions/docs/server2/file_system.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/chrome/common/extensions/docs/server2/file_system.py b/chrome/common/extensions/docs/server2/file_system.py
index 99e33c5..1e5b567 100644
--- a/chrome/common/extensions/docs/server2/file_system.py
+++ b/chrome/common/extensions/docs/server2/file_system.py
@@ -106,13 +106,12 @@ class FileSystem(object):
return Future(value=True)
parent, base = SplitParent(path)
- list_future = self.ReadSingle(ToDirectory(parent))
- def resolve():
- try:
- return base in list_future.Get()
- except FileNotFoundError:
+ def handle(error):
+ if isinstance(error, FileNotFoundError):
return False
- return Future(callback=resolve)
+ raise error
+ return self.ReadSingle(ToDirectory(parent)).Then(lambda l: base in l,
+ handle)
def Refresh(self):
'''Asynchronously refreshes the content of the FileSystem, returning a