move registerResourceTemporarily() to ExternalResourceManagerImpl

This commit is contained in:
Dmitry Jemerov
2011-08-24 07:43:41 +02:00
parent 2589ee4756
commit 076f8e3d73
2 changed files with 20 additions and 19 deletions
@@ -31,7 +31,6 @@ import com.intellij.openapi.editor.*;
import com.intellij.openapi.editor.actionSystem.EditorActionHandler;
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
import com.intellij.openapi.editor.actionSystem.TypedAction;
import com.intellij.openapi.editor.ex.DocumentEx;
import com.intellij.openapi.editor.impl.DocumentImpl;
import com.intellij.openapi.editor.impl.EditorImpl;
import com.intellij.openapi.fileEditor.FileEditorManager;
@@ -708,22 +707,4 @@ public abstract class CodeInsightTestCase extends PsiTestCase {
assertNotNull("Package " + name + " not found", aPackage);
return aPackage;
}
protected void registerResourceTemporarily(final String url, final String location) {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
public void run() {
ExternalResourceManager.getInstance().addResource(url, location);
}
});
Disposer.register(getTestRootDisposable(), new Disposable() {
@Override
public void dispose() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
public void run() {
ExternalResourceManager.getInstance().removeResource(url);
}
});
}
});
}
}
@@ -17,6 +17,7 @@ package com.intellij.javaee;
import com.intellij.application.options.PathMacrosImpl;
import com.intellij.application.options.ReplacePathToMacroMap;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.components.ExpandMacroToPathMap;
import com.intellij.openapi.components.ServiceManager;
@@ -428,6 +429,25 @@ public class ExternalResourceManagerImpl extends ExternalResourceManagerEx imple
fireExternalResourceChanged();
}
public static void registerResourceTemporarily(final String url, final String location, Disposable disposable) {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
public void run() {
getInstance().addResource(url, location);
}
});
Disposer.register(disposable, new Disposable() {
@Override
public void dispose() {
ApplicationManager.getApplication().runWriteAction(new Runnable() {
public void run() {
getInstance().removeResource(url);
}
});
}
});
}
static class Resource {
String file;
ClassLoader classLoader;