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

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

Issue 22824042: Docserver: SidenavDataSource refactor, transition to DataSourceRegistry (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 3 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 data_source_registry import CreateDataSources
11 from empty_dir_file_system import EmptyDirFileSystem 10 from empty_dir_file_system import EmptyDirFileSystem
12 from example_zipper import ExampleZipper 11 from example_zipper import ExampleZipper
13 from host_file_system_creator import HostFileSystemCreator 12 from host_file_system_creator import HostFileSystemCreator
14 from intro_data_source import IntroDataSource 13 from intro_data_source import IntroDataSource
15 from object_store_creator import ObjectStoreCreator 14 from object_store_creator import ObjectStoreCreator
16 from path_canonicalizer import PathCanonicalizer 15 from path_canonicalizer import PathCanonicalizer
17 from permissions_data_source import PermissionsDataSource 16 from permissions_data_source import PermissionsDataSource
18 from redirector import Redirector 17 from redirector import Redirector
19 from reference_resolver import ReferenceResolver 18 from reference_resolver import ReferenceResolver
20 from samples_data_source import SamplesDataSource 19 from samples_data_source import SamplesDataSource
21 from sidenav_data_source import SidenavDataSource
22 import svn_constants 20 import svn_constants
23 from template_data_source import TemplateDataSource 21 from template_data_source import TemplateDataSource
24 from test_branch_utility import TestBranchUtility 22 from test_branch_utility import TestBranchUtility
25 from test_object_store import TestObjectStore 23 from test_object_store import TestObjectStore
26 24
27 class ServerInstance(object): 25 class ServerInstance(object):
28 def __init__(self, 26 def __init__(self,
29 object_store_creator, 27 object_store_creator,
30 host_file_system, 28 host_file_system,
31 app_samples_file_system, 29 app_samples_file_system,
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 base_path) 83 base_path)
86 84
87 self.api_data_source_factory.SetSamplesDataSourceFactory( 85 self.api_data_source_factory.SetSamplesDataSourceFactory(
88 self.samples_data_source_factory) 86 self.samples_data_source_factory)
89 87
90 self.intro_data_source_factory = IntroDataSource.Factory( 88 self.intro_data_source_factory = IntroDataSource.Factory(
91 self.compiled_host_fs_factory, 89 self.compiled_host_fs_factory,
92 self.ref_resolver_factory, 90 self.ref_resolver_factory,
93 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH]) 91 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH])
94 92
95 self.sidenav_data_source_factory = SidenavDataSource.Factory(
96 self.compiled_host_fs_factory,
97 svn_constants.JSON_PATH)
98
99 self.permissions_data_source = PermissionsDataSource( 93 self.permissions_data_source = PermissionsDataSource(
100 self.compiled_host_fs_factory, 94 self.compiled_host_fs_factory,
101 self.host_file_system, 95 self.host_file_system,
102 '/'.join((svn_constants.API_PATH, '_api_features.json')), 96 '/'.join((svn_constants.API_PATH, '_api_features.json')),
103 '/'.join((svn_constants.API_PATH, '_permission_features.json')), 97 '/'.join((svn_constants.API_PATH, '_permission_features.json')),
104 '/'.join((svn_constants.JSON_PATH, 'permissions.json'))) 98 '/'.join((svn_constants.JSON_PATH, 'permissions.json')))
105 99
106 self.example_zipper = ExampleZipper( 100 self.example_zipper = ExampleZipper(
107 self.compiled_host_fs_factory, 101 self.compiled_host_fs_factory,
108 self.host_file_system, 102 self.host_file_system,
109 svn_constants.DOCS_PATH) 103 svn_constants.DOCS_PATH)
110 104
111 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory) 105 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory)
112 106
113 self.redirector = Redirector( 107 self.redirector = Redirector(
114 self.compiled_host_fs_factory, 108 self.compiled_host_fs_factory,
115 self.host_file_system, 109 self.host_file_system,
116 svn_constants.PUBLIC_TEMPLATE_PATH) 110 svn_constants.PUBLIC_TEMPLATE_PATH)
117 111
118 self.strings_json_path = '/'.join((svn_constants.JSON_PATH, 'strings.json')) 112 self.strings_json_path = '/'.join((svn_constants.JSON_PATH, 'strings.json'))
113 self.sidenav_json_base_path = svn_constants.JSON_PATH
119 self.manifest_json_path = '/'.join( 114 self.manifest_json_path = '/'.join(
120 (svn_constants.JSON_PATH, 'manifest.json')) 115 (svn_constants.JSON_PATH, 'manifest.json'))
121 self.manifest_features_path = '/'.join( 116 self.manifest_features_path = '/'.join(
122 (svn_constants.API_PATH, '_manifest_features.json')) 117 (svn_constants.API_PATH, '_manifest_features.json'))
123 118
124 self.template_data_source_factory = TemplateDataSource.Factory( 119 self.template_data_source_factory = TemplateDataSource.Factory(
125 self.api_data_source_factory, 120 self.api_data_source_factory,
126 self.api_list_data_source_factory, 121 self.api_list_data_source_factory,
127 self.intro_data_source_factory, 122 self.intro_data_source_factory,
128 self.samples_data_source_factory, 123 self.samples_data_source_factory,
129 self.sidenav_data_source_factory,
130 self.compiled_host_fs_factory, 124 self.compiled_host_fs_factory,
131 self.ref_resolver_factory, 125 self.ref_resolver_factory,
132 self.permissions_data_source, 126 self.permissions_data_source,
133 svn_constants.PUBLIC_TEMPLATE_PATH, 127 svn_constants.PUBLIC_TEMPLATE_PATH,
134 svn_constants.PRIVATE_TEMPLATE_PATH, 128 svn_constants.PRIVATE_TEMPLATE_PATH,
135 base_path, 129 base_path)
136 # TODO(jshumway): Remove this hack after data source registry
137 # transition, ServerInstance should not know about DataSourceRegistry.
138 CreateDataSources(self))
139 130
140 self.api_data_source_factory.SetTemplateDataSource( 131 self.api_data_source_factory.SetTemplateDataSource(
141 self.template_data_source_factory) 132 self.template_data_source_factory)
142 self.permissions_data_source.SetTemplateDataSource( 133 self.permissions_data_source.SetTemplateDataSource(
143 self.template_data_source_factory) 134 self.template_data_source_factory)
144 135
145 @staticmethod 136 @staticmethod
146 def ForTest(file_system): 137 def ForTest(file_system):
147 object_store_creator = ObjectStoreCreator.ForTest() 138 object_store_creator = ObjectStoreCreator.ForTest()
148 return ServerInstance(object_store_creator, 139 return ServerInstance(object_store_creator,
(...skipping 14 matching lines...) Expand all
163 object_store_creator) 154 object_store_creator)
164 trunk_file_system = host_file_system_creator.Create() 155 trunk_file_system = host_file_system_creator.Create()
165 return ServerInstance( 156 return ServerInstance(
166 object_store_creator, 157 object_store_creator,
167 trunk_file_system, 158 trunk_file_system,
168 EmptyDirFileSystem(), 159 EmptyDirFileSystem(),
169 '', 160 '',
170 CompiledFileSystem.Factory(trunk_file_system, object_store_creator), 161 CompiledFileSystem.Factory(trunk_file_system, object_store_creator),
171 TestBranchUtility.CreateWithCannedData(), 162 TestBranchUtility.CreateWithCannedData(),
172 host_file_system_creator) 163 host_file_system_creator)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698