@Override public int hashCode() { return Objects.hashCode(getId(), getTreeId(), getParentIds(), getAuthor(), getCommitter(), getMessage()); } }
public static RevCommit create(ObjectId id, ObjectId treeId, List<ObjectId> parents, RevPerson author, RevPerson committer, String message) { checkNotNull(id); checkNotNull(treeId); checkNotNull(parents); checkNotNull(author); checkNotNull(committer); checkNotNull(message); return new RevCommitImpl(id, treeId, ImmutableList.copyOf(parents), author, committer, message); }
/** * @return the {@code RevCommit} as a readable string */ @Override public String toString() { return "Commit[" + getId() + ", '" + message + "']"; }
public @Override @NonNull RevCommit createCommit(@NonNull ObjectId id, @NonNull ObjectId treeId, @NonNull List<ObjectId> parents, @NonNull RevPerson author, @NonNull RevPerson committer, @NonNull String message) { if (parents.indexOf(null) > -1) { throw new NullPointerException("null parent at index " + parents.indexOf(null)); } return new RevCommitImpl(id, treeId, ImmutableList.copyOf(parents), author, committer, message); }
/** * Equality is based on author, committer, message, parent ids, and tree id. * * @see AbstractRevObject#equals(java.lang.Object) */ @Override public boolean equals(Object o) { if (!(o instanceof RevCommit) && !super.equals(o)) { return false; } RevCommit c = (RevCommit) o; return equal(getAuthor(), c.getAuthor()) && equal(getCommitter(), c.getCommitter()) && equal(getMessage(), c.getMessage()) && equal(getParentIds(), c.getParentIds()) && equal(getTreeId(), c.getTreeId()); }
public RevCommit build() { if (treeId == null) { throw new IllegalStateException("No tree id set"); } final ObjectId treeId = this.treeId; final ImmutableList<ObjectId> parentIds = ImmutableList.copyOf(this.parentIds); final RevPerson author = RevPersonBuilder.build(this.author, authorEmail, getAuthorTimestamp(), getAuthorTimeZoneOffset()); final RevPerson committer = RevPersonBuilder.build(this.committer, committerEmail, getCommitterTimestamp(), getCommitterTimeZoneOffset()); final String commitMessage = this.message == null ? "" : this.message; final ObjectId commitId = HashObject.hashCommit(treeId, parentIds, author, committer, commitMessage); return new RevCommitImpl(commitId, treeId, parentIds, author, committer, commitMessage); }