remove refresh with modality state from VirtualFileManager API

This commit is contained in:
Dmitry Jemerov
2011-08-19 20:48:38 +04:00
parent 24a1e71a72
commit df988b50f8
7 changed files with 14 additions and 15 deletions
@@ -17,7 +17,6 @@ package com.intellij.openapi.vfs;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ApplicationComponentLocator;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.util.ModificationTracker;
import com.intellij.openapi.vfs.newvfs.BulkFileListener;
import com.intellij.util.messages.Topic;
@@ -73,8 +72,6 @@ public abstract class VirtualFileManager implements ModificationTracker{
*/
public abstract void refresh(boolean asynchronous, @Nullable Runnable postAction);
public abstract void refresh(boolean asynchronous, @Nullable Runnable postAction, ModalityState modalityState);
/**
* Searches for the file specified by given URL. URL is a string which uniquely identifies file in all
* file systems.
@@ -42,6 +42,8 @@ public abstract class RefreshQueue {
session.launch();
}
public abstract void refreshLocalRoots(boolean async, @Nullable Runnable postAction, ModalityState modalityState);
public final void refresh(boolean async, boolean recursive, @Nullable Runnable finishRunnable, VirtualFile... files) {
refresh(async, recursive, finishRunnable, getDefaultModalityState(), files);
}
@@ -27,7 +27,6 @@ import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.project.ex.ProjectManagerEx;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.openapi.vfs.newvfs.NewVirtualFile;
import com.intellij.openapi.vfs.newvfs.RefreshQueue;
import com.intellij.openapi.vfs.newvfs.RefreshSession;
@@ -164,7 +163,7 @@ public class SaveAndSyncHandler implements ApplicationComponent {
if (LOG.isDebugEnabled()) {
LOG.debug("refresh VFS");
}
VirtualFileManager.getInstance().refresh(true, null, modalityState);
RefreshQueue.getInstance().refreshLocalRoots(true, null, modalityState);
}
}
@@ -18,14 +18,14 @@ package com.intellij.openapi.fileChooser.actions;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.openapi.project.DumbAware;
import com.intellij.openapi.vfs.newvfs.RefreshQueue;
/**
* @author yole
*/
public class RefreshFileChooserAction extends AnAction implements DumbAware {
public void actionPerformed(final AnActionEvent e) {
VirtualFileManager.getInstance().refresh(true, null, ModalityState.current());
RefreshQueue.getInstance().refreshLocalRoots(true, null, ModalityState.current());
}
}
@@ -118,7 +118,6 @@ public class VirtualFileManagerImpl extends VirtualFileManagerEx {
refresh(asynchronous, postAction, ModalityState.NON_MODAL);
}
@Override
public void refresh(boolean asynchronous, @Nullable Runnable postAction, ModalityState modalityState) {
if (!asynchronous) {
ApplicationManager.getApplication().assertIsDispatchThread();
@@ -97,6 +97,11 @@ public class RefreshQueueImpl extends RefreshQueue {
return new RefreshSessionImpl(async, recursively, finishRunnable, state);
}
@Override
public void refreshLocalRoots(boolean async, Runnable postAction, ModalityState modalityState) {
RefreshQueue.getInstance().refresh(async, true, postAction, modalityState, ManagingFS.getInstance().getLocalRoots());
}
public void processSingleEvent(VFileEvent event) {
new RefreshSessionImpl(Collections.singletonList(event)).launch();
}
@@ -16,12 +16,13 @@
package com.intellij.mock;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.util.ModificationTracker;
import com.intellij.openapi.vfs.*;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileListener;
import com.intellij.openapi.vfs.VirtualFileManagerListener;
import com.intellij.openapi.vfs.VirtualFileSystem;
import com.intellij.openapi.vfs.ex.VirtualFileManagerEx;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class MockVirtualFileManager extends VirtualFileManagerEx {
public MockVirtualFileManager() {
@@ -46,10 +47,6 @@ public class MockVirtualFileManager extends VirtualFileManagerEx {
public void refresh(boolean asynchronous, Runnable postAction) {
}
@Override
public void refresh(boolean asynchronous, @Nullable Runnable postAction, ModalityState modalityState) {
}
@Override
public VirtualFile findFileByUrl(@NotNull String url) {
return null;