私はトレーサビリティを可能にするEclipseプラグインに取り組んでいます。私は、トレースされた項目が変更(削除、名前変更、または編集)されるたびにユーザーに通知する通知システムを実装しています。その目的のためにIResourceChangeListenerを実装しましたが、Java要素に必要なすべてのサポートを提供しません。IResourceDeltaからIJavaElementDeltaオブジェクトを取得する方法はありますか?
たとえば、Javaメソッドの名前を.javaファイルの名前に変更すると、編集されたファイルのみが表示されますが、このメソッドについての情報も表示したいと考えています。私はこれがIElementChangedListenerを実装することで実現できることを知っていますが、その周りには何か方法がありますか?私は本当に2つのリスナー(他のファイルのためのResourceListenerとJava要素のElementChangedListenerのみ)を実装する必要がありますか、何とかIResourceDeltaからIJavaElementDelta(通常ElementChangedListenerから取得)を取得できますか?ありがとう!
私はそう思っていましたが、あなたの答えではないかどうかを調査し続けました。どうもありがとうございました! –
完全に同意します。 2番目のリスナーを実装するためにいくつかの行を節約しようとすると、ほとんどのorg.eclipse.jdt.internal.core.DeltaProcessorを再実装する必要があります。これはリソース変更イベントを受け取り、2kLOC +でIJavaElementDeltasを送出します。 –