@NotNull public ListMergeStatus check( @NotNull CommittedChangeList list, @NotNull MergeInfoCached state, boolean isCached) { SvnMergeInfoCache.MergeCheckResult mergeCheckResult = state.getMap().get(list.getNumber()); ListMergeStatus result = state.copiedAfter(list) ? ListMergeStatus.COMMON : ListMergeStatus.from(mergeCheckResult); return ObjectUtils.notNull( result, isCached ? ListMergeStatus.REFRESHING : ListMergeStatus.ALIEN); }
@Nullable public CommittedChangeListsListener createRefresher(boolean ignoreEnabled) { CommittedChangeListsListener result = null; if (refreshEnabled(ignoreEnabled)) { // on awt thread final MergeInfoCached state = myMergeInfoCache.getCachedState(myPanel.getWcInfo(), myPanel.getLocalBranch()); myCachedMap.put( createKey(myPanel.getWcInfo(), myPanel.getBranch()), state != null ? state.copy() : new MergeInfoCached()); myMergeInfoCache.clear(myPanel.getWcInfo(), myPanel.getLocalBranch()); result = new MyRefresher(); } return result; }