Refactor XDocServlet: Move revision resolution into helper method Change-Id: I88bbc7d9a6fc3793ad963261d5e64057969c9cb7 Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
diff --git a/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocServlet.java b/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocServlet.java index e6fa865..8bb64c5 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocServlet.java +++ b/src/main/java/com/googlesource/gerrit/plugins/xdocs/XDocServlet.java
@@ -130,12 +130,7 @@ Repository repo = repoManager.openRepository(key.project); try { - ObjectId revId = - repo.resolve(MoreObjects.firstNonNull(rev, Constants.HEAD)); - if (revId == null) { - Resource.NOT_FOUND.send(req, res); - return; - } + ObjectId revId = resolveRevision(repo, rev); if (ObjectId.isId(rev)) { RevWalk rw = new RevWalk(repo); @@ -280,6 +275,16 @@ return rev; } + private static ObjectId resolveRevision(Repository repo, String revision) + throws ResourceNotFoundException, IOException { + ObjectId revId = + repo.resolve(MoreObjects.firstNonNull(revision, Constants.HEAD)); + if (revId == null) { + throw new ResourceNotFoundException(); + } + return revId; + } + private static String computeETag(Project.NameKey project, ObjectId revId, String file) { return Hashing.md5().newHasher()