OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import logging | 5 import logging |
6 import posixpath | 6 import posixpath |
7 import traceback | 7 import traceback |
8 | 8 |
9 from data_source import DataSource | 9 from data_source import DataSource |
10 from docs_server_utils import FormatKey | 10 from docs_server_utils import FormatKey |
11 from extensions_paths import ( | 11 from extensions_paths import ( |
12 ARTICLES_TEMPLATES, INTROS_TEMPLATES, PRIVATE_TEMPLATES) | 12 ARTICLES_TEMPLATES, INTROS_TEMPLATES, PRIVATE_TEMPLATES) |
13 from file_system import FileNotFoundError | 13 from file_system import FileNotFoundError |
14 from future import All | 14 from future import All |
15 from path_util import AssertIsDirectory | 15 from path_util import AssertIsDirectory |
16 | 16 |
17 | 17 |
18 class TemplateDataSource(DataSource): | 18 class TemplateDataSource(DataSource): |
19 '''Provides a DataSource interface for compiled templates. | 19 '''Provides a DataSource interface for compiled templates. |
20 ''' | 20 ''' |
21 def __init__(self, server_instance, request=None): | 21 def __init__(self, server_instance, request=None): |
22 self._dir = type(self)._BASE | 22 self._dir = type(self)._BASE |
23 AssertIsDirectory(self._dir) | 23 AssertIsDirectory(self._dir) |
24 self._request = request | 24 self._request = request |
25 self._template_cache = server_instance.compiled_fs_factory.ForTemplates( | 25 self._template_cache = server_instance.compiled_fs_factory.ForTemplates( |
26 server_instance.host_file_system_provider.GetTrunk()) | 26 server_instance.host_file_system_provider.GetMaster()) |
27 self._file_system = server_instance.host_file_system_provider.GetTrunk() | 27 self._file_system = server_instance.host_file_system_provider.GetMaster() |
28 | 28 |
29 def get(self, path): | 29 def get(self, path): |
30 try: | 30 try: |
31 return self._template_cache.GetFromFile('%s%s' % | 31 return self._template_cache.GetFromFile('%s%s' % |
32 (self._dir, FormatKey(path))).Get() | 32 (self._dir, FormatKey(path))).Get() |
33 except FileNotFoundError: | 33 except FileNotFoundError: |
34 logging.warning(traceback.format_exc()) | 34 logging.warning(traceback.format_exc()) |
35 return None | 35 return None |
36 | 36 |
37 def Cron(self): | 37 def Cron(self): |
(...skipping 15 matching lines...) Expand all Loading... |
53 class IntroDataSource(TemplateDataSource): | 53 class IntroDataSource(TemplateDataSource): |
54 '''Serves templates for Intros. | 54 '''Serves templates for Intros. |
55 ''' | 55 ''' |
56 _BASE = INTROS_TEMPLATES | 56 _BASE = INTROS_TEMPLATES |
57 | 57 |
58 | 58 |
59 class PartialDataSource(TemplateDataSource): | 59 class PartialDataSource(TemplateDataSource): |
60 '''Serves templates for private templates. | 60 '''Serves templates for private templates. |
61 ''' | 61 ''' |
62 _BASE = PRIVATE_TEMPLATES | 62 _BASE = PRIVATE_TEMPLATES |
OLD | NEW |