boolean (@NotNull AbstractVcs vcs, @NotNull FilePath filePath, @NotNull VcsHistorySessionConsumer partner) { VcsCachingHistory history = new VcsCachingHistory(vcs, Objects.requireNonNull(vcs.getVcsHistoryProvider()), vcs.getDiffProvider()); VcsCacheableHistorySessionFactory<Serializable, VcsAbstractHistorySession> cacheableFactory = history.getCacheableFactory(); if (cacheableFactory != null) { VcsAbstractHistorySession session = history.getHistoryCache().getSession(filePath, vcs.getKeyInstanceMethod(), cacheableFactory, false); if (session != null) { ProgressManager.getInstance().run(new Task.Backgroundable(vcs.getProject(), VcsBundle.message("loading.file.history.progress"), true) { @Override public void run(@NotNull ProgressIndicator indicator) { partner.reportCreatedEmptySession(session); partner.finished(); } }); return true; } } return false; }