package com.intellij.vcs.log.impl; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.vcs.log.Hash; import com.intellij.vcs.log.VcsShortCommitDetails; import com.intellij.vcs.log.VcsUser; import org.jetbrains.annotations.NotNull; import java.util.List; public class VcsShortCommitDetailsImpl extends TimedVcsCommitImpl implements VcsShortCommitDetails { @NotNull private final String mySubject; @NotNull private final VcsUser myAuthor; @NotNull private final VirtualFile myRoot; @NotNull private final VcsUser myCommitter; private final long myAuthorTime; public VcsShortCommitDetailsImpl(@NotNull Hash hash, @NotNull List<Hash> parents, long commitTime, @NotNull VirtualFile root, @NotNull String subject, @NotNull VcsUser author, @NotNull VcsUser committer, long authorTime) { super(hash, parents, commitTime); myRoot = root; mySubject = subject; myAuthor = author; myCommitter = committer; myAuthorTime = authorTime; } @NotNull @Override public VirtualFile getRoot() { return myRoot; } @Override @NotNull public final String getSubject() { return mySubject; } @Override @NotNull public final VcsUser getAuthor() { return myAuthor; } @NotNull @Override public VcsUser getCommitter() { return myCommitter; } @Override public long getAuthorTime() { return myAuthorTime; } @Override public long getCommitTime() { return getTimestamp(); } @Override public String toString() { return getId().toShortString() + "(" + getSubject() + ")"; } }