strings_data_source.py revision f2477e01787aa58f445919b809d89e252beef54f
1# Copyright 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5from extensions_paths import JSON_TEMPLATES
6from data_source import DataSource
7
8
9class StringsDataSource(DataSource):
10  '''Provides templates with access to a key to string mapping defined in a
11  JSON configuration file.
12  '''
13  def __init__(self, server_instance, _):
14    self._cache = server_instance.compiled_fs_factory.ForJson(
15        server_instance.host_file_system_provider.GetTrunk())
16
17  def _GetStringsData(self):
18    return self._cache.GetFromFile('%s/strings.json' % JSON_TEMPLATES)
19
20  def Cron(self):
21    return self._GetStringsData()
22
23  def get(self, key):
24    return self._GetStringsData().Get().get(key)
25