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 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 self.object_store_creator) |
| 56 |
52 self.availability_finder = AvailabilityFinder( | 57 self.availability_finder = AvailabilityFinder( |
53 self.host_file_system_iterator, | 58 self.host_file_system_iterator, |
54 object_store_creator, | 59 object_store_creator, |
55 branch_utility, | 60 branch_utility, |
56 host_file_system) | 61 host_file_system) |
57 | 62 |
58 self.api_list_data_source_factory = APIListDataSource.Factory( | 63 self.api_list_data_source_factory = APIListDataSource.Factory( |
59 self.compiled_host_fs_factory, | 64 self.compiled_host_fs_factory, |
60 self.host_file_system, | 65 self.host_file_system, |
61 svn_constants.API_PATH, | 66 svn_constants.PUBLIC_TEMPLATE_PATH, |
62 svn_constants.PUBLIC_TEMPLATE_PATH) | 67 self.features_bundle, |
| 68 self.object_store_creator) |
63 | 69 |
64 self.api_data_source_factory = APIDataSource.Factory( | 70 self.api_data_source_factory = APIDataSource.Factory( |
65 self.compiled_host_fs_factory, | 71 self.compiled_host_fs_factory, |
66 svn_constants.API_PATH, | 72 svn_constants.API_PATH, |
67 self.availability_finder, | 73 self.availability_finder, |
68 branch_utility) | 74 branch_utility) |
69 | 75 |
70 self.ref_resolver_factory = ReferenceResolver.Factory( | 76 self.ref_resolver_factory = ReferenceResolver.Factory( |
71 self.api_data_source_factory, | 77 self.api_data_source_factory, |
72 self.api_list_data_source_factory, | 78 self.api_list_data_source_factory, |
(...skipping 19 matching lines...) Expand all Loading... |
92 base_path) | 98 base_path) |
93 | 99 |
94 self.api_data_source_factory.SetSamplesDataSourceFactory( | 100 self.api_data_source_factory.SetSamplesDataSourceFactory( |
95 self.samples_data_source_factory) | 101 self.samples_data_source_factory) |
96 | 102 |
97 self.intro_data_source_factory = IntroDataSource.Factory( | 103 self.intro_data_source_factory = IntroDataSource.Factory( |
98 self.compiled_host_fs_factory, | 104 self.compiled_host_fs_factory, |
99 self.ref_resolver_factory, | 105 self.ref_resolver_factory, |
100 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH]) | 106 [svn_constants.INTRO_PATH, svn_constants.ARTICLE_PATH]) |
101 | 107 |
102 self.permissions_data_source = PermissionsDataSource( | 108 self.permissions_data_source = PermissionsDataSource(self) |
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 | 109 |
109 self.example_zipper = ExampleZipper( | 110 self.example_zipper = ExampleZipper( |
110 self.compiled_host_fs_factory, | 111 self.compiled_host_fs_factory, |
111 self.host_file_system, | 112 self.host_file_system, |
112 svn_constants.DOCS_PATH) | 113 svn_constants.DOCS_PATH) |
113 | 114 |
114 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory) | 115 self.path_canonicalizer = PathCanonicalizer(self.compiled_host_fs_factory) |
115 | 116 |
116 self.redirector = Redirector( | 117 self.redirector = Redirector( |
117 self.compiled_host_fs_factory, | 118 self.compiled_host_fs_factory, |
118 self.host_file_system, | 119 self.host_file_system, |
119 svn_constants.PUBLIC_TEMPLATE_PATH) | 120 svn_constants.PUBLIC_TEMPLATE_PATH) |
120 | 121 |
121 self.strings_json_path = '/'.join((svn_constants.JSON_PATH, 'strings.json')) | 122 self.strings_json_path = svn_constants.STRINGS_JSON_PATH |
122 self.sidenav_json_base_path = svn_constants.JSON_PATH | 123 self.sidenav_json_base_path = svn_constants.JSON_PATH |
123 self.manifest_json_path = '/'.join( | 124 self.manifest_json_path = svn_constants.MANIFEST_JSON_PATH |
124 (svn_constants.JSON_PATH, 'manifest.json')) | 125 self.manifest_features_path = svn_constants.MANIFEST_FEATURES_PATH |
125 self.manifest_features_path = '/'.join( | |
126 (svn_constants.API_PATH, '_manifest_features.json')) | |
127 | 126 |
128 self.template_data_source_factory = TemplateDataSource.Factory( | 127 self.template_data_source_factory = TemplateDataSource.Factory( |
129 self.api_data_source_factory, | 128 self.api_data_source_factory, |
130 self.api_list_data_source_factory, | 129 self.api_list_data_source_factory, |
131 self.intro_data_source_factory, | 130 self.intro_data_source_factory, |
132 self.samples_data_source_factory, | 131 self.samples_data_source_factory, |
133 self.compiled_host_fs_factory, | 132 self.compiled_host_fs_factory, |
134 self.ref_resolver_factory, | 133 self.ref_resolver_factory, |
135 self.permissions_data_source, | 134 self.permissions_data_source, |
136 svn_constants.PUBLIC_TEMPLATE_PATH, | 135 svn_constants.PUBLIC_TEMPLATE_PATH, |
(...skipping 26 matching lines...) Expand all Loading... |
163 object_store_creator) | 162 object_store_creator) |
164 trunk_file_system = host_file_system_creator.Create() | 163 trunk_file_system = host_file_system_creator.Create() |
165 return ServerInstance( | 164 return ServerInstance( |
166 object_store_creator, | 165 object_store_creator, |
167 trunk_file_system, | 166 trunk_file_system, |
168 EmptyDirFileSystem(), | 167 EmptyDirFileSystem(), |
169 '', | 168 '', |
170 CompiledFileSystem.Factory(trunk_file_system, object_store_creator), | 169 CompiledFileSystem.Factory(trunk_file_system, object_store_creator), |
171 TestBranchUtility.CreateWithCannedData(), | 170 TestBranchUtility.CreateWithCannedData(), |
172 host_file_system_creator) | 171 host_file_system_creator) |
OLD | NEW |