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

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

Issue 491653002: Docserver: Use GitilesFileSystem instead of SubversionFileSystem (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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_categorizer import APICategorizer 5 from api_categorizer import APICategorizer
6 from api_models import APIModels 6 from api_models import APIModels
7 from availability_finder import AvailabilityFinder 7 from availability_finder import AvailabilityFinder
8 from empty_dir_file_system import EmptyDirFileSystem 8 from empty_dir_file_system import EmptyDirFileSystem
9 from environment import IsDevServer 9 from environment import IsDevServer
10 from features_bundle import FeaturesBundle 10 from features_bundle import FeaturesBundle
(...skipping 12 matching lines...) Expand all
23 self.api_categorizer = None 23 self.api_categorizer = None
24 self.samples_model = None 24 self.samples_model = None
25 25
26 26
27 class PlatformBundle(object): 27 class PlatformBundle(object):
28 '''Creates various objects for different platforms 28 '''Creates various objects for different platforms
29 ''' 29 '''
30 def __init__(self, 30 def __init__(self,
31 branch_utility, 31 branch_utility,
32 compiled_fs_factory, 32 compiled_fs_factory,
33 host_fs_at_trunk, 33 host_fs_at_master,
34 host_file_system_iterator, 34 host_file_system_iterator,
35 object_store_creator, 35 object_store_creator,
36 base_path): 36 base_path):
37 self._branch_utility = branch_utility 37 self._branch_utility = branch_utility
38 self._compiled_fs_factory = compiled_fs_factory 38 self._compiled_fs_factory = compiled_fs_factory
39 self._host_fs_at_trunk = host_fs_at_trunk 39 self._host_fs_at_master = host_fs_at_master
40 self._host_file_system_iterator = host_file_system_iterator 40 self._host_file_system_iterator = host_file_system_iterator
41 self._object_store_creator = object_store_creator 41 self._object_store_creator = object_store_creator
42 self._base_path = base_path 42 self._base_path = base_path
43 self._platform_data = dict((p, _PlatformData()) for p in GetPlatforms()) 43 self._platform_data = dict((p, _PlatformData()) for p in GetPlatforms())
44 44
45 def GetSamplesModel(self, platform): 45 def GetSamplesModel(self, platform):
46 if self._platform_data[platform].samples_model is None: 46 if self._platform_data[platform].samples_model is None:
47 # Note: samples are super slow in the dev server because it doesn't 47 # Note: samples are super slow in the dev server because it doesn't
48 # support async fetch, so disable them. 48 # support async fetch, so disable them.
49 if IsDevServer(): 49 if IsDevServer():
50 extension_samples_fs = EmptyDirFileSystem() 50 extension_samples_fs = EmptyDirFileSystem()
51 app_samples_fs = EmptyDirFileSystem() 51 app_samples_fs = EmptyDirFileSystem()
52 else: 52 else:
53 extension_samples_fs = self._host_fs_at_trunk 53 extension_samples_fs = self._host_fs_at_master
54 # TODO(kalman): Re-enable the apps samples, see http://crbug.com/344097. 54 # TODO(kalman): Re-enable the apps samples, see http://crbug.com/344097.
55 app_samples_fs = EmptyDirFileSystem() 55 app_samples_fs = EmptyDirFileSystem()
56 #app_samples_fs = github_file_system_provider.Create( 56 #app_samples_fs = github_file_system_provider.Create(
57 # 'GoogleChrome', 'chrome-app-samples') 57 # 'GoogleChrome', 'chrome-app-samples')
58 self._platform_data[platform].samples_model = SamplesModel( 58 self._platform_data[platform].samples_model = SamplesModel(
59 extension_samples_fs, 59 extension_samples_fs,
60 app_samples_fs, 60 app_samples_fs,
61 self._compiled_fs_factory, 61 self._compiled_fs_factory,
62 self.GetReferenceResolver(platform), 62 self.GetReferenceResolver(platform),
63 self._base_path, 63 self._base_path,
64 platform) 64 platform)
65 return self._platform_data[platform].samples_model 65 return self._platform_data[platform].samples_model
66 66
67 def GetFeaturesBundle(self, platform): 67 def GetFeaturesBundle(self, platform):
68 if self._platform_data[platform].features_bundle is None: 68 if self._platform_data[platform].features_bundle is None:
69 self._platform_data[platform].features_bundle = FeaturesBundle( 69 self._platform_data[platform].features_bundle = FeaturesBundle(
70 self._host_fs_at_trunk, 70 self._host_fs_at_master,
71 self._compiled_fs_factory, 71 self._compiled_fs_factory,
72 self._object_store_creator, 72 self._object_store_creator,
73 platform) 73 platform)
74 return self._platform_data[platform].features_bundle 74 return self._platform_data[platform].features_bundle
75 75
76 def GetAPIModels(self, platform): 76 def GetAPIModels(self, platform):
77 if self._platform_data[platform].api_models is None: 77 if self._platform_data[platform].api_models is None:
78 # TODO(danielj41): Filter APIModels data here rather than passing the 78 # TODO(danielj41): Filter APIModels data here rather than passing the
79 # platform. 79 # platform.
80 self._platform_data[platform].api_models = APIModels( 80 self._platform_data[platform].api_models = APIModels(
81 self.GetFeaturesBundle(platform), 81 self.GetFeaturesBundle(platform),
82 self._compiled_fs_factory, 82 self._compiled_fs_factory,
83 self._host_fs_at_trunk, 83 self._host_fs_at_master,
84 self._object_store_creator, 84 self._object_store_creator,
85 platform) 85 platform)
86 return self._platform_data[platform].api_models 86 return self._platform_data[platform].api_models
87 87
88 def GetReferenceResolver(self, platform): 88 def GetReferenceResolver(self, platform):
89 if self._platform_data[platform].reference_resolver is None: 89 if self._platform_data[platform].reference_resolver is None:
90 self._platform_data[platform].reference_resolver = ReferenceResolver( 90 self._platform_data[platform].reference_resolver = ReferenceResolver(
91 self.GetAPIModels(platform), 91 self.GetAPIModels(platform),
92 self._object_store_creator.Create(ReferenceResolver, 92 self._object_store_creator.Create(ReferenceResolver,
93 category=platform)) 93 category=platform))
94 return self._platform_data[platform].reference_resolver 94 return self._platform_data[platform].reference_resolver
95 95
96 def GetAvailabilityFinder(self, platform): 96 def GetAvailabilityFinder(self, platform):
97 if self._platform_data[platform].availability_finder is None: 97 if self._platform_data[platform].availability_finder is None:
98 self._platform_data[platform].availability_finder = AvailabilityFinder( 98 self._platform_data[platform].availability_finder = AvailabilityFinder(
99 self._branch_utility, 99 self._branch_utility,
100 self._compiled_fs_factory, 100 self._compiled_fs_factory,
101 self._host_file_system_iterator, 101 self._host_file_system_iterator,
102 self._host_fs_at_trunk, 102 self._host_fs_at_master,
103 self._object_store_creator, 103 self._object_store_creator,
104 platform) 104 platform)
105 return self._platform_data[platform].availability_finder 105 return self._platform_data[platform].availability_finder
106 106
107 def GetAPICategorizer(self, platform): 107 def GetAPICategorizer(self, platform):
108 if self._platform_data[platform].api_categorizer is None: 108 if self._platform_data[platform].api_categorizer is None:
109 self._platform_data[platform].api_categorizer = APICategorizer( 109 self._platform_data[platform].api_categorizer = APICategorizer(
110 self._host_fs_at_trunk, 110 self._host_fs_at_master,
111 self._compiled_fs_factory, 111 self._compiled_fs_factory,
112 platform) 112 platform)
113 return self._platform_data[platform].api_categorizer 113 return self._platform_data[platform].api_categorizer
114 114
115 def Cron(self): 115 def Cron(self):
116 return All(self.GetAPIModels(platform).Cron() 116 return All(self.GetAPIModels(platform).Cron()
117 for platform in self._platform_data) 117 for platform in self._platform_data)
118 118
119 def GetIdentity(self): 119 def GetIdentity(self):
120 return self._host_fs_at_trunk.GetIdentity() 120 return self._host_fs_at_master.GetIdentity()
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698