RCP アプリケーションにxmlファイルがあります。を使用してユーザーに表示していますFormEditor
。
public class MyFormEditor extends FormEditor implements IResourceChangeListener{
public MyFormEditor(){
ResourcePlugin.getWorkspace.addResourceChangeListener(this);
...
}
@Override
public void resourceChanged(IResourceChangeEvent event){
int type = event.getType();
switch(type){
IResourceChangeEvent.PRE_DELETE:
IResourceChangeEvent.PRE_CLOSE:
this.close(true);
break;
IResourceChangeEvent.POST_CHANGE:
System.out.println("Resource is change.");
break;
default:
break;
}
}
@Override
public void dispose(){
ResourcePlugin.getWorkspace.removeResourceChangeListener(this);
super.dispose();
}
}
IResourceChange.POST_CHANGE
リソースを保存するか、SVN リポジトリからリソースを更新すると、イベントがトリガーされます。
IResourceChange.POST_CHANGE
リソースがSVNから更新されていることを確認する方法は?
次のことを試しましたが、うまくいきませんでした。
IResourceDelta delta = event.getDelta;
int flags = delta.getFlags();
boolean sync = (flags & IResourceDelta.SYNC) != 0;
if(sync){
System.out.println("Resource updated from server.");
}
他に情報が必要な場合はお知らせください。