Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: chrome/common/extensions/docs/server2/server_instance.py

Issue 23867003: Docserver: Consolidate features caching and access. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: no version bump Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 from api_data_source import APIDataSource 5 from api_data_source import APIDataSource
6 from api_list_data_source import APIListDataSource 6 from api_list_data_source import APIListDataSource
7 from appengine_wrappers import IsDevServer 7 from appengine_wrappers import IsDevServer
8 from availability_finder import AvailabilityFinder 8 from availability_finder import AvailabilityFinder
9 from compiled_file_system import CompiledFileSystem 9 from compiled_file_system import CompiledFileSystem
10 from empty_dir_file_system import EmptyDirFileSystem 10 from empty_dir_file_system import EmptyDirFileSystem
11 from example_zipper import ExampleZipper 11 from example_zipper import ExampleZipper
12 from features_bundle import FeaturesBundle
12 from host_file_system_creator import HostFileSystemCreator 13 from host_file_system_creator import HostFileSystemCreator
13 from host_file_system_iterator import HostFileSystemIterator 14 from host_file_system_iterator import HostFileSystemIterator
14 from intro_data_source import IntroDataSource 15 from intro_data_source import IntroDataSource
15 from object_store_creator import ObjectStoreCreator 16 from object_store_creator import ObjectStoreCreator
16 from path_canonicalizer import PathCanonicalizer 17 from path_canonicalizer import PathCanonicalizer
17 from permissions_data_source import PermissionsDataSource 18 from permissions_data_source import PermissionsDataSource
18 from redirector import Redirector 19 from redirector import Redirector
19 from reference_resolver import ReferenceResolver 20 from reference_resolver import ReferenceResolver
20 from samples_data_source import SamplesDataSource 21 from samples_data_source import SamplesDataSource
21 import svn_constants 22 import svn_constants
22 from template_data_source import TemplateDataSource 23 from template_data_source import TemplateDataSource
23 from test_branch_utility import TestBranchUtility 24 from test_branch_utility import TestBranchUtility
24 from test_object_store import TestObjectStore 25 from test_object_store import TestObjectStore
25 26
26
27 class ServerInstance(object): 27 class ServerInstance(object):
28 28
29 def __init__(self, 29 def __init__(self,
30 object_store_creator, 30 object_store_creator,
31 host_file_system, 31 host_file_system,
32 app_samples_file_system, 32 app_samples_file_system,
33 base_path, 33 base_path,
34 compiled_fs_factory, 34 compiled_fs_factory,
35 branch_utility, 35 branch_utility,
36 host_file_system_creator): 36 host_file_system_creator):
37 self.object_store_creator = object_store_creator 37 self.object_store_creator = object_store_creator
38 38
39 self.host_file_system = host_file_system 39 self.host_file_system = host_file_system
40 40
41 self.app_samples_file_system = app_samples_file_system 41 self.app_samples_file_system = app_samples_file_system
42 42
43 self.compiled_host_fs_factory = compiled_fs_factory 43 self.compiled_host_fs_factory = compiled_fs_factory
44 44
45 self.host_file_system_creator = host_file_system_creator 45 self.host_file_system_creator = host_file_system_creator
46 46
47 self.host_file_system_iterator = HostFileSystemIterator( 47 self.host_file_system_iterator = HostFileSystemIterator(
48 host_file_system_creator, 48 host_file_system_creator,
49 host_file_system, 49 host_file_system,
50 branch_utility) 50 branch_utility)
51 51
52 self.features_bundle = FeaturesBundle(
53 self.host_file_system,
54 self.compiled_host_fs_factory)
55
52 self.availability_finder = AvailabilityFinder( 56 self.availability_finder = AvailabilityFinder(
53 self.host_file_system_iterator, 57 self.host_file_system_iterator,
54 object_store_creator, 58 object_store_creator,
55 branch_utility, 59 branch_utility,
56 host_file_system) 60 host_file_system)
57 61
58 self.api_list_data_source_factory = APIListDataSource.Factory( 62 self.api_list_data_source_factory = APIListDataSource.Factory(
59 self.compiled_host_fs_factory, 63 self.compiled_host_fs_factory,
60 self.host_file_system, 64 self.host_file_system,
61 svn_constants.API_PATH, 65 svn_constants.PUBLIC_TEMPLATE_PATH,
62 svn_constants.PUBLIC_TEMPLATE_PATH) 66 self.features_bundle)
63 67
64 self.api_data_source_factory = APIDataSource.Factory( 68 self.api_data_source_factory = APIDataSource.Factory(
65 self.compiled_host_fs_factory, 69 self.compiled_host_fs_factory,
66 svn_constants.API_PATH, 70 svn_constants.API_PATH,
67 self.availability_finder, 71 self.availability_finder,
68 branch_utility) 72 branch_utility)
69 73
70 self.ref_resolver_factory = ReferenceResolver.Factory( 74 self.ref_resolver_factory = ReferenceResolver.Factory(
71 self.api_data_source_factory, 75 self.api_data_source_factory,
72 self.api_list_data_source_factory, 76 self.api_list_data_source_factory,
(...skipping 19 matching lines...) Expand all
92 base_path) 96 base_path)
93 97
94 self.api_data_source_factory.SetSamplesDataSourceFactory( 98 self.api_data_source_factory.SetSamplesDataSourceFactory(
95 self.samples_data_source_factory) 99 self.samples_data_source_factory)
96 100
97 self.intro_data_source_factory = IntroDataSource.Factory( 101 self.intro_data_source_factory = IntroDataSource.Factory(
98 self.compiled_host_fs_factory, 102 self.compiled_host_fs_factory,
99 self.ref_resolver_factory, 103 self.ref_resolver_factory,
100 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH]) 104 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH])
101 105
102 self.permissions_data_source = PermissionsDataSource( 106 self.permissions_data_source = PermissionsDataSource(self.features_bundle)
103 self.compiled_host_fs_factory,
104 self.host_file_system,
105 '/'.join((svn_constants.API_PATH, '_api_features.json')),
106 '/'.join((svn_constants.API_PATH, '_permission_features.json')),
107 '/'.join((svn_constants.JSON_PATH, 'permissions.json')))
108 107
109 self.example_zipper = ExampleZipper( 108 self.example_zipper = ExampleZipper(
110 self.compiled_host_fs_factory, 109 self.compiled_host_fs_factory,
111 self.host_file_system, 110 self.host_file_system,
112 svn_constants.DOCS_PATH) 111 svn_constants.DOCS_PATH)
113 112
114 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory) 113 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory)
115 114
116 self.redirector = Redirector( 115 self.redirector = Redirector(
117 self.compiled_host_fs_factory, 116 self.compiled_host_fs_factory,
118 self.host_file_system, 117 self.host_file_system,
119 svn_constants.PUBLIC_TEMPLATE_PATH) 118 svn_constants.PUBLIC_TEMPLATE_PATH)
120 119
121 self.strings_json_path = '/'.join((svn_constants.JSON_PATH, 'strings.json')) 120 self.strings_json_path = svn_constants.STRINGS_JSON_PATH
122 self.sidenav_json_base_path = svn_constants.JSON_PATH 121 self.sidenav_json_base_path = svn_constants.JSON_PATH
123 self.manifest_json_path = '/'.join( 122 self.manifest_json_path = svn_constants.MANIFEST_JSON_PATH
124 (svn_constants.JSON_PATH, 'manifest.json')) 123 self.manifest_features_path = svn_constants.MANIFEST_FEATURES_PATH
125 self.manifest_features_path = '/'.join(
126 (svn_constants.API_PATH, '_manifest_features.json'))
127 124
128 self.template_data_source_factory = TemplateDataSource.Factory( 125 self.template_data_source_factory = TemplateDataSource.Factory(
129 self.api_data_source_factory, 126 self.api_data_source_factory,
130 self.api_list_data_source_factory, 127 self.api_list_data_source_factory,
131 self.intro_data_source_factory, 128 self.intro_data_source_factory,
132 self.samples_data_source_factory, 129 self.samples_data_source_factory,
133 self.compiled_host_fs_factory, 130 self.compiled_host_fs_factory,
134 self.ref_resolver_factory, 131 self.ref_resolver_factory,
135 self.permissions_data_source, 132 self.permissions_data_source,
136 svn_constants.PUBLIC_TEMPLATE_PATH, 133 svn_constants.PUBLIC_TEMPLATE_PATH,
(...skipping 26 matching lines...) Expand all
163 object_store_creator) 160 object_store_creator)
164 trunk_file_system = host_file_system_creator.Create() 161 trunk_file_system = host_file_system_creator.Create()
165 return ServerInstance( 162 return ServerInstance(
166 object_store_creator, 163 object_store_creator,
167 trunk_file_system, 164 trunk_file_system,
168 EmptyDirFileSystem(), 165 EmptyDirFileSystem(),
169 '', 166 '',
170 CompiledFileSystem.Factory(trunk_file_system, object_store_creator), 167 CompiledFileSystem.Factory(trunk_file_system, object_store_creator),
171 TestBranchUtility.CreateWithCannedData(), 168 TestBranchUtility.CreateWithCannedData(),
172 host_file_system_creator) 169 host_file_system_creator)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698