summaryrefslogtreecommitdiffstats
path: root/gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java')
-rw-r--r--gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java57
1 files changed, 0 insertions, 57 deletions
diff --git a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java b/gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java
deleted file mode 100644
index 26e41987ab..0000000000
--- a/gerrit-httpd/src/main/java/com/google/gerrit/httpd/DirectChangeByCommit.java
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright 2011 Google Inc. All Rights Reserved.
-
-package com.google.gerrit.httpd;
-
-import com.google.common.base.CharMatcher;
-import com.google.common.collect.ImmutableList;
-import com.google.gerrit.common.PageLinks;
-import com.google.gerrit.extensions.api.changes.Changes;
-import com.google.gerrit.extensions.common.ChangeInfo;
-import com.google.gerrit.extensions.restapi.RestApiException;
-import com.google.gerrit.reviewdb.client.Change;
-import com.google.gerrit.reviewdb.client.Project;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-import java.io.IOException;
-import java.util.List;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-@Singleton
-class DirectChangeByCommit extends HttpServlet {
- private static final long serialVersionUID = 1L;
- private static final Logger log = LoggerFactory.getLogger(DirectChangeByCommit.class);
-
- private final Changes changes;
-
- @Inject
- DirectChangeByCommit(Changes changes) {
- this.changes = changes;
- }
-
- @Override
- protected void doGet(HttpServletRequest req, HttpServletResponse rsp) throws IOException {
- String query = CharMatcher.is('/').trimTrailingFrom(req.getPathInfo());
- List<ChangeInfo> results;
- try {
- results = changes.query(query).withLimit(2).get();
- } catch (RestApiException e) {
- log.warn("Cannot process query by URL: /r/" + query, e);
- results = ImmutableList.of();
- }
- String token;
- if (results.size() == 1) {
- // If exactly one change matches, link to that change.
- // TODO Link to a specific patch set, if one matched.
- ChangeInfo ci = results.iterator().next();
- token = PageLinks.toChange(new Project.NameKey(ci.project), new Change.Id(ci._number));
- } else {
- // Otherwise, link to the query page.
- token = PageLinks.toChangeQuery(query);
- }
- UrlModule.toGerrit(token, req, rsp);
- }
-}