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

Side by Side Diff: chrome/common/extensions/docs/server2/gitiles_file_system.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 base64 import b64decode 5 from base64 import b64decode
6 from itertools import izip 6 from itertools import izip
7 import json 7 import json
8 import posixpath 8 import posixpath
9 import traceback 9 import traceback
10 10
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 # commit info JSON content. 168 # commit info JSON content.
169 fetch_future = self._fetcher.FetchAsync(self._base_url + _JSON_FORMAT) 169 fetch_future = self._fetcher.FetchAsync(self._base_url + _JSON_FORMAT)
170 content_future = self._ResolveFetchContent(self._base_url, fetch_future) 170 content_future = self._ResolveFetchContent(self._base_url, fetch_future)
171 return content_future.Then(lambda json: _ParseGitilesJson(json)[key]) 171 return content_future.Then(lambda json: _ParseGitilesJson(json)[key])
172 172
173 def GetCommitID(self): 173 def GetCommitID(self):
174 '''Returns a future that resolves to the commit ID for this branch. 174 '''Returns a future that resolves to the commit ID for this branch.
175 ''' 175 '''
176 return self._GetCommitInfo('commit') 176 return self._GetCommitInfo('commit')
177 177
178 def GetPreviousCommitID(self):
179 '''Returns a future that resolves to the previous commit ID for this branch.
180 '''
181 return self._GetCommitInfo('parents').Then(lambda parents: parents[0])
182
178 def StatAsync(self, path): 183 def StatAsync(self, path):
179 dir_, filename = posixpath.split(path) 184 dir_, filename = posixpath.split(path)
180 def stat(content): 185 def stat(content):
181 stat_info = _CreateStatInfo(content) 186 stat_info = _CreateStatInfo(content)
182 if stat_info.version is None: 187 if stat_info.version is None:
183 raise FileSystemError('Failed to find version of dir %s' % dir_) 188 raise FileSystemError('Failed to find version of dir %s' % dir_)
184 if IsDirectory(path): 189 if IsDirectory(path):
185 return stat_info 190 return stat_info
186 if filename not in stat_info.child_versions: 191 if filename not in stat_info.child_versions:
187 raise FileNotFoundError( 192 raise FileNotFoundError(
188 '%s from %s was not in child versions for Stat' % (filename, path)) 193 '%s from %s was not in child versions for Stat' % (filename, path))
189 return StatInfo(stat_info.child_versions[filename]) 194 return StatInfo(stat_info.child_versions[filename])
190 fetch_future = self._FetchAsync(ToDirectory(dir_) + _JSON_FORMAT) 195 fetch_future = self._FetchAsync(ToDirectory(dir_) + _JSON_FORMAT)
191 return self._ResolveFetchContent(path, fetch_future).Then(stat) 196 return self._ResolveFetchContent(path, fetch_future).Then(stat)
192 197
193 def GetIdentity(self): 198 def GetIdentity(self):
194 # NOTE: Do not use commit information to create the string identity. 199 # NOTE: Do not use commit information to create the string identity.
195 # Doing so will mess up caching. 200 # Doing so will mess up caching.
196 if self._commit is None and self._branch != 'master': 201 if self._commit is None and self._branch != 'master':
197 str_id = GITILES_BRANCH_BASE 202 str_id = GITILES_BRANCH_BASE
198 else: 203 else:
199 str_id = GITILES_BASE 204 str_id = GITILES_BASE
200 return '@'.join((self.__class__.__name__, StringIdentity(str_id))) 205 return '@'.join((self.__class__.__name__, StringIdentity(str_id)))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698