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

Unified 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, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/server2/gitiles_file_system.py
diff --git a/chrome/common/extensions/docs/server2/gitiles_file_system.py b/chrome/common/extensions/docs/server2/gitiles_file_system.py
index 5e2f86784a1b60dee722ef499514f234a2c92121..e903109a282893b0d14379b2be91fa21b756d8d6 100644
--- a/chrome/common/extensions/docs/server2/gitiles_file_system.py
+++ b/chrome/common/extensions/docs/server2/gitiles_file_system.py
@@ -106,7 +106,8 @@ class GitilesFileSystem(FileSystem):
# ...
# }
def list_dir(json_data):
- return [e['name'] for e in _ParseGitilesJson(json_data)['entries']]
+ entries = _ParseGitilesJson(json_data)['entries']
+ return [e['name'] + ('/' if e['type'] == 'tree' else '') for e in entries]
def fixup_url_format(path):
# By default, Gitiles URLs display resources in HTML. To get resources
@@ -135,8 +136,8 @@ class GitilesFileSystem(FileSystem):
return Future(value=())
@memoize
- def GetCommitID(self):
- '''Returns a future that resolves to the commit ID for this branch.
+ def _GetCommitInfo(self, key):
+ '''Retrieves a value from the Gitiles JSON commit view.
'''
# Commit information for a branch is obtained by appending '?format=JSON'
# to the branch URL. Note that '<gitiles_url>/<branch>?format=JSON' is
@@ -150,12 +151,24 @@ class GitilesFileSystem(FileSystem):
# {
# "commit": "8fd578e1a7b142cd10a4387861f05fb9459b69e2", # Commit ID.
# "tree": "3ade65d8a91eadd009a6c9feea8f87db2c528a53", # Tree ID.
+ # # Previous Commit ID.
+ # "parents": ["a477c787fe847ae0482329f69b39ce0fde047359"],
# "author": {...},
# "committer": {...},
# "message": <codereview message>,
# ...
# }
- return content_future.Then(lambda json: _ParseGitilesJson(json)['commit'])
+ return content_future.Then(lambda json: _ParseGitilesJson(json)[key])
+
+ def GetCommitID(self):
+ '''Returns a future that resolves to the commit ID for this branch.
+ '''
+ return self._GetCommitInfo('commit')
+
+ def GetPreviousCommitID(self):
+ '''Returns a future that resolves to the previous commit ID for this branch.
+ '''
+ return self._GetCommitInfo('parents').Then(lambda parents: parents[0])
def Stat(self, path):
return self.StatAsync(path).Get()

Powered by Google App Engine
This is Rietveld 408576698