diff options
Diffstat (limited to 'gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java')
-rw-r--r-- | gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java b/gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java index 9ad8e3aeeb..d61e6e755f 100644 --- a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java +++ b/gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/patch/PatchScriptFactory.java @@ -17,27 +17,28 @@ package com.google.gerrit.httpd.rpc.patch; import com.google.gerrit.common.data.CommentDetail; import com.google.gerrit.common.data.PatchScript; import com.google.gerrit.httpd.rpc.Handler; -import com.google.gerrit.reviewdb.Account; -import com.google.gerrit.reviewdb.AccountDiffPreference; -import com.google.gerrit.reviewdb.Change; -import com.google.gerrit.reviewdb.Patch; -import com.google.gerrit.reviewdb.PatchLineComment; -import com.google.gerrit.reviewdb.PatchSet; -import com.google.gerrit.reviewdb.Project; -import com.google.gerrit.reviewdb.ReviewDb; -import com.google.gerrit.reviewdb.AccountDiffPreference.Whitespace; -import com.google.gerrit.reviewdb.Patch.ChangeType; +import com.google.gerrit.reviewdb.client.Account; +import com.google.gerrit.reviewdb.client.AccountDiffPreference; +import com.google.gerrit.reviewdb.client.Change; +import com.google.gerrit.reviewdb.client.Patch; +import com.google.gerrit.reviewdb.client.PatchLineComment; +import com.google.gerrit.reviewdb.client.PatchSet; +import com.google.gerrit.reviewdb.client.Project; +import com.google.gerrit.reviewdb.client.AccountDiffPreference.Whitespace; +import com.google.gerrit.reviewdb.client.Patch.ChangeType; +import com.google.gerrit.reviewdb.server.ReviewDb; import com.google.gerrit.server.CurrentUser; import com.google.gerrit.server.IdentifiedUser; import com.google.gerrit.server.account.AccountInfoCacheFactory; import com.google.gerrit.server.git.GitRepositoryManager; +import com.google.gerrit.server.git.LargeObjectException; import com.google.gerrit.server.patch.PatchList; import com.google.gerrit.server.patch.PatchListCache; import com.google.gerrit.server.patch.PatchListEntry; import com.google.gerrit.server.patch.PatchListKey; import com.google.gerrit.server.project.ChangeControl; import com.google.gerrit.server.project.NoSuchChangeException; -import com.google.gwtorm.client.OrmException; +import com.google.gwtorm.server.OrmException; import com.google.inject.Inject; import com.google.inject.Provider; import com.google.inject.assistedinject.Assisted; @@ -120,7 +121,8 @@ class PatchScriptFactory extends Handler<PatchScript> { } @Override - public PatchScript call() throws OrmException, NoSuchChangeException { + public PatchScript call() throws OrmException, NoSuchChangeException, + LargeObjectException { validatePatchSetId(psa); validatePatchSetId(psb); @@ -156,6 +158,8 @@ class PatchScriptFactory extends Handler<PatchScript> { } catch (IOException e) { log.error("File content unavailable", e); throw new NoSuchChangeException(changeId, e); + } catch (org.eclipse.jgit.errors.LargeObjectException err) { + throw new LargeObjectException("File content is too large", err); } } finally { git.close(); @@ -287,7 +291,7 @@ class PatchScriptFactory extends Handler<PatchScript> { private void loadPublished(final Map<Patch.Key, Patch> byKey, final AccountInfoCacheFactory aic, final String file) throws OrmException { - for (PatchLineComment c : db.patchComments().published(changeId, file)) { + for (PatchLineComment c : db.patchComments().publishedByChangeFile(changeId, file)) { if (comments.include(c)) { aic.want(c.getAuthor()); } @@ -303,7 +307,7 @@ class PatchScriptFactory extends Handler<PatchScript> { private void loadDrafts(final Map<Patch.Key, Patch> byKey, final AccountInfoCacheFactory aic, final Account.Id me, final String file) throws OrmException { - for (PatchLineComment c : db.patchComments().draft(changeId, file, me)) { + for (PatchLineComment c : db.patchComments().draftByChangeFileAuthor(changeId, file, me)) { if (comments.include(c)) { aic.want(me); } |