diff --git a/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogProvider.java b/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogProvider.java index cfdd30fd2828..b10378f1b92a 100644 --- a/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogProvider.java +++ b/platform/vcs-log/api/src/com/intellij/vcs/log/VcsLogProvider.java @@ -77,7 +77,7 @@ public interface VcsLogProvider { * Reads those details of the given commits, which are necessary to be shown in the log table. */ @NotNull - List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) throws VcsException; + List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) throws VcsException; /** * Read full details of the given commits from the VCS. diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/data/MiniDetailsGetter.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/data/MiniDetailsGetter.java index 85d776f1ba60..bf9b2e6cf03e 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/data/MiniDetailsGetter.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/data/MiniDetailsGetter.java @@ -8,7 +8,6 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.vcs.log.VcsCommitMetadata; import com.intellij.vcs.log.VcsLogObjectsFactory; import com.intellij.vcs.log.VcsLogProvider; -import com.intellij.vcs.log.VcsShortCommitDetails; import com.intellij.vcs.log.data.index.IndexDataGetter; import com.intellij.vcs.log.data.index.IndexedDetails; import com.intellij.vcs.log.data.index.VcsLogIndex; @@ -21,7 +20,7 @@ import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Map; -public class MiniDetailsGetter extends AbstractDataGetter { +public class MiniDetailsGetter extends AbstractDataGetter { @NotNull private final TopCommitsCache myTopCommitsDetailsCache; @NotNull private final VcsLogObjectsFactory myFactory; @@ -39,26 +38,26 @@ public class MiniDetailsGetter extends AbstractDataGetter @Nullable @Override - protected VcsShortCommitDetails getFromAdditionalCache(int commitId) { + protected VcsCommitMetadata getFromAdditionalCache(int commitId) { return myTopCommitsDetailsCache.get(commitId); } @NotNull @Override - protected List readDetails(@NotNull VcsLogProvider logProvider, @NotNull VirtualFile root, - @NotNull List hashes) throws VcsException { + protected List readDetails(@NotNull VcsLogProvider logProvider, @NotNull VirtualFile root, + @NotNull List hashes) throws VcsException { return logProvider.readShortDetails(root, hashes); } @NotNull @Override - public TIntObjectHashMap preLoadCommitData(@NotNull TIntHashSet commits) throws VcsException { + public TIntObjectHashMap preLoadCommitData(@NotNull TIntHashSet commits) throws VcsException { IndexDataGetter dataGetter = myIndex.getDataGetter(); if (dataGetter == null) return super.preLoadCommitData(commits); TIntHashSet notIndexed = new TIntHashSet(); - TIntObjectHashMap result = TroveUtil.map2MapNotNull(commits, commit -> { + TIntObjectHashMap result = TroveUtil.map2MapNotNull(commits, commit -> { VcsCommitMetadata metadata = IndexedDetails.createMetadata(commit, dataGetter, myStorage, myFactory); if (metadata == null) notIndexed.add(commit); return metadata; diff --git a/platform/vcs-log/impl/test/com/intellij/vcs/log/impl/TestVcsLogProvider.java b/platform/vcs-log/impl/test/com/intellij/vcs/log/impl/TestVcsLogProvider.java index 291969e2bc62..55421d97cce7 100644 --- a/platform/vcs-log/impl/test/com/intellij/vcs/log/impl/TestVcsLogProvider.java +++ b/platform/vcs-log/impl/test/com/intellij/vcs/log/impl/TestVcsLogProvider.java @@ -141,7 +141,7 @@ public class TestVcsLogProvider implements VcsLogProvider { @NotNull @Override - public List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) { + public List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) { throw new UnsupportedOperationException(); } diff --git a/plugins/git4idea/src/git4idea/history/GitLogUtil.java b/plugins/git4idea/src/git4idea/history/GitLogUtil.java index 5d77c701c6f2..d34cfd714cdb 100644 --- a/plugins/git4idea/src/git4idea/history/GitLogUtil.java +++ b/plugins/git4idea/src/git4idea/history/GitLogUtil.java @@ -46,10 +46,10 @@ public class GitLogUtil { public static final String STDIN = "--stdin"; @NotNull - public static List collectShortDetails(@NotNull Project project, - @NotNull GitVcs vcs, - @NotNull VirtualFile root, - @NotNull List hashes) + public static List collectShortDetails(@NotNull Project project, + @NotNull GitVcs vcs, + @NotNull VirtualFile root, + @NotNull List hashes) throws VcsException { VcsLogObjectsFactory factory = getObjectsFactoryWithDisposeCheck(project); if (factory == null) { @@ -57,8 +57,8 @@ public class GitLogUtil { } GitLineHandler h = createGitHandler(project, root); - GitLogParser parser = new GitLogParser(project, GitLogParser.NameStatus.NONE, HASH, PARENTS, AUTHOR_NAME, - AUTHOR_EMAIL, COMMIT_TIME, SUBJECT, COMMITTER_NAME, COMMITTER_EMAIL, AUTHOR_TIME); + GitLogParser parser = new GitLogParser(project, GitLogParser.NameStatus.NONE, HASH, PARENTS, AUTHOR_NAME, AUTHOR_EMAIL, + COMMIT_TIME, SUBJECT, COMMITTER_NAME, COMMITTER_EMAIL, AUTHOR_TIME, BODY, RAW_BODY); h.setSilent(true); // git show can show either -p, or --name-status, or --name-only, but we need nothing, just details => using git log --no-walk h.addParameters(getNoWalkParameter(vcs)); @@ -77,10 +77,9 @@ public class GitLogUtil { parents.add(HashImpl.build(parent)); } record.setUsedHandler(h); - return factory.createShortDetails(HashImpl.build(record.getHash()), parents, record.getCommitTime(), root, - record.getSubject(), record.getAuthorName(), record.getAuthorEmail(), record.getCommitterName(), - record.getCommitterEmail(), - record.getAuthorTimeStamp()); + return factory.createCommitMetadata(HashImpl.build(record.getHash()), parents, record.getCommitTime(), root, + record.getSubject(), record.getAuthorName(), record.getAuthorEmail(), record.getFullMessage(), + record.getCommitterName(), record.getCommitterEmail(), record.getAuthorTimeStamp()); }); } @@ -167,7 +166,8 @@ public class GitLogUtil { List commits = ContainerUtil.newArrayList(); try { - GitLineHandler handler = createGitHandler(project, root, createConfigParameters(false, false, DiffRenameLimit.GIT_CONFIG), lowPriorityProcess); + GitLineHandler handler = + createGitHandler(project, root, createConfigParameters(false, false, DiffRenameLimit.GIT_CONFIG), lowPriorityProcess); readRecordsFromHandler(project, root, true, false, record -> commits.add(converter.fun(record)), handler, parameters); } catch (VcsException e) { @@ -240,7 +240,8 @@ public class GitLogUtil { @NotNull String... parameters) throws VcsException { DiffRenameLimit renameLimit = DiffRenameLimit.REGISTRY; - GitLineHandler handler = createGitHandler(project, root, createConfigParameters(true, includeRootChanges, renameLimit), lowPriorityProcess); + GitLineHandler handler = + createGitHandler(project, root, createConfigParameters(true, includeRootChanges, renameLimit), lowPriorityProcess); readFullDetailsFromHandler(project, root, commitConsumer, renameLimit, handler, preserverOrder, parameters); } diff --git a/plugins/git4idea/src/git4idea/log/GitLogProvider.java b/plugins/git4idea/src/git4idea/log/GitLogProvider.java index 8dd70a9fa774..24c79b84baf4 100644 --- a/plugins/git4idea/src/git4idea/log/GitLogProvider.java +++ b/plugins/git4idea/src/git4idea/log/GitLogProvider.java @@ -353,7 +353,7 @@ public class GitLogProvider implements VcsLogProvider { @NotNull @Override - public List readShortDetails(@NotNull final VirtualFile root, @NotNull List hashes) + public List readShortDetails(@NotNull final VirtualFile root, @NotNull List hashes) throws VcsException { return GitLogUtil.collectShortDetails(myProject, myVcs, root, hashes); } diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java index 6de385611830..f3c7d8e42294 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgHistoryUtil.java @@ -351,9 +351,9 @@ public class HgHistoryUtil { } @NotNull - public static List readMiniDetails(@NotNull final Project project, - @NotNull final VirtualFile root, - @NotNull List hashes) + public static List readCommitMetadata(@NotNull final Project project, + @NotNull final VirtualFile root, + @NotNull List hashes) throws VcsException { final VcsLogObjectsFactory factory = getObjectsFactoryWithDisposeCheck(project); if (factory == null) { @@ -372,15 +372,15 @@ public class HgHistoryUtil { HgCommandResult logResult = getLogResult(project, root, version, -1, strings, HgChangesetUtil.makeTemplate(templates)); - return getCommitRecords(project, logResult, new HgBaseLogParser() { + return getCommitRecords(project, logResult, new HgBaseLogParser() { @Override - protected VcsShortCommitDetails convertDetails(@NotNull String rev, - @NotNull String changeset, - @NotNull SmartList parents, - @NotNull Date revisionDate, - @NotNull String author, - @NotNull String email, - @NotNull List attributes) { + protected VcsCommitMetadata convertDetails(@NotNull String rev, + @NotNull String changeset, + @NotNull SmartList parents, + @NotNull Date revisionDate, + @NotNull String author, + @NotNull String email, + @NotNull List attributes) { String message = parseAdditionalStringAttribute(attributes, MESSAGE_INDEX); String subject = extractSubject(message); List parentsHash = new SmartList<>(); @@ -388,8 +388,8 @@ public class HgHistoryUtil { parentsHash.add(factory.createHash(parent.getChangeset())); } return factory - .createShortDetails(factory.createHash(changeset), parentsHash, revisionDate.getTime(), root, - subject, author, email, author, email, revisionDate.getTime()); + .createCommitMetadata(factory.createHash(changeset), parentsHash, revisionDate.getTime(), root, + subject, author, email, message, author, email, revisionDate.getTime()); } }); }); diff --git a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgLogProvider.java b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgLogProvider.java index bdf03b777f23..d5c7d678514d 100644 --- a/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgLogProvider.java +++ b/plugins/hg4idea/src/org/zmlx/hg4idea/log/HgLogProvider.java @@ -127,9 +127,9 @@ public class HgLogProvider implements VcsLogProvider { @NotNull @Override - public List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) + public List readShortDetails(@NotNull VirtualFile root, @NotNull List hashes) throws VcsException { - return HgHistoryUtil.readMiniDetails(myProject, root, hashes); + return HgHistoryUtil.readCommitMetadata(myProject, root, hashes); } @NotNull