| 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 |