more performance

This commit is contained in:
Gregory Shrago
2010-07-21 21:19:56 +04:00
parent 7179539257
commit 17a4b52f9a
@@ -36,6 +36,12 @@ import java.util.List;
public class TemporaryPlacesInjector implements MultiHostInjector {
public static final Logger LOG = Logger.getInstance("org.intellij.plugins.intelliLang.inject.TemporaryPlacesInjector");
private final TemporaryPlacesRegistry myRegistry;
public TemporaryPlacesInjector(TemporaryPlacesRegistry registry) {
myRegistry = registry;
}
@NotNull
public List<? extends Class<? extends PsiElement>> elementsToInjectIn() {
@@ -45,7 +51,7 @@ public class TemporaryPlacesInjector implements MultiHostInjector {
public void getLanguagesToInject(@NotNull final MultiHostRegistrar registrar, @NotNull final PsiElement context) {
final PsiLanguageInjectionHost host = (PsiLanguageInjectionHost)context;
final PsiLanguageInjectionHost originalHost = PsiUtilBase.getOriginalElement(host, host.getClass());
final List<TemporaryPlacesRegistry.TemporaryPlace> list = TemporaryPlacesRegistry.getInstance(context.getProject()).getTempInjectionsSafe(originalHost);
final List<TemporaryPlacesRegistry.TemporaryPlace> list = myRegistry.getTempInjectionsSafe(originalHost);
if (list.isEmpty()) return;
final ElementManipulator<PsiLanguageInjectionHost> manipulator = ElementManipulators.getManipulator(host);
if (manipulator == null) return;