| Index: chrome/common/extensions/docs/server2/compiled_file_system.py
|
| diff --git a/chrome/common/extensions/docs/server2/compiled_file_system.py b/chrome/common/extensions/docs/server2/compiled_file_system.py
|
| index 7a2ba6ab2d32731aaca39b316b0bf7d2861c8399..f0f35ec457b319da78dd7b4bc5aa64385fead6ba 100644
|
| --- a/chrome/common/extensions/docs/server2/compiled_file_system.py
|
| +++ b/chrome/common/extensions/docs/server2/compiled_file_system.py
|
| @@ -185,28 +185,30 @@ class CompiledFileSystem(object):
|
| return self._file_system.Read(add_prefix(path, first_layer_dirs)).Then(
|
| lambda results: first_layer_files + get_from_future_listing(results))
|
|
|
| - def GetFromFile(self, path):
|
| - '''Calls |compilation_function| on the contents of the file at |path|. If
|
| - |binary| is True then the file will be read as binary - but this will only
|
| - apply for the first time the file is fetched; if already cached, |binary|
|
| - will be ignored.
|
| + def GetFromFile(self, path, skip_not_found=False):
|
| + '''Calls |compilation_function| on the contents of the file at |path|.
|
| + If |skip_not_found| is True, then None is passed to |compilation_function|.
|
| '''
|
| AssertIsFile(path)
|
|
|
| try:
|
| version = self._file_system.Stat(path).version
|
| except FileNotFoundError:
|
| - return Future(exc_info=sys.exc_info())
|
| + if skip_not_found:
|
| + version = None
|
| + else:
|
| + return Future(exc_info=sys.exc_info())
|
|
|
| cache_entry = self._file_object_store.Get(path).Get()
|
| if (cache_entry is not None) and (version == cache_entry.version):
|
| return Future(value=cache_entry._cache_data)
|
|
|
| - def next(files):
|
| + def compile_(files):
|
| cache_data = self._compilation_function(path, files)
|
| self._file_object_store.Set(path, _CacheEntry(cache_data, version))
|
| return cache_data
|
| - return self._file_system.ReadSingle(path).Then(next)
|
| + return self._file_system.ReadSingle(
|
| + path, skip_not_found=skip_not_found).Then(compile_)
|
|
|
| def GetFromFileListing(self, path):
|
| '''Calls |compilation_function| on the listing of the files at |path|.
|
|
|