diff options
Diffstat (limited to 'platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java')
-rw-r--r-- | platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java index 48b25be01ab9..975808611ed4 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/data/DataPack.java @@ -26,16 +26,14 @@ public class DataPack implements VcsLogDataPack { private boolean myFull; @NotNull - static DataPack build(@NotNull List<? extends GraphCommit<Integer>> commits, @NotNull RefsModel refsModel, - @NotNull NotNullFunction<Hash, Integer> indexGetter, @NotNull NotNullFunction<Integer, Hash> hashGetter, - @NotNull Map<VirtualFile, VcsLogProvider> providers, boolean full) { - return build(buildPermanentGraph(commits, refsModel, indexGetter, hashGetter, providers), providers, refsModel, full); - } - - @NotNull - static DataPack build(@NotNull PermanentGraph<Integer> permanentGraph, @NotNull Map<VirtualFile, VcsLogProvider> providers, - @NotNull RefsModel refsModel, boolean full) { - return new DataPack(refsModel, permanentGraph, createGraphFacade(permanentGraph), providers, full); + static DataPack build(@NotNull List<? extends GraphCommit<Integer>> commits, + @NotNull Map<VirtualFile, Set<VcsRef>> refs, + @NotNull Map<VirtualFile, VcsLogProvider> providers, + @NotNull VcsLogHashMap hashMap, + boolean full) { + RefsModel refsModel = new RefsModel(refs, hashMap.asIndexGetter()); + PermanentGraph<Integer> graph = buildPermanentGraph(commits, refsModel, hashMap.asIndexGetter(), hashMap.asHashGetter(), providers); + return new DataPack(refsModel, graph, createGraphFacade(graph), providers, full); } @NotNull @@ -57,11 +55,11 @@ public class DataPack implements VcsLogDataPack { } @NotNull - static PermanentGraph<Integer> buildPermanentGraph(@NotNull List<? extends GraphCommit<Integer>> commits, - @NotNull RefsModel refsModel, - @NotNull NotNullFunction<Hash, Integer> indexGetter, - @NotNull NotNullFunction<Integer, Hash> hashGetter, - @NotNull Map<VirtualFile, VcsLogProvider> providers) { + private static PermanentGraph<Integer> buildPermanentGraph(@NotNull List<? extends GraphCommit<Integer>> commits, + @NotNull RefsModel refsModel, + @NotNull NotNullFunction<Hash, Integer> indexGetter, + @NotNull NotNullFunction<Integer, Hash> hashGetter, + @NotNull Map<VirtualFile, VcsLogProvider> providers) { if (commits.isEmpty()) { return EmptyPermanentGraph.getInstance(); } |