| OLD | NEW |
| (Empty) |
| 1 <!-- | |
| 2 Copyright 2014 The Chromium Authors. All rights reserved. | |
| 3 Use of this source code is governed by a BSD-style license that can be | |
| 4 found in the LICENSE file. | |
| 5 --> | |
| 6 | |
| 7 <link rel="import" href="ct-commit-log.html"> | |
| 8 <link rel="import" href="ct-repository-commit-list.html"> | |
| 9 | |
| 10 <script> | |
| 11 function CTCommitList(commitLog, revisions) { | |
| 12 this._initRevisions(revisions); | |
| 13 this.update(commitLog); | |
| 14 } | |
| 15 | |
| 16 CTCommitList.prototype.update = function(commitLog) { | |
| 17 this.repositories = []; | |
| 18 if (!commitLog) | |
| 19 return; | |
| 20 | |
| 21 var allRepositories = commitLog._repositories.names; | |
| 22 for (var i = 0; i < allRepositories.length; i++) { | |
| 23 var repository = allRepositories[i]; | |
| 24 if (!this.revisions[repository]) | |
| 25 continue; | |
| 26 | |
| 27 var commits = commitLog.range(repository, this.revisions[repository]); | |
| 28 if (!commits.length) | |
| 29 continue; | |
| 30 | |
| 31 this.repositories.push(new CTRepositoryCommitList(repository, commits)); | |
| 32 } | |
| 33 }; | |
| 34 | |
| 35 CTCommitList.prototype._initRevisions = function(repoRevisions) { | |
| 36 this.revisions = {}; | |
| 37 repoRevisions.forEach(function(repoRevision) { | |
| 38 var split = repoRevision.split(':'); | |
| 39 var repo = split[0]; | |
| 40 var revision = parseInt(split[1], 10); | |
| 41 if (revision && repo) { | |
| 42 if (!this.revisions[repo]) { | |
| 43 this.revisions[repo] = [revision]; | |
| 44 } else { | |
| 45 this.revisions[repo].push(revision); | |
| 46 } | |
| 47 } | |
| 48 }.bind(this)); | |
| 49 }; | |
| 50 | |
| 51 </script> | |
| OLD | NEW |