Package com.google.gerrit.server
Class PatchSetUtil
- java.lang.Object
-
- com.google.gerrit.server.PatchSetUtil
-
public class PatchSetUtil extends Object
Utilities for manipulating patch sets.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.google.common.collect.ImmutableCollection<PatchSet>
byChange(ChangeNotes notes)
com.google.common.collect.ImmutableMap<PatchSet.Id,PatchSet>
byChangeAsMap(ChangeNotes notes)
void
checkPatchSetNotLocked(ChangeNotes notes)
Check if the current patch set of the change is locked.PatchSet
current(ChangeNotes notes)
PatchSet
get(ChangeNotes notes, PatchSet.Id psId)
com.google.common.collect.ImmutableMap<PatchSet.Id,PatchSet>
getAsMap(ChangeNotes notes, Set<PatchSet.Id> patchSetIds)
static org.eclipse.jgit.revwalk.RevCommit
getCurrentCommittedRevCommit(Project.NameKey project, org.eclipse.jgit.revwalk.RevWalk revWalk, ChangeNotes.Factory notesFactory, Change.Id changeId)
Gets the commit ID for the latest committed patch-set of a given change.static org.eclipse.jgit.revwalk.RevCommit
getCurrentRevCommitIncludingPending(RepoContext ctx, ChangeNotes.Factory notesFactory, Change.Id changeId)
Gets the commit ID for the latest patch-set of a given change.org.eclipse.jgit.revwalk.RevCommit
getRevCommit(Project.NameKey project, PatchSet patchSet)
Returns the commit for the given project at the given patchset revisionPatchSet
insert(org.eclipse.jgit.revwalk.RevWalk rw, ChangeUpdate update, PatchSet.Id psId, org.eclipse.jgit.lib.ObjectId commit, List<String> groups, String pushCertificate, String description)
boolean
isPatchSetLocked(ChangeNotes notes)
Is the current patch set locked against state changes?
-
-
-
Method Detail
-
current
public PatchSet current(ChangeNotes notes)
-
get
public PatchSet get(ChangeNotes notes, PatchSet.Id psId)
-
byChange
public com.google.common.collect.ImmutableCollection<PatchSet> byChange(ChangeNotes notes)
-
byChangeAsMap
public com.google.common.collect.ImmutableMap<PatchSet.Id,PatchSet> byChangeAsMap(ChangeNotes notes)
-
getAsMap
public com.google.common.collect.ImmutableMap<PatchSet.Id,PatchSet> getAsMap(ChangeNotes notes, Set<PatchSet.Id> patchSetIds)
-
insert
public PatchSet insert(org.eclipse.jgit.revwalk.RevWalk rw, ChangeUpdate update, PatchSet.Id psId, org.eclipse.jgit.lib.ObjectId commit, List<String> groups, String pushCertificate, String description) throws IOException
- Throws:
IOException
-
checkPatchSetNotLocked
public void checkPatchSetNotLocked(ChangeNotes notes) throws ResourceConflictException
Check if the current patch set of the change is locked.- Throws:
ResourceConflictException
-
isPatchSetLocked
public boolean isPatchSetLocked(ChangeNotes notes)
Is the current patch set locked against state changes?
-
getRevCommit
public org.eclipse.jgit.revwalk.RevCommit getRevCommit(Project.NameKey project, PatchSet patchSet) throws IOException
Returns the commit for the given project at the given patchset revision- Throws:
IOException
-
getCurrentRevCommitIncludingPending
public static org.eclipse.jgit.revwalk.RevCommit getCurrentRevCommitIncludingPending(RepoContext ctx, ChangeNotes.Factory notesFactory, Change.Id changeId) throws IOException
Gets the commit ID for the latest patch-set of a given change.This also takes into account the patch sets that are added in the provided
RepoContext
.- Parameters:
ctx
- to look for pending updates in.notesFactory
- to fetch existing patch sets with.changeId
- to get the latest commit for.- Returns:
- the latest commit ID.
- Throws:
IOException
- if no committed nor pending commits found for the change.
-
getCurrentCommittedRevCommit
public static org.eclipse.jgit.revwalk.RevCommit getCurrentCommittedRevCommit(Project.NameKey project, org.eclipse.jgit.revwalk.RevWalk revWalk, ChangeNotes.Factory notesFactory, Change.Id changeId) throws IOException
Gets the commit ID for the latest committed patch-set of a given change.This DOES NOT take into account the patch sets that are added in the provided
RepoContext
.- Parameters:
project
- name.notesFactory
- to fetch existing patch sets with.changeId
- to get the latest commit for.- Returns:
- the latest commit ID.
- Throws:
IOException
- if no committed commits found for the change.
-
-