发现与颠覆性API的冲突

时间:2011-02-22 14:48:01

标签: eclipse subversive

我正在编写一个eclipse插件来更新我工作区中的一些项目。更新后,可能会有冲突。如果更新的项目中存在一些冲突,我想向用户显示一个对话框。

要更新,我使用UpdateOperation,然后在更新的项目上执行IResource.refreshLocal()。要查找冲突,请使用FileUtility.checkForResourcesPresenceRecursive(resources, IStateFilter.SF_CONFLICTING)。还尝试使用IStateFilter.SF_CONTENT_CONFLICTINGIStateFilter.SF_TREE_CONFLICTING。通常他们会返回false

当我在调试模式下运行时,前两个返回true。这让我觉得有一些事件在刷新后被解雇,并且在调试模式下失去了时间,Subversive会了解它。我对吗 ?这是什么事?它不是IResourceChangeEvent。试着在没有运气的情况下听POST_CHANGED

你有暗示吗?谢谢。

1 个答案:

答案 0 :(得分:0)

比我想象的容易。 UpdateOperation(以及CommitOperationMergeOperation)类扩展了提供AbstractConflictDetectionOperation方法的hasUnresolvedConflicts()。这样就可以了;)