List of usage examples for org.eclipse.jgit.lib Repository getAllRefsByPeeledObjectId
@NonNull
public Map<AnyObjectId, Set<Ref>> getAllRefsByPeeledObjectId()
From source file:com.gitblit.utils.JGitUtils.java
License:Apache License
public static long getTicketNumberFromCommitBranch(Repository repository, RevCommit commit) { // try lookup by change ref Map<AnyObjectId, Set<Ref>> map = repository.getAllRefsByPeeledObjectId(); Set<Ref> refs = map.get(commit.getId()); if (!ArrayUtils.isEmpty(refs)) { for (Ref ref : refs) { long number = PatchsetCommand.getTicketNumber(ref.getName()); if (number > 0) { return number; }/*from w ww . j a va2s . c o m*/ } } return 0; }
From source file:com.google.gitiles.LogServlet.java
License:Open Source License
@Override protected void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException { GitilesView view = ViewFilter.getView(req); Repository repo = ServletUtils.getRepository(req); RevWalk walk = null;/* ww w.ja v a2 s. c om*/ try { try { walk = newWalk(repo, view); } catch (IncorrectObjectTypeException e) { res.setStatus(SC_NOT_FOUND); return; } Optional<ObjectId> start = getStart(view.getParameters(), walk.getObjectReader()); if (start == null) { res.setStatus(SC_NOT_FOUND); return; } Map<String, Object> data = Maps.newHashMapWithExpectedSize(5); if (!view.getRevision().nameIsId()) { List<Map<String, Object>> tags = Lists.newArrayListWithExpectedSize(1); for (RevObject o : RevisionServlet.listObjects(walk, view.getRevision().getId())) { if (o instanceof RevTag) { tags.add(new TagSoyData(linkifier, req).toSoyData((RevTag) o)); } } if (!tags.isEmpty()) { data.put("tags", tags); } } Paginator paginator = new Paginator(walk, limit, start.orNull()); Map<AnyObjectId, Set<Ref>> refsById = repo.getAllRefsByPeeledObjectId(); List<Map<String, Object>> entries = Lists.newArrayListWithCapacity(limit); for (RevCommit c : paginator) { entries.add(new CommitSoyData(null, req, repo, walk, view, refsById).toSoyData(c, KeySet.SHORTLOG)); } String title = "Log - "; if (view.getOldRevision() != Revision.NULL) { title += view.getRevisionRange(); } else { title += view.getRevision().getName(); } data.put("title", title); data.put("entries", entries); ObjectId next = paginator.getNextStart(); if (next != null) { data.put("nextUrl", copyAndCanonicalize(view).replaceParam(START_PARAM, next.name()).toUrl()); } ObjectId prev = paginator.getPreviousStart(); if (prev != null) { GitilesView.Builder prevView = copyAndCanonicalize(view); if (!prevView.getRevision().getId().equals(prev)) { prevView.replaceParam(START_PARAM, prev.name()); } data.put("previousUrl", prevView.toUrl()); } render(req, res, "gitiles.logDetail", data); } catch (RevWalkException e) { log.warn("Error in rev walk", e); res.setStatus(SC_INTERNAL_SERVER_ERROR); return; } finally { if (walk != null) { walk.release(); } } }