From 4d50900ab86090da3318a4c9942d9156bb0d4573 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Thu, 21 Jun 2012 13:00:58 +0200 Subject: [PATCH 01/15] rename InjectedLanguageFacadeImpl back to InjectedLanguageUtil. Move method getInjectedPsiFiles from InjectedLanguageUtil to injectedLanguageManager. Move InjectedLanguageManager to core-api --- .../regexp/psi/impl/RegExpElementImpl.java | 4 +- .../impl/analysis/HighlightVisitorImpl.java | 4 +- .../psi/formatter/java/AbstractJavaBlock.java | 4 +- .../usages/impl/rules/ClassGroupingRule.java | 4 +- .../usages/impl/rules/MethodGroupingRule.java | 4 +- .../daemon/LightDaemonAnalyzerTestCase.java | 4 +- .../quickFix/LightQuickFixTestCase.java | 4 +- .../injection/InjectedLanguageManager.java | 4 ++ .../lang/injection/MultiHostInjector.java | 0 .../lang/injection/MultiHostRegistrar.java | 0 .../psi/impl/InjectedLanguageFacade.java | 35 ------------------ .../psi/impl/search/LowLevelSearchUtil.java | 6 ++- .../codeInsight/AutoPopupController.java | 4 +- .../actions/BaseCodeInsightAction.java | 4 +- .../completion/CodeCompletionHandlerBase.java | 14 +++---- .../impl/CompletionServiceImpl.java | 4 +- .../daemon/impl/CodeFoldingPass.java | 4 +- .../daemon/impl/GeneralHighlightingPass.java | 10 ++--- .../impl/IdentifierHighlighterPass.java | 4 +- .../daemon/impl/LineMarkersPass.java | 4 +- .../daemon/impl/LocalInspectionsPass.java | 4 +- .../daemon/impl/quickfix/QuickFixAction.java | 6 +-- .../documentation/DockablePopupManager.java | 5 +-- .../CompletionAutoPopupHandler.java | 8 ++-- .../editorActions/SelectWordHandler.java | 4 +- .../editorActions/TypedHandler.java | 6 +-- .../folding/impl/FoldingUpdate.java | 6 +-- .../impl/OffsetsElementSignatureProvider.java | 4 +- .../BraceHighlightingHandler.java | 6 +-- .../highlighting/HighlightManagerImpl.java | 4 +- .../intention/impl/IntentionListStep.java | 6 +-- .../intention/impl/QuickEditAction.java | 11 ++++-- .../intention/impl/QuickEditHandler.java | 4 +- .../impl/ShowIntentionActionsHandler.java | 8 ++-- .../codeInsight/lookup/LookupManager.java | 4 +- .../navigation/CtrlMouseHandler.java | 4 +- .../template/CustomTemplateCallback.java | 8 ++-- .../template/TemplateBuilderImpl.java | 4 +- .../ex/ProblemDescriptorImpl.java | 4 +- .../PsiElement2UsageTargetAdapter.java | 4 +- .../intellij/ide/todo/nodes/TodoFileNode.java | 4 +- .../injected/editor/EditorWindow.java | 4 +- .../internal/psiView/PsiViewerDialog.java | 12 +++--- .../internal/psiView/ViewerTreeStructure.java | 4 +- .../impl/PsiAwareFileEditorManagerImpl.java | 4 +- .../impl/text/TextEditorPsiDataProvider.java | 4 +- .../FormattingDocumentModelImpl.java | 4 +- .../formatter/PsiBasedFormattingModel.java | 4 +- .../common/InjectedLanguageBlockBuilder.java | 4 +- .../InjectedSelfElementInfo.java | 6 +-- .../SmartPointerManagerImpl.java | 8 ++-- .../source/PostprocessReformattingAspect.java | 4 +- .../source/codeStyle/CodeFormatterFacade.java | 6 +-- .../codeStyle/CodeStyleManagerImpl.java | 6 +-- .../codeStyle/CodeStyleManagerRunnable.java | 6 +-- .../impl/providers/FileReferenceSet.java | 4 +- .../injected/InjectedFileViewProvider.java | 4 +- .../injected/InjectedLanguageManagerImpl.java | 37 ++++++++++++++----- ...adeImpl.java => InjectedLanguageUtil.java} | 27 +------------- .../tree/injected/MultiHostRegistrarImpl.java | 6 +-- .../move/FileReferenceContextUtil.java | 6 +-- .../rename/PsiElementRenameHandler.java | 6 +-- .../rename/inplace/InplaceRefactoring.java | 12 +++--- .../inplace/MemberInplaceRenameHandler.java | 4 +- .../rename/inplace/MemberInplaceRenamer.java | 6 +-- .../rename/inplace/MyLookupExpression.java | 4 +- .../inplace/VariableInplaceRenamer.java | 6 +-- .../src/META-INF/LangExtensions.xml | 2 - .../LightPlatformCodeInsightTestCase.java | 8 ++-- .../impl/CodeInsightTestFixtureImpl.java | 4 +- .../inject/EditInjectionSettingsAction.java | 6 +-- .../inject/InjectLanguageAction.java | 6 +-- .../inject/UnInjectLanguageAction.java | 8 ++-- .../CommentOnLineWithSourcePredicate.java | 4 +- .../jetbrains/android/AndroidRenameTest.java | 4 +- .../completion/InjectedGroovyTest.groovy | 8 ++-- .../i18n/SuppressByCommentOutAction.java | 4 +- .../spellchecker/quickfixes/RenameTo.java | 4 +- .../spellchecker/tokenizer/TokenizerBase.java | 4 +- .../tokenizer/XmlTextTokenizer.java | 4 +- .../lang/xpath/psi/impl/XPathElementImpl.java | 4 +- .../intellij/lang/xpath/xslt/XsltSupport.java | 4 +- .../xpath/xslt/util/XsltCodeInsightUtil.java | 6 +-- .../xslt/validation/XsltXmlAnnotator.java | 4 +- .../lang/xpath/xslt/Xslt2RefactoringTest.java | 6 +-- .../impl/GenericValueReferenceProvider.java | 6 +-- .../xml/AbstractDomDeclarationSearcher.java | 6 +-- .../editorActions/XmlAutoPopupHandler.java | 4 +- .../editorActions/moveUpDown/XmlMover.java | 11 ++++-- .../psi/impl/source/xml/XmlTextImpl.java | 7 ++-- .../src/com/intellij/xml/util/HtmlUtil.java | 6 +-- 91 files changed, 267 insertions(+), 296 deletions(-) rename platform/{lang-api => core-api}/src/com/intellij/lang/injection/InjectedLanguageManager.java (95%) rename platform/{lang-api => core-api}/src/com/intellij/lang/injection/MultiHostInjector.java (100%) rename platform/{lang-api => core-api}/src/com/intellij/lang/injection/MultiHostRegistrar.java (100%) delete mode 100644 platform/core-impl/src/com/intellij/psi/impl/InjectedLanguageFacade.java rename platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/{InjectedLanguageFacadeImpl.java => InjectedLanguageUtil.java} (94%) diff --git a/RegExpSupport/src/org/intellij/lang/regexp/psi/impl/RegExpElementImpl.java b/RegExpSupport/src/org/intellij/lang/regexp/psi/impl/RegExpElementImpl.java index dbc64d0382de..f0befa3c0287 100644 --- a/RegExpSupport/src/org/intellij/lang/regexp/psi/impl/RegExpElementImpl.java +++ b/RegExpSupport/src/org/intellij/lang/regexp/psi/impl/RegExpElementImpl.java @@ -23,7 +23,7 @@ import com.intellij.lang.ParserDefinition; import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElementVisitor; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.tree.IElementType; import com.intellij.util.IncorrectOperationException; import org.intellij.lang.regexp.RegExpLanguage; @@ -76,7 +76,7 @@ public abstract class RegExpElementImpl extends ASTWrapperPsiElement implements } public final String getUnescapedText() { - if (InjectedLanguageFacadeImpl.isInInjectedLanguagePrefixSuffix(this)) { + if (InjectedLanguageUtil.isInInjectedLanguagePrefixSuffix(this)) { // do not attempt to decode text if PsiElement is part of prefix/suffix return getText(); } diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java index 4515b75d36a6..00021004bb24 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/analysis/HighlightVisitorImpl.java @@ -34,7 +34,7 @@ import com.intellij.psi.*; import com.intellij.psi.controlFlow.ControlFlowUtil; import com.intellij.psi.impl.source.javadoc.PsiDocMethodOrFieldRef; import com.intellij.psi.impl.source.jsp.jspJava.JspClass; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.javadoc.PsiDocComment; import com.intellij.psi.javadoc.PsiDocTagValue; import com.intellij.psi.util.MethodSignatureBackedByPsiMethod; @@ -106,7 +106,7 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh } private void registerReferencesFromInjectedFragments(final PsiElement element) { - InjectedLanguageFacadeImpl.enumerate(element, myFile, false, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, myFile, false, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull final PsiFile injectedPsi, @NotNull final List places) { injectedPsi.accept(REGISTER_REFERENCES_VISITOR); diff --git a/java/java-impl/src/com/intellij/psi/formatter/java/AbstractJavaBlock.java b/java/java-impl/src/com/intellij/psi/formatter/java/AbstractJavaBlock.java index dd93897539f0..232247dd5277 100644 --- a/java/java-impl/src/com/intellij/psi/formatter/java/AbstractJavaBlock.java +++ b/java/java-impl/src/com/intellij/psi/formatter/java/AbstractJavaBlock.java @@ -34,7 +34,7 @@ import com.intellij.psi.formatter.java.wrap.ReservedWrapsProvider; import com.intellij.psi.impl.source.SourceTreeToPsiMap; import com.intellij.psi.impl.source.codeStyle.ShiftIndentInsideHelper; import com.intellij.psi.impl.source.tree.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.impl.source.tree.java.ClassElement; import com.intellij.psi.jsp.JspElementType; import com.intellij.psi.tree.IElementType; @@ -172,7 +172,7 @@ public abstract class AbstractJavaBlock extends AbstractBlock implements JavaBlo if (isStatement(child, child.getTreeParent())) { return new CodeBlockBlock(child, wrap, alignment, actualIndent, settings); } - if (child instanceof PsiComment && child instanceof PsiLanguageInjectionHost && InjectedLanguageFacadeImpl + if (child instanceof PsiComment && child instanceof PsiLanguageInjectionHost && InjectedLanguageUtil .hasInjections((PsiLanguageInjectionHost)child)) { return new CommentWithInjectionBlock(child, wrap, alignment, indent, settings); } diff --git a/java/java-impl/src/com/intellij/usages/impl/rules/ClassGroupingRule.java b/java/java-impl/src/com/intellij/usages/impl/rules/ClassGroupingRule.java index 23c07d65a139..8b40b441006b 100644 --- a/java/java-impl/src/com/intellij/usages/impl/rules/ClassGroupingRule.java +++ b/java/java-impl/src/com/intellij/usages/impl/rules/ClassGroupingRule.java @@ -25,7 +25,7 @@ import com.intellij.openapi.util.Iconable; import com.intellij.openapi.vcs.FileStatus; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.jsp.JspFile; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.usageView.UsageInfo; @@ -48,7 +48,7 @@ public class ClassGroupingRule implements UsageGroupingRule { } final PsiElement psiElement = ((PsiElementUsage)usage).getElement(); final PsiFile containingFile = psiElement.getContainingFile(); - PsiFile topLevelFile = InjectedLanguageFacadeImpl.getTopLevelFile(containingFile); + PsiFile topLevelFile = InjectedLanguageUtil.getTopLevelFile(containingFile); if (!(topLevelFile instanceof PsiJavaFile) || topLevelFile instanceof JspFile) { return null; diff --git a/java/java-impl/src/com/intellij/usages/impl/rules/MethodGroupingRule.java b/java/java-impl/src/com/intellij/usages/impl/rules/MethodGroupingRule.java index c82180d92721..ec3e39f92939 100644 --- a/java/java-impl/src/com/intellij/usages/impl/rules/MethodGroupingRule.java +++ b/java/java-impl/src/com/intellij/usages/impl/rules/MethodGroupingRule.java @@ -28,7 +28,7 @@ import com.intellij.openapi.util.Iconable; import com.intellij.openapi.util.Segment; import com.intellij.openapi.vcs.FileStatus; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiFormatUtil; import com.intellij.psi.util.PsiFormatUtilBase; import com.intellij.psi.util.PsiTreeUtil; @@ -51,7 +51,7 @@ public class MethodGroupingRule implements UsageGroupingRule { if (!(usage instanceof PsiElementUsage)) return null; PsiElement psiElement = ((PsiElementUsage)usage).getElement(); PsiFile containingFile = psiElement.getContainingFile(); - PsiFile topLevelFile = InjectedLanguageFacadeImpl.getTopLevelFile(containingFile); + PsiFile topLevelFile = InjectedLanguageUtil.getTopLevelFile(containingFile); if (topLevelFile instanceof PsiJavaFile) { PsiElement containingMethod = topLevelFile == containingFile ? psiElement : InjectedLanguageManager .getInstance(containingFile.getProject()).getInjectionHost(containingFile); diff --git a/java/testFramework/src/com/intellij/codeInsight/daemon/LightDaemonAnalyzerTestCase.java b/java/testFramework/src/com/intellij/codeInsight/daemon/LightDaemonAnalyzerTestCase.java index e085ce9f8687..357134d2a19d 100644 --- a/java/testFramework/src/com/intellij/codeInsight/daemon/LightDaemonAnalyzerTestCase.java +++ b/java/testFramework/src/com/intellij/codeInsight/daemon/LightDaemonAnalyzerTestCase.java @@ -25,7 +25,7 @@ import com.intellij.openapi.editor.Editor; import com.intellij.openapi.vfs.VirtualFileFilter; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.testFramework.ExpectedHighlightingData; import com.intellij.testFramework.FileTreeAccessFilter; import com.intellij.testFramework.HighlightTestInfo; @@ -144,7 +144,7 @@ public abstract class LightDaemonAnalyzerTestCase extends LightCodeInsightTestCa PsiFile file = getFile(); if (editor instanceof EditorWindow) { editor = ((EditorWindow)editor).getDelegate(); - file = InjectedLanguageFacadeImpl.getTopLevelFile(file); + file = InjectedLanguageUtil.getTopLevelFile(file); } return CodeInsightTestFixtureImpl.instantiateAndRun(file, editor, toIgnore, false); diff --git a/java/testFramework/src/com/intellij/codeInsight/daemon/quickFix/LightQuickFixTestCase.java b/java/testFramework/src/com/intellij/codeInsight/daemon/quickFix/LightQuickFixTestCase.java index 86331a0dcfd3..155c3110e9cf 100644 --- a/java/testFramework/src/com/intellij/codeInsight/daemon/quickFix/LightQuickFixTestCase.java +++ b/java/testFramework/src/com/intellij/codeInsight/daemon/quickFix/LightQuickFixTestCase.java @@ -29,7 +29,7 @@ import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.CharsetToolkit; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.rt.execution.junit.FileComparisonFailure; import com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl; import com.intellij.util.IncorrectOperationException; @@ -107,7 +107,7 @@ public abstract class LightQuickFixTestCase extends LightDaemonAnalyzerTestCase } public static Pair parseActionHint(final PsiFile file, String contents, @NonNls @RegExp String actionPattern) { - PsiFile hostFile = InjectedLanguageFacadeImpl.getTopLevelFile(file); + PsiFile hostFile = InjectedLanguageUtil.getTopLevelFile(file); final Commenter commenter = LanguageCommenters.INSTANCE.forLanguage(hostFile.getLanguage()); String comment = commenter.getLineCommentPrefix(); diff --git a/platform/lang-api/src/com/intellij/lang/injection/InjectedLanguageManager.java b/platform/core-api/src/com/intellij/lang/injection/InjectedLanguageManager.java similarity index 95% rename from platform/lang-api/src/com/intellij/lang/injection/InjectedLanguageManager.java rename to platform/core-api/src/com/intellij/lang/injection/InjectedLanguageManager.java index c6d47f541ff6..65f59698a3fd 100644 --- a/platform/lang-api/src/com/intellij/lang/injection/InjectedLanguageManager.java +++ b/platform/core-api/src/com/intellij/lang/injection/InjectedLanguageManager.java @@ -26,6 +26,7 @@ import com.intellij.openapi.components.ServiceManager; import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.NotNullLazyKey; +import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; @@ -71,5 +72,8 @@ public abstract class InjectedLanguageManager { @Nullable public abstract PsiElement findInjectedElementAt(@NotNull PsiFile hostFile, int hostDocumentOffset); + @Nullable + public abstract List> getInjectedPsiFiles(@NotNull PsiElement host); + public abstract void dropFileCaches(@NotNull PsiFile file); } diff --git a/platform/lang-api/src/com/intellij/lang/injection/MultiHostInjector.java b/platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java similarity index 100% rename from platform/lang-api/src/com/intellij/lang/injection/MultiHostInjector.java rename to platform/core-api/src/com/intellij/lang/injection/MultiHostInjector.java diff --git a/platform/lang-api/src/com/intellij/lang/injection/MultiHostRegistrar.java b/platform/core-api/src/com/intellij/lang/injection/MultiHostRegistrar.java similarity index 100% rename from platform/lang-api/src/com/intellij/lang/injection/MultiHostRegistrar.java rename to platform/core-api/src/com/intellij/lang/injection/MultiHostRegistrar.java diff --git a/platform/core-impl/src/com/intellij/psi/impl/InjectedLanguageFacade.java b/platform/core-impl/src/com/intellij/psi/impl/InjectedLanguageFacade.java deleted file mode 100644 index bbec2bc0bb85..000000000000 --- a/platform/core-impl/src/com/intellij/psi/impl/InjectedLanguageFacade.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2000-2012 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package com.intellij.psi.impl; - -import com.intellij.openapi.components.ServiceManager; -import com.intellij.openapi.util.Pair; -import com.intellij.openapi.util.TextRange; -import com.intellij.psi.PsiElement; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.List; - -public abstract class InjectedLanguageFacade { - public static InjectedLanguageFacade getInstance() { - return ServiceManager.getService(InjectedLanguageFacade.class); - } - - @Nullable - public abstract List> getInjectedPsiFiles(@NotNull PsiElement host); - -} diff --git a/platform/indexing-impl/src/com/intellij/psi/impl/search/LowLevelSearchUtil.java b/platform/indexing-impl/src/com/intellij/psi/impl/search/LowLevelSearchUtil.java index bf0f4ba81f26..91a0afd12982 100644 --- a/platform/indexing-impl/src/com/intellij/psi/impl/search/LowLevelSearchUtil.java +++ b/platform/indexing-impl/src/com/intellij/psi/impl/search/LowLevelSearchUtil.java @@ -17,6 +17,7 @@ package com.intellij.psi.impl.search; import com.intellij.lang.ASTNode; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.util.Pair; @@ -24,7 +25,6 @@ import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; -import com.intellij.psi.impl.InjectedLanguageFacade; import com.intellij.psi.impl.source.tree.LeafElement; import com.intellij.psi.impl.source.tree.TreeElement; import com.intellij.psi.search.TextOccurenceProcessor; @@ -49,7 +49,9 @@ public class LowLevelSearchUtil { final StringSearcher searcher, ProgressIndicator progress) { if (!(element instanceof PsiLanguageInjectionHost)) return null; - List> list = InjectedLanguageFacade.getInstance().getInjectedPsiFiles(element); + InjectedLanguageManager injectedLanguageManager = InjectedLanguageManager.getInstance(element.getProject()); + if (injectedLanguageManager == null) return null; + List> list = injectedLanguageManager.getInjectedPsiFiles(element); if (list == null) return null; for (Pair pair : list) { final PsiElement injected = pair.getFirst(); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/AutoPopupController.java b/platform/lang-impl/src/com/intellij/codeInsight/AutoPopupController.java index bd7753874d63..179f975b6ee9 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/AutoPopupController.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/AutoPopupController.java @@ -40,7 +40,7 @@ import com.intellij.openapi.util.Condition; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Alarm; import com.intellij.util.ui.UIUtil; import org.jetbrains.annotations.Nullable; @@ -157,7 +157,7 @@ public class AutoPopupController implements Disposable { if (file == null) return; if (!documentManager.isUncommited(editor.getDocument())) { - file = documentManager.getPsiFile(InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, file).getDocument()); + file = documentManager.getPsiFile(InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, file).getDocument()); if (file == null) return; } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/actions/BaseCodeInsightAction.java b/platform/lang-impl/src/com/intellij/codeInsight/actions/BaseCodeInsightAction.java index d3fc7311dd0e..2a76da8174ba 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/actions/BaseCodeInsightAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/actions/BaseCodeInsightAction.java @@ -26,7 +26,7 @@ import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -59,7 +59,7 @@ public abstract class BaseCodeInsightAction extends CodeInsightAction { PsiFile psiFile = documentManager.getCachedPsiFile(editor.getDocument()); if (psiFile != null) { if (commit) documentManager.commitAllDocuments(); - injectedEditor = InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, psiFile); + injectedEditor = InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, psiFile); } } return injectedEditor; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/completion/CodeCompletionHandlerBase.java b/platform/lang-impl/src/com/intellij/codeInsight/completion/CodeCompletionHandlerBase.java index f4ab7e6cd966..fa9bd7867ad6 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/completion/CodeCompletionHandlerBase.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/completion/CodeCompletionHandlerBase.java @@ -60,7 +60,7 @@ import com.intellij.psi.impl.DebugUtil; import com.intellij.psi.impl.PsiFileEx; import com.intellij.psi.impl.PsiModificationTrackerImpl; import com.intellij.psi.impl.source.PostprocessReformattingAspect; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilBase; import com.intellij.reference.SoftReference; import com.intellij.util.Consumer; @@ -223,7 +223,7 @@ public class CodeCompletionHandlerBase implements CodeInsightActionHandler { int offset = editor.getCaretModel().getOffset(); int psiOffset = Math.max(0, offset - 1); - PsiElement elementAt = InjectedLanguageFacadeImpl.findInjectedElementNoCommit(psiFile, psiOffset); + PsiElement elementAt = InjectedLanguageUtil.findInjectedElementNoCommit(psiFile, psiOffset); if (elementAt == null) { elementAt = psiFile.findElementAt(psiOffset); } @@ -528,10 +528,10 @@ public class CodeCompletionHandlerBase implements CodeInsightActionHandler { } } }); - final PsiFile hostFile = InjectedLanguageFacadeImpl.getTopLevelFile(fileCopy[0]); + final PsiFile hostFile = InjectedLanguageUtil.getTopLevelFile(fileCopy[0]); final InjectedLanguageManager injectedLanguageManager = InjectedLanguageManager.getInstance(hostFile.getProject()); final int hostStartOffset = injectedLanguageManager.injectedToHost(fileCopy[0], initContext.getStartOffset()); - final Editor hostEditor = InjectedLanguageFacadeImpl.getTopLevelEditor(initContext.getEditor()); + final Editor hostEditor = InjectedLanguageUtil.getTopLevelEditor(initContext.getEditor()); final OffsetMap hostMap = new OffsetMap(hostEditor.getDocument()); final OffsetMap original = initContext.getOffsetMap(); @@ -595,13 +595,13 @@ public class CodeCompletionHandlerBase implements CodeInsightActionHandler { InjectedLanguageManager injectedLanguageManager = InjectedLanguageManager.getInstance(hostFile.getProject()); CompletionContext context; - PsiFile injected = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(hostFile, hostStartOffset); + PsiFile injected = InjectedLanguageUtil.findInjectedPsiNoCommit(hostFile, hostStartOffset); if (injected != null) { TextRange host = injectedLanguageManager.injectedToHost(injected, injected.getTextRange()); assert hostStartOffset >= host.getStartOffset() : "startOffset before injected"; assert hostStartOffset <= host.getEndOffset() : "startOffset after injected"; - EditorWindow injectedEditor = (EditorWindow)InjectedLanguageFacadeImpl + EditorWindow injectedEditor = (EditorWindow)InjectedLanguageUtil .getEditorForInjectedLanguageNoCommit(hostEditor, hostFile, hostStartOffset); assert injected == injectedEditor.getInjectedFile(); final OffsetMap map = new OffsetMap(injectedEditor.getDocument()); @@ -826,7 +826,7 @@ public class CodeCompletionHandlerBase implements CodeInsightActionHandler { } private static Runnable rememberDocumentState(final Editor _editor) { - final Editor editor = InjectedLanguageFacadeImpl.getTopLevelEditor(_editor); + final Editor editor = InjectedLanguageUtil.getTopLevelEditor(_editor); final String documentText = editor.getDocument().getText(); final int caret = editor.getCaretModel().getOffset(); final int selStart = editor.getSelectionModel().getSelectionStart(); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CompletionServiceImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CompletionServiceImpl.java index baff2b619c87..2d8c4eb47a3f 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CompletionServiceImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/completion/impl/CompletionServiceImpl.java @@ -31,7 +31,7 @@ import com.intellij.psi.PsiFile; import com.intellij.psi.Weigher; import com.intellij.psi.WeighingService; import com.intellij.psi.impl.DebugUtil; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Consumer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -140,7 +140,7 @@ public class CompletionServiceImpl extends CompletionService{ PsiFile positionFile = myParameters.getPosition().getContainingFile(); LOG.error("prefix should be some actual file string just before caret: " + matcher.getPrefix() + "\n text=" + fragment + - "\ninjected=" + (InjectedLanguageFacadeImpl.getTopLevelFile(positionFile) != positionFile) + + "\ninjected=" + (InjectedLanguageUtil.getTopLevelFile(positionFile) != positionFile) + "\nlang=" + positionFile.getLanguage()); } return new CompletionResultSetImpl(getConsumer(), myTextBeforePosition, matcher, myContributor, myParameters, mySorter, myProcess, this); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/CodeFoldingPass.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/CodeFoldingPass.java index ae9bcb6a03fa..444f8828fb4b 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/CodeFoldingPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/CodeFoldingPass.java @@ -25,7 +25,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.project.IndexNotReadyException; import com.intellij.openapi.util.Key; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; class CodeFoldingPass extends TextEditorHighlightingPass implements DumbAware { @@ -72,7 +72,7 @@ class CodeFoldingPass extends TextEditorHighlightingPass implements DumbAware { } } - if (InjectedLanguageFacadeImpl.getTopLevelFile(myFile) == myFile) { + if (InjectedLanguageUtil.getTopLevelFile(myFile) == myFile) { clearFirstTimeFlag(myFile, myEditor, THE_FIRST_TIME); } } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/GeneralHighlightingPass.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/GeneralHighlightingPass.java index 9df986ee40cf..d3c79f58e623 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/GeneralHighlightingPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/GeneralHighlightingPass.java @@ -59,7 +59,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.problems.Problem; import com.intellij.problems.WolfTheProblemSolver; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.impl.source.tree.injected.Place; import com.intellij.psi.search.PsiTodoSearchHelper; import com.intellij.psi.search.TodoItem; @@ -291,7 +291,7 @@ public class GeneralHighlightingPass extends ProgressableTextEditorHighlightingP @NotNull final List elements2, @NotNull final ProgressIndicator progress, @NotNull final Set outInjected) { - List injected = InjectedLanguageFacadeImpl.getCachedInjectedDocuments(myFile); + List injected = InjectedLanguageUtil.getCachedInjectedDocuments(myFile); Collection hosts = new THashSet(elements1.size() + elements2.size() + injected.size()); //rehighlight all injected PSI regardless the range, @@ -325,7 +325,7 @@ public class GeneralHighlightingPass extends ProgressableTextEditorHighlightingP @Override public boolean process(PsiElement element) { progress.checkCanceled(); - InjectedLanguageFacadeImpl.enumerate(element, myFile, false, visitor); + InjectedLanguageUtil.enumerate(element, myFile, false, visitor); return true; } })) throw new ProcessCanceledException(); @@ -348,7 +348,7 @@ public class GeneralHighlightingPass extends ProgressableTextEditorHighlightingP (DocumentWindow)PsiDocumentManager.getInstance(myProject) .getCachedDocument(injectedPsi); if (documentWindow == null) return true; - Place places = InjectedLanguageFacadeImpl.getShreds(injectedPsi); + Place places = InjectedLanguageUtil.getShreds(injectedPsi); for (PsiLanguageInjectionHost.Shred place : places) { TextRange textRange = place.getRangeInsideHost() .shiftRight(place.getHost().getTextRange().getStartOffset()); @@ -522,7 +522,7 @@ public class GeneralHighlightingPass extends ProgressableTextEditorHighlightingP } private void highlightInjectedSyntax(final PsiFile injectedPsi, HighlightInfoHolder holder) { - List, TextRange>> tokens = InjectedLanguageFacadeImpl + List, TextRange>> tokens = InjectedLanguageUtil .getHighlightTokens(injectedPsi); if (tokens == null) return; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IdentifierHighlighterPass.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IdentifierHighlighterPass.java index b52c21cf28a6..2012c5c95773 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IdentifierHighlighterPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/IdentifierHighlighterPass.java @@ -37,7 +37,7 @@ import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiReference; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.LocalSearchScope; import com.intellij.psi.search.searches.ReferencesSearch; import com.intellij.util.Processor; @@ -100,7 +100,7 @@ public class IdentifierHighlighterPass extends TextEditorHighlightingPass { if (myTarget == null) { if (!PsiDocumentManager.getInstance(myProject).isUncommited(myEditor.getDocument())) { // when document is committed, try to check injected stuff - it's fast - Editor injectedEditor = InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(myEditor, myFile, myCaretOffset); + Editor injectedEditor = InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(myEditor, myFile, myCaretOffset); if (injectedEditor != null) { myTarget = TargetElementUtilBase.getInstance().findTargetElement(injectedEditor, flags, injectedEditor.getCaretModel().getOffset()); } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LineMarkersPass.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LineMarkersPass.java index e961ecd989ff..07d4c0672e26 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LineMarkersPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LineMarkersPass.java @@ -47,7 +47,7 @@ import com.intellij.openapi.project.IndexNotReadyException; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Function; import com.intellij.util.FunctionUtil; import gnu.trove.THashSet; @@ -211,7 +211,7 @@ public class LineMarkersPass extends ProgressableTextEditorHighlightingPass impl } }; for (int i = 0, size = elements.size(); i < size; ++i) { - InjectedLanguageFacadeImpl.enumerate(elements.get(i), file, false, collectingVisitor); + InjectedLanguageUtil.enumerate(elements.get(i), file, false, collectingVisitor); } for (PsiFile injectedPsi : injectedFiles) { final Project project = injectedPsi.getProject(); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LocalInspectionsPass.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LocalInspectionsPass.java index b3f706976e75..93126fa3acda 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LocalInspectionsPass.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/LocalInspectionsPass.java @@ -53,7 +53,7 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.profile.codeInspection.InspectionProjectProfileManager; import com.intellij.profile.codeInspection.SeverityProvider; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.ConcurrencyUtil; import com.intellij.util.Function; import com.intellij.util.Processor; @@ -419,7 +419,7 @@ public class LocalInspectionsPass extends ProgressableTextEditorHighlightingPass final boolean inVisibleRange, final boolean checkDumbAwareness, final List wrappers) { final Set injected = new THashSet(); for (PsiElement element : elements) { - InjectedLanguageFacadeImpl.enumerate(element, myFile, false, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, myFile, false, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { injected.add(injectedPsi); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/QuickFixAction.java b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/QuickFixAction.java index bad2d1853659..70d351d6092e 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/QuickFixAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/QuickFixAction.java @@ -29,7 +29,7 @@ import com.intellij.openapi.util.Condition; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Processor; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; @@ -145,8 +145,8 @@ public final class QuickFixAction { PsiFile fileToUse; if (info.fromInjection) { if (injectedEditor == null) { - injectedFile = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(file, offset); - injectedEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(editor, injectedFile); + injectedFile = InjectedLanguageUtil.findInjectedPsiNoCommit(file, offset); + injectedEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(editor, injectedFile); } editorToUse = injectedEditor; fileToUse = injectedFile; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/documentation/DockablePopupManager.java b/platform/lang-impl/src/com/intellij/codeInsight/documentation/DockablePopupManager.java index d1ae61a6bcdd..7bbe8596b929 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/documentation/DockablePopupManager.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/documentation/DockablePopupManager.java @@ -24,7 +24,6 @@ import com.intellij.openapi.actionSystem.*; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.AsyncResult; -import com.intellij.openapi.util.Disposer; import com.intellij.openapi.wm.ToolWindow; import com.intellij.openapi.wm.ToolWindowAnchor; import com.intellij.openapi.wm.ToolWindowType; @@ -32,7 +31,7 @@ import com.intellij.openapi.wm.WindowManager; import com.intellij.openapi.wm.ex.ToolWindowManagerEx; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilBase; import com.intellij.ui.content.*; import com.intellij.util.ui.update.Activatable; @@ -174,7 +173,7 @@ public abstract class DockablePopupManager { final PsiFile file = PsiUtilBase.getPsiFileInEditor(editor, myProject); - final Editor injectedEditor = InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, file); + final Editor injectedEditor = InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, file); if (injectedEditor != null) { final PsiFile psiFile = PsiUtilBase.getPsiFileInEditor(injectedEditor, myProject); if (psiFile != null) { diff --git a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/CompletionAutoPopupHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/CompletionAutoPopupHandler.java index 282890eec51a..d0a8ae4db1c3 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/CompletionAutoPopupHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/CompletionAutoPopupHandler.java @@ -31,7 +31,7 @@ import com.intellij.openapi.project.IndexNotReadyException; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; /** @@ -83,16 +83,16 @@ public class CompletionAutoPopupHandler extends TypedHandlerDelegate { if (editor.isDisposed()) return; // retrieve the injected file from scratch since our typing might have destroyed the old one completely - Editor topLevelEditor = InjectedLanguageFacadeImpl.getTopLevelEditor(editor); + Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(editor); PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(topLevelEditor.getDocument()); if (file == null) return; - PsiFile topLevelFile = InjectedLanguageFacadeImpl.getTopLevelFile(file); + PsiFile topLevelFile = InjectedLanguageUtil.getTopLevelFile(file); if (!PsiDocumentManager.getInstance(project).isCommitted(editor.getDocument())) { LOG.error("Non-committed document"); PsiDocumentManager.getInstance(project).commitAllDocuments(); } - Editor newEditor = InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(topLevelEditor, topLevelFile); + Editor newEditor = InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(topLevelEditor, topLevelFile); try { new CodeCompletionHandlerBase(completionType, false, autopopup, false).invokeCompletion(project, newEditor, time, false); } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/SelectWordHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/SelectWordHandler.java index 04b49b51046c..7bc43282dcdc 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/SelectWordHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/SelectWordHandler.java @@ -32,7 +32,7 @@ import com.intellij.openapi.util.Ref; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.templateLanguages.OuterLanguageElement; import com.intellij.util.Processor; import org.jetbrains.annotations.NotNull; @@ -52,7 +52,7 @@ public class SelectWordHandler extends EditorActionHandler { LOG.debug("enter: execute(editor='" + editor + "')"); } if (editor instanceof EditorWindow && editor.getSelectionModel().hasSelection() - && InjectedLanguageFacadeImpl.isSelectionIsAboutToOverflowInjectedFragment((EditorWindow)editor)) { + && InjectedLanguageUtil.isSelectionIsAboutToOverflowInjectedFragment((EditorWindow)editor)) { // selection about to spread beyond injected fragment editor = ((EditorWindow)editor).getDelegate(); } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/TypedHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/TypedHandler.java index a9f107fd2935..a9261cc8d532 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/editorActions/TypedHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/editorActions/TypedHandler.java @@ -50,7 +50,7 @@ import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.codeStyle.CodeStyleManager; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.tree.IElementType; import com.intellij.psi.tree.TokenSet; import com.intellij.psi.util.PsiUtilBase; @@ -270,10 +270,10 @@ public class TypedHandler extends TypedActionHandlerBase { // even for uncommitted document try to retrieve injected fragment that has been there recently // we are assuming here that when user is (even furiously) typing, injected language would not change // and thus we can use its lexer to insert closing braces etc - for (DocumentWindow documentWindow : InjectedLanguageFacadeImpl.getCachedInjectedDocuments(oldFile)) { + for (DocumentWindow documentWindow : InjectedLanguageUtil.getCachedInjectedDocuments(oldFile)) { if (documentWindow.isValid() && documentWindow.containsRange(offset, offset)) { PsiFile injectedFile = PsiDocumentManager.getInstance(oldFile.getProject()).getPsiFile(documentWindow); - final Editor injectedEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(editor, injectedFile); + final Editor injectedEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(editor, injectedFile); // IDEA-52375 fix: last quote sign should be handled by outer language quote handler final CharSequence charsSequence = editor.getDocument().getCharsSequence(); if (injectedEditor.getCaretModel().getOffset() == injectedEditor.getDocument().getTextLength() && diff --git a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/FoldingUpdate.java b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/FoldingUpdate.java index e233872ba2d4..51cf80b83161 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/FoldingUpdate.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/FoldingUpdate.java @@ -34,7 +34,7 @@ import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.CachedValueProvider; import com.intellij.psi.util.CachedValuesManager; import com.intellij.psi.util.ParameterizedCachedValue; @@ -151,7 +151,7 @@ public class FoldingUpdate { Object lastTimeStamp = editor.getUserData(LAST_UPDATE_INJECTED_STAMP_KEY); if (lastTimeStamp instanceof Long && ((Long)lastTimeStamp).longValue() == timeStamp) return null; - List injectedDocuments = InjectedLanguageFacadeImpl.getCachedInjectedDocuments(file); + List injectedDocuments = InjectedLanguageUtil.getCachedInjectedDocuments(file); if (injectedDocuments.isEmpty()) return null; final List injectedEditors = new ArrayList(); final List injectedFiles = new ArrayList(); @@ -159,7 +159,7 @@ public class FoldingUpdate { for (DocumentWindow injectedDocument : injectedDocuments) { PsiFile injectedFile = PsiDocumentManager.getInstance(project).getPsiFile(injectedDocument); if (injectedFile == null || !injectedFile.isValid() || !injectedDocument.isValid()) continue; - Editor injectedEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(editor, injectedFile); + Editor injectedEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(editor, injectedFile); if (!(injectedEditor instanceof EditorWindow)) continue; injectedEditors.add((EditorWindow)injectedEditor); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/OffsetsElementSignatureProvider.java b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/OffsetsElementSignatureProvider.java index 35a75cf476b0..f1e78494c8a7 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/OffsetsElementSignatureProvider.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/folding/impl/OffsetsElementSignatureProvider.java @@ -18,7 +18,7 @@ package com.intellij.codeInsight.folding.impl; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -87,7 +87,7 @@ public class OffsetsElementSignatureProvider extends AbstractElementSignaturePro } if (result == null) { - final PsiElement injectedStartElement = InjectedLanguageFacadeImpl.findElementAtNoCommit(file, start); + final PsiElement injectedStartElement = InjectedLanguageUtil.findElementAtNoCommit(file, start); if (processingInfoStorage != null) { processingInfoStorage.append(String.format( "Trying to find injected element starting from the '%s'%s%n", diff --git a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java index d58ad07377c2..24e619be216d 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/BraceHighlightingHandler.java @@ -52,7 +52,7 @@ import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.Key; import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiUtilBase; import com.intellij.util.Alarm; @@ -136,7 +136,7 @@ public class BraceHighlightingHandler { public void run() { try { if (!isReallyDisposed(editor, project)) { - Editor newEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(editor, injected); + Editor newEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(editor, injected); BraceHighlightingHandler handler = new BraceHighlightingHandler(project, newEditor, alarm, injected); processor.process(handler); } @@ -161,7 +161,7 @@ public class BraceHighlightingHandler { Document document = editor.getDocument(); // when document is committed, try to highlight braces in injected lang - it's fast if (!PsiDocumentManager.getInstance(project).isUncommited(document)) { - final PsiElement injectedElement = InjectedLanguageFacadeImpl.findInjectedElementNoCommit(psiFile, offset); + final PsiElement injectedElement = InjectedLanguageUtil.findInjectedElementNoCommit(psiFile, offset); if (injectedElement != null /*&& !(injectedElement instanceof PsiWhiteSpace)*/) { final PsiFile injected = injectedElement.getContainingFile(); if (injected != null) { diff --git a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/HighlightManagerImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/HighlightManagerImpl.java index c0d1376c94cb..255f2353d97e 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/highlighting/HighlightManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/highlighting/HighlightManagerImpl.java @@ -41,7 +41,7 @@ import com.intellij.openapi.util.UserDataHolderEx; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiReference; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.containers.HashMap; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -167,7 +167,7 @@ public class HighlightManagerImpl extends HighlightManager implements ProjectCom PsiFile containingFile = element.getContainingFile(); Project project = element.getProject(); // each reference can reside in its own injected editor - Editor textEditor = InjectedLanguageFacadeImpl.openEditorFor(containingFile, project); + Editor textEditor = InjectedLanguageUtil.openEditorFor(containingFile, project); if (textEditor != null) { addOccurrenceHighlight(textEditor, start, end, attributes, flags, outHighlighters, scrollmarkColor); } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java index d690edf18225..b5759a2d63a9 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/IntentionListStep.java @@ -36,7 +36,7 @@ import com.intellij.openapi.ui.popup.*; import com.intellij.openapi.util.Comparing; import com.intellij.openapi.util.Iconable; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilBase; import gnu.trove.THashSet; import gnu.trove.TObjectHashingStrategy; @@ -112,7 +112,7 @@ class IntentionListStep implements ListPopupStep } else { hostElement = myFile.getViewProvider().findElementAt(fileOffset, myFile.getLanguage()); - element = InjectedLanguageFacadeImpl.findElementAtNoCommit(myFile, fileOffset); + element = InjectedLanguageUtil.findElementAtNoCommit(myFile, fileOffset); } PsiFile injectedFile; Editor injectedEditor; @@ -122,7 +122,7 @@ class IntentionListStep implements ListPopupStep } else { injectedFile = element.getContainingFile(); - injectedEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(myEditor, injectedFile); + injectedEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(myEditor, injectedFile); } boolean result = true; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditAction.java b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditAction.java index a109226d8b82..ea6ec49edb00 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditAction.java @@ -18,13 +18,16 @@ package com.intellij.codeInsight.intention.impl; import com.intellij.codeInsight.intention.IntentionAction; import com.intellij.codeInsight.intention.LowPriorityAction; import com.intellij.injected.editor.DocumentWindow; -import com.intellij.openapi.editor.*; +import com.intellij.lang.injection.InjectedLanguageManager; +import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.popup.Balloon; import com.intellij.openapi.util.*; import com.intellij.openapi.util.text.StringUtil; -import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.PsiDocumentManager; +import com.intellij.psi.PsiElement; +import com.intellij.psi.PsiFile; +import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.IncorrectOperationException; import com.intellij.util.containers.ContainerUtil; @@ -58,7 +61,7 @@ public class QuickEditAction implements IntentionAction, LowPriorityAction { final PsiLanguageInjectionHost host = PsiTreeUtil.getParentOfType(file.findElementAt(offset), PsiLanguageInjectionHost.class, false); if (host == null) return null; - final List> injections = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(host); + final List> injections = InjectedLanguageManager.getInstance(host.getProject()).getInjectedPsiFiles(host); if (injections == null || injections.isEmpty()) return null; final int offsetInElement = offset - host.getTextRange().getStartOffset(); final Pair rangePair = ContainerUtil.find(injections, new Condition>() { diff --git a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditHandler.java index 814bad1e40dd..1a8b9ba856d2 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/QuickEditHandler.java @@ -48,7 +48,7 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; import com.intellij.psi.impl.source.PostprocessReformattingAspect; import com.intellij.psi.impl.source.resolve.FileContextUtil; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.impl.source.tree.injected.Place; import com.intellij.testFramework.LightVirtualFile; import com.intellij.ui.awt.RelativePoint; @@ -86,7 +86,7 @@ public class QuickEditHandler extends DocumentAdapter implements Disposable { myEditor = editor; myAction = action; myOrigDocument = editor.getDocument(); - final Place shreds = InjectedLanguageFacadeImpl.getShreds(myInjectedFile); + final Place shreds = InjectedLanguageUtil.getShreds(myInjectedFile); final FileType fileType = injectedFile.getFileType(); final Language language = injectedFile.getLanguage(); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/ShowIntentionActionsHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/ShowIntentionActionsHandler.java index 4421b4d39641..b93aeb096594 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/ShowIntentionActionsHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/intention/impl/ShowIntentionActionsHandler.java @@ -40,7 +40,7 @@ import com.intellij.psi.PsiCodeFragment; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.IncorrectOperationException; import com.intellij.util.PairProcessor; import org.jetbrains.annotations.NotNull; @@ -56,7 +56,7 @@ public class ShowIntentionActionsHandler implements CodeInsightActionHandler { PsiDocumentManager.getInstance(project).commitAllDocuments(); if (editor instanceof EditorWindow) { editor = ((EditorWindow)editor).getDelegate(); - file = InjectedLanguageFacadeImpl.getTopLevelFile(file); + file = InjectedLanguageUtil.getTopLevelFile(file); } final LookupEx lookup = LookupManager.getActiveLookup(editor); @@ -122,9 +122,9 @@ public class ShowIntentionActionsHandler implements CodeInsightActionHandler { PsiFile fileToApply = null; int offset = hostEditor.getCaretModel().getOffset(); - PsiFile injectedFile = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(hostFile, offset); + PsiFile injectedFile = InjectedLanguageUtil.findInjectedPsiNoCommit(hostFile, offset); if (injectedFile != null) { - Editor injectedEditor = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(hostEditor, injectedFile); + Editor injectedEditor = InjectedLanguageUtil.getInjectedEditorForInjectedFile(hostEditor, injectedFile); if (predicate.process(injectedFile, injectedEditor)) { editorToApply = injectedEditor; fileToApply = injectedFile; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/lookup/LookupManager.java b/platform/lang-impl/src/com/intellij/codeInsight/lookup/LookupManager.java index cde7df077e25..a1a95fd65e09 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/lookup/LookupManager.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/lookup/LookupManager.java @@ -19,7 +19,7 @@ package com.intellij.codeInsight.lookup; import com.intellij.openapi.components.ServiceManager; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -41,7 +41,7 @@ public abstract class LookupManager { final LookupEx lookup = getInstance(project).getActiveLookup(); if (lookup == null) return null; - return InjectedLanguageFacadeImpl.getTopLevelEditor(lookup.getEditor()) == InjectedLanguageFacadeImpl.getTopLevelEditor(editor) ? lookup : null; + return InjectedLanguageUtil.getTopLevelEditor(lookup.getEditor()) == InjectedLanguageUtil.getTopLevelEditor(editor) ? lookup : null; } @Nullable diff --git a/platform/lang-impl/src/com/intellij/codeInsight/navigation/CtrlMouseHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/navigation/CtrlMouseHandler.java index 6ae8ea014d38..a9010dac1ca5 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/navigation/CtrlMouseHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/navigation/CtrlMouseHandler.java @@ -60,7 +60,7 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.pom.Navigatable; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.searches.DefinitionsSearch; import com.intellij.psi.util.PsiUtilBase; import com.intellij.ui.LightweightHint; @@ -154,7 +154,7 @@ public class CtrlMouseHandler extends AbstractProjectComponent { Point point = new Point(mouseEvent.getPoint()); if (PsiDocumentManager.getInstance(myProject).isCommitted(editor.getDocument())) { // when document is committed, try to check injected stuff - it's fast - editor = InjectedLanguageFacadeImpl + editor = InjectedLanguageUtil .getEditorForInjectedLanguageNoCommit(editor, psiFile, editor.logicalPositionToOffset(editor.xyToLogicalPosition(point))); } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/CustomTemplateCallback.java b/platform/lang-impl/src/com/intellij/codeInsight/template/CustomTemplateCallback.java index 925052258b1d..656946038734 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/CustomTemplateCallback.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/CustomTemplateCallback.java @@ -25,7 +25,7 @@ import com.intellij.openapi.project.Project; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -55,11 +55,11 @@ public class CustomTemplateCallback { PsiDocumentManager.getInstance(myProject).commitAllDocuments(); int offset = getOffset(wrapping, editor); - PsiElement element = InjectedLanguageFacadeImpl.findInjectedElementNoCommit(file, offset); + PsiElement element = InjectedLanguageUtil.findInjectedElementNoCommit(file, offset); myFile = element != null ? element.getContainingFile() : file; myInInjectedFragment = InjectedLanguageManager.getInstance(myProject).isInjectedFragment(myFile); - myEditor = myInInjectedFragment ? InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, file, offset) : editor; + myEditor = myInInjectedFragment ? InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, file, offset) : editor; fixInitialState(wrapping); } @@ -164,7 +164,7 @@ public class CustomTemplateCallback { public static PsiElement getContext(@NotNull PsiFile file, int offset) { PsiElement element = null; if (!InjectedLanguageManager.getInstance(file.getProject()).isInjectedFragment(file)) { - element = InjectedLanguageFacadeImpl.findInjectedElementNoCommit(file, offset); + element = InjectedLanguageUtil.findInjectedElementNoCommit(file, offset); } if (element == null) { element = file.findElementAt(offset); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/TemplateBuilderImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/template/TemplateBuilderImpl.java index 2f2bb9a22488..74caa88a2bb1 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/TemplateBuilderImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/TemplateBuilderImpl.java @@ -32,7 +32,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiReference; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Function; import org.jetbrains.annotations.NotNull; @@ -60,7 +60,7 @@ public class TemplateBuilderImpl implements TemplateBuilder { private static final Logger LOG = Logger.getInstance("#" + TemplateBuilderImpl.class.getName()); public TemplateBuilderImpl(@NotNull PsiElement element) { - myFile = InjectedLanguageFacadeImpl.getTopLevelFile(element); + myFile = InjectedLanguageUtil.getTopLevelFile(element); myDocument = myFile.getViewProvider().getDocument(); myContainerElement = wrapElement(element); } diff --git a/platform/lang-impl/src/com/intellij/codeInspection/ex/ProblemDescriptorImpl.java b/platform/lang-impl/src/com/intellij/codeInspection/ex/ProblemDescriptorImpl.java index 85d9534bf46d..86798bb39e6e 100644 --- a/platform/lang-impl/src/com/intellij/codeInspection/ex/ProblemDescriptorImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInspection/ex/ProblemDescriptorImpl.java @@ -26,7 +26,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.TextRange; import com.intellij.pom.Navigatable; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiTreeUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -142,7 +142,7 @@ public class ProblemDescriptorImpl extends CommonProblemDescriptorImpl implement if (psiElement == null) return -1; if (!psiElement.isValid()) return -1; LOG.assertTrue(psiElement.isPhysical()); - PsiFile containingFile = InjectedLanguageFacadeImpl.getTopLevelFile(psiElement); + PsiFile containingFile = InjectedLanguageUtil.getTopLevelFile(psiElement); Document document = PsiDocumentManager.getInstance(psiElement.getProject()).getDocument(containingFile); if (document == null) return -1; TextRange textRange = getTextRange(); diff --git a/platform/lang-impl/src/com/intellij/find/findUsages/PsiElement2UsageTargetAdapter.java b/platform/lang-impl/src/com/intellij/find/findUsages/PsiElement2UsageTargetAdapter.java index 146d03a1a1d9..fae0f9ee875a 100644 --- a/platform/lang-impl/src/com/intellij/find/findUsages/PsiElement2UsageTargetAdapter.java +++ b/platform/lang-impl/src/com/intellij/find/findUsages/PsiElement2UsageTargetAdapter.java @@ -29,7 +29,7 @@ import com.intellij.openapi.editor.Editor; import com.intellij.openapi.fileEditor.FileEditor; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.meta.PsiMetaData; import com.intellij.psi.meta.PsiMetaOwner; import com.intellij.psi.meta.PsiPresentableMetaData; @@ -131,7 +131,7 @@ public class PsiElement2UsageTargetAdapter implements PsiElementUsageTarget, Typ Collection refs; // in case of injected file, use host file to highlight all occurrences of the target in each injected file - PsiFile context = InjectedLanguageFacadeImpl.getTopLevelFile(file); + PsiFile context = InjectedLanguageUtil.getTopLevelFile(file); SearchScope searchScope = new LocalSearchScope(context); if (handler != null) { refs = handler.findReferencesToHighlight(target, searchScope); diff --git a/platform/lang-impl/src/com/intellij/ide/todo/nodes/TodoFileNode.java b/platform/lang-impl/src/com/intellij/ide/todo/nodes/TodoFileNode.java index 6a629737c801..1c16566a1fd0 100644 --- a/platform/lang-impl/src/com/intellij/ide/todo/nodes/TodoFileNode.java +++ b/platform/lang-impl/src/com/intellij/ide/todo/nodes/TodoFileNode.java @@ -31,7 +31,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; import com.intellij.psi.impl.search.TodoItemImpl; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.PsiTodoSearchHelper; import com.intellij.psi.search.TodoItem; import com.intellij.ui.HighlightedRegion; @@ -102,7 +102,7 @@ public final class TodoFileNode extends PsiFileNode implements HighlightedRegion @Override public void visitElement(PsiElement element) { if (element instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { if (places.size() == 1) { diff --git a/platform/lang-impl/src/com/intellij/injected/editor/EditorWindow.java b/platform/lang-impl/src/com/intellij/injected/editor/EditorWindow.java index ff69f00bccb2..46341c274783 100644 --- a/platform/lang-impl/src/com/intellij/injected/editor/EditorWindow.java +++ b/platform/lang-impl/src/com/intellij/injected/editor/EditorWindow.java @@ -43,7 +43,7 @@ import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.UserDataHolderBase; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.containers.WeakList; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -113,7 +113,7 @@ public class EditorWindow extends UserDataHolderBase implements EditorEx { if (!editorWindow.isValid()) { editorWindow.dispose(); - InjectedLanguageFacadeImpl.clearCaches(editorWindow.myInjectedFile, editorWindow.getDocument()); + InjectedLanguageUtil.clearCaches(editorWindow.myInjectedFile, editorWindow.getDocument()); iterator.remove(); } } diff --git a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java index 0556784022bc..ee7a882a21a3 100644 --- a/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java +++ b/platform/lang-impl/src/com/intellij/internal/psiView/PsiViewerDialog.java @@ -23,7 +23,7 @@ import com.intellij.formatting.ASTBlock; import com.intellij.formatting.Block; import com.intellij.formatting.FormattingModel; import com.intellij.formatting.FormattingModelBuilder; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.ui.ListCellRendererWrapper; import com.intellij.ide.util.treeView.AbstractTreeStructure; import com.intellij.ide.util.treeView.NodeRenderer; @@ -821,7 +821,7 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp } if (currentElem == null) { currentElem = - InjectedLanguageFacadeImpl + InjectedLanguageUtil .findElementAtNoCommit(psiEl.getContainingFile(), rootBlockNode.getBlock().getTextRange().getStartOffset()); } myPsiToBlockMap.put(currentElem, rootBlockNode); @@ -980,7 +980,7 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp BlockTreeNode descriptor = (BlockTreeNode)blockElementsSet.iterator().next(); PsiElement rootPsi = ((ViewerTreeStructure)myPsiTreeBuilder.getTreeStructure()).getRootPsiElement(); int blockStart = descriptor.getBlock().getTextRange().getStartOffset(); - PsiElement currentPsiEl = InjectedLanguageFacadeImpl.findElementAtNoCommit(rootPsi.getContainingFile(), blockStart); + PsiElement currentPsiEl = InjectedLanguageUtil.findElementAtNoCommit(rootPsi.getContainingFile(), blockStart); int blockLength = descriptor.getBlock().getTextRange().getLength(); while (currentPsiEl.getParent() != null && currentPsiEl.getTextRange().getStartOffset() == blockStart && @@ -1237,7 +1237,7 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp final PsiElement rootElement = ((ViewerTreeStructure)myPsiTreeBuilder.getTreeStructure()).getRootPsiElement(); int baseOffset = rootPsiElement.getTextRange().getStartOffset(); final int offset = myEditor.getCaretModel().getOffset() + baseOffset; - final PsiElement element = InjectedLanguageFacadeImpl.findElementAtNoCommit(rootElement.getContainingFile(), offset); + final PsiElement element = InjectedLanguageUtil.findElementAtNoCommit(rootElement.getContainingFile(), offset); if (element != null && myBlockTreeBuilder != null) { TextRange rangeInHostFile = InjectedLanguageManager.getInstance(myProject).injectedToHost(element, element.getTextRange()); selectBlockNode(findBlockNode(rangeInHostFile, true)); @@ -1258,8 +1258,8 @@ public class PsiViewerDialog extends DialogWrapper implements DataProvider, Disp final int start = selection.getSelectionStart()+baseOffset; final int end = selection.getSelectionEnd()+baseOffset - 1; final PsiElement element = - findCommonParent(InjectedLanguageFacadeImpl.findElementAtNoCommit(rootElement.getContainingFile(), start), - InjectedLanguageFacadeImpl.findElementAtNoCommit(rootElement.getContainingFile(), end)); + findCommonParent(InjectedLanguageUtil.findElementAtNoCommit(rootElement.getContainingFile(), start), + InjectedLanguageUtil.findElementAtNoCommit(rootElement.getContainingFile(), end)); if (element != null && myBlockTreeBuilder != null) { if (myEditor.getContentComponent().hasFocus()) { TextRange rangeInHostFile = InjectedLanguageManager.getInstance(myProject).injectedToHost(element, element.getTextRange()); diff --git a/platform/lang-impl/src/com/intellij/internal/psiView/ViewerTreeStructure.java b/platform/lang-impl/src/com/intellij/internal/psiView/ViewerTreeStructure.java index 3f037ebdece6..48f1e2d4c506 100644 --- a/platform/lang-impl/src/com/intellij/internal/psiView/ViewerTreeStructure.java +++ b/platform/lang-impl/src/com/intellij/internal/psiView/ViewerTreeStructure.java @@ -29,7 +29,7 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.project.Project; import com.intellij.psi.*; import com.intellij.psi.impl.source.SourceTreeToPsiMap; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilCore; import com.intellij.util.ArrayUtil; import org.jetbrains.annotations.NotNull; @@ -99,7 +99,7 @@ public class ViewerTreeStructure extends AbstractTreeStructure { } final PsiElement psi = root.getPsi(); if (psi instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(psi, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(psi, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { list.add(new Inject(psi, injectedPsi)); diff --git a/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/PsiAwareFileEditorManagerImpl.java b/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/PsiAwareFileEditorManagerImpl.java index e35ddf938039..d5761461754b 100644 --- a/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/PsiAwareFileEditorManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/PsiAwareFileEditorManagerImpl.java @@ -27,7 +27,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.problems.WolfTheProblemSolver; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.ui.ColorUtil; import com.intellij.ui.docking.DockManager; import org.jetbrains.annotations.NotNull; @@ -99,7 +99,7 @@ public class PsiAwareFileEditorManagerImpl extends FileEditorManagerImpl { return editor; } - return InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, psiFile); + return InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, psiFile); } /** diff --git a/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/text/TextEditorPsiDataProvider.java b/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/text/TextEditorPsiDataProvider.java index ef799405eea6..0238e016a128 100644 --- a/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/text/TextEditorPsiDataProvider.java +++ b/platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/text/TextEditorPsiDataProvider.java @@ -28,7 +28,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.wm.ToolWindowManager; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilBase; import org.jetbrains.annotations.Nullable; @@ -48,7 +48,7 @@ public class TextEditorPsiDataProvider implements EditorDataProvider { return e; } else { - return InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(e, getPsiFile(e, file)); + return InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(e, getPsiFile(e, file)); } } if (dataId.equals(injectedId(PSI_ELEMENT.getName()))) { diff --git a/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java b/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java index c0ab0725a6c1..c177b80b5dee 100644 --- a/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/formatter/FormattingDocumentModelImpl.java @@ -28,7 +28,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.impl.PsiDocumentManagerImpl; import com.intellij.psi.impl.PsiToDocumentSynchronizer; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -128,7 +128,7 @@ public class FormattingDocumentModelImpl implements FormattingDocumentModel { if (strategy.check(myDocument.getCharsSequence(), startOffset, endOffset) >= endOffset) { return true; } - PsiElement injectedElement = myFile != null ? InjectedLanguageFacadeImpl.findElementAtNoCommit(myFile, startOffset) : null; + PsiElement injectedElement = myFile != null ? InjectedLanguageUtil.findElementAtNoCommit(myFile, startOffset) : null; if (injectedElement != null) { Language injectedLanguage = injectedElement.getLanguage(); if (!injectedLanguage.equals(myFile.getLanguage())) { diff --git a/platform/lang-impl/src/com/intellij/psi/formatter/PsiBasedFormattingModel.java b/platform/lang-impl/src/com/intellij/psi/formatter/PsiBasedFormattingModel.java index 68bcf08c59ba..5fb63836e61d 100644 --- a/platform/lang-impl/src/com/intellij/psi/formatter/PsiBasedFormattingModel.java +++ b/platform/lang-impl/src/com/intellij/psi/formatter/PsiBasedFormattingModel.java @@ -28,7 +28,7 @@ import com.intellij.psi.PsiFile; import com.intellij.psi.TokenType; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.impl.source.SourceTreeToPsiMap; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -117,7 +117,7 @@ public class PsiBasedFormattingModel implements FormattingModel { Project project = containingFile.getProject(); assert !PsiDocumentManager.getInstance(project).isUncommited(myDocumentModel.getDocument()); // TODO:default project can not be used for injections, because latter might wants (unavailable) indices - PsiElement psiElement = project.isDefault() ? null : InjectedLanguageFacadeImpl.findInjectedElementNoCommit(containingFile, offset); + PsiElement psiElement = project.isDefault() ? null : InjectedLanguageUtil.findInjectedElementNoCommit(containingFile, offset); if (psiElement == null) psiElement = containingFile.findElementAt(offset); if (psiElement == null) return null; return psiElement.getNode(); diff --git a/platform/lang-impl/src/com/intellij/psi/formatter/common/InjectedLanguageBlockBuilder.java b/platform/lang-impl/src/com/intellij/psi/formatter/common/InjectedLanguageBlockBuilder.java index 4d06bdc3b8e5..7070493c72a1 100644 --- a/platform/lang-impl/src/com/intellij/psi/formatter/common/InjectedLanguageBlockBuilder.java +++ b/platform/lang-impl/src/com/intellij/psi/formatter/common/InjectedLanguageBlockBuilder.java @@ -27,7 +27,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.codeStyle.CodeStyleSettings; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -76,7 +76,7 @@ public abstract class InjectedLanguageBlockBuilder { } } }; - InjectedLanguageFacadeImpl.enumerate(injectionHost.getPsi(), injectedPsiVisitor); + InjectedLanguageUtil.enumerate(injectionHost.getPsi(), injectedPsiVisitor); if (injectedFile[0] != null) { final Language childLanguage = injectedFile[0].getLanguage(); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/InjectedSelfElementInfo.java b/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/InjectedSelfElementInfo.java index e251006a5428..f4a0db2a0ab2 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/InjectedSelfElementInfo.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/InjectedSelfElementInfo.java @@ -25,7 +25,7 @@ import com.intellij.openapi.util.Segment; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.jetbrains.annotations.NotNull; import java.util.Collections; @@ -86,7 +86,7 @@ class InjectedSelfElementInfo extends SelfElementInfo { PsiDocumentManager documentManager = PsiDocumentManager.getInstance(hostFile.getProject()); Document document = documentManager.getDocument(hostFile); if (document != null && documentManager.isUncommited(document)) { - for (DocumentWindow documentWindow : InjectedLanguageFacadeImpl.getCachedInjectedDocuments(hostFile)) { + for (DocumentWindow documentWindow : InjectedLanguageUtil.getCachedInjectedDocuments(hostFile)) { PsiFile injected = documentManager.getPsiFile(documentWindow); if (injected != null) { visitor.visit(injected, Collections.emptyList()); @@ -94,7 +94,7 @@ class InjectedSelfElementInfo extends SelfElementInfo { } } else { - InjectedLanguageFacadeImpl.enumerate(hostContext, hostFile, true, visitor); + InjectedLanguageUtil.enumerate(hostContext, hostFile, true, visitor); } return result.get(); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/SmartPointerManagerImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/SmartPointerManagerImpl.java index 29442fd80cdf..fb8722d0156b 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/SmartPointerManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/smartPointers/SmartPointerManagerImpl.java @@ -29,7 +29,7 @@ import com.intellij.openapi.util.Key; import com.intellij.openapi.util.ProperTextRange; import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.reference.SoftReference; import com.intellij.util.containers.UnsafeWeakList; import org.jetbrains.annotations.NotNull; @@ -72,7 +72,7 @@ public class SmartPointerManagerImpl extends SmartPointerManager { } } - for (DocumentWindow injectedDoc : InjectedLanguageFacadeImpl.getCachedInjectedDocuments(file)) { + for (DocumentWindow injectedDoc : InjectedLanguageUtil.getCachedInjectedDocuments(file)) { PsiFile injectedFile = psiDocumentManager.getPsiFile(injectedDoc); if (injectedFile == null) continue; RangeMarker cachedMarker = getCachedRangeMarkerToInjectedFragment(injectedFile); @@ -114,7 +114,7 @@ public class SmartPointerManagerImpl extends SmartPointerManager { } } - for (DocumentWindow injectedDoc : InjectedLanguageFacadeImpl.getCachedInjectedDocuments(file)) { + for (DocumentWindow injectedDoc : InjectedLanguageUtil.getCachedInjectedDocuments(file)) { PsiFile injectedFile = psiDocumentManager.getPsiFile(injectedDoc); if (injectedFile == null) continue; unfastenBelts(injectedFile, 0); @@ -145,7 +145,7 @@ public class SmartPointerManagerImpl extends SmartPointerManager { } final PsiDocumentManager psiDocumentManager = PsiDocumentManager.getInstance(file.getProject()); - for (Document document : InjectedLanguageFacadeImpl.getCachedInjectedDocuments(file)) { + for (Document document : InjectedLanguageUtil.getCachedInjectedDocuments(file)) { PsiFile injectedfile = psiDocumentManager.getPsiFile(document); if (injectedfile == null) continue; _synchronizePointers(injectedfile); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/PostprocessReformattingAspect.java b/platform/lang-impl/src/com/intellij/psi/impl/source/PostprocessReformattingAspect.java index 1f87406009a6..42b4ee1f167b 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/PostprocessReformattingAspect.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/PostprocessReformattingAspect.java @@ -45,7 +45,7 @@ import com.intellij.psi.impl.source.codeStyle.CodeEditUtil; import com.intellij.psi.impl.source.codeStyle.CodeFormatterFacade; import com.intellij.psi.impl.source.codeStyle.IndentHelperImpl; import com.intellij.psi.impl.source.tree.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.LocalTimeCounter; import com.intellij.util.text.CharArrayUtil; import org.jetbrains.annotations.TestOnly; @@ -168,7 +168,7 @@ public class PostprocessReformattingAspect implements PomModelAspect { if (changeSet == null) return; final PsiElement psiElement = changeSet.getRootElement().getPsi(); if (psiElement == null) return; - PsiFile containingFile = InjectedLanguageFacadeImpl.getTopLevelFile(psiElement); + PsiFile containingFile = InjectedLanguageUtil.getTopLevelFile(psiElement); final FileViewProvider viewProvider = containingFile.getViewProvider(); if (!viewProvider.isEventSystemEnabled()) return; diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeFormatterFacade.java b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeFormatterFacade.java index f6be88df1c35..d9af7a4b628a 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeFormatterFacade.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeFormatterFacade.java @@ -45,7 +45,7 @@ import com.intellij.psi.codeStyle.CodeStyleSettings; import com.intellij.psi.formatter.DocumentBasedFormattingModel; import com.intellij.psi.impl.source.PostprocessReformattingAspect; import com.intellij.psi.impl.source.SourceTreeToPsiMap; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.util.PsiUtilBase; import com.intellij.testFramework.LightVirtualFile; @@ -88,7 +88,7 @@ public class CodeFormatterFacade { final Document document = file.getViewProvider().getDocument(); final RangeMarker rangeMarker = document != null && endOffset < document.getTextLength()? document.createRangeMarker(startOffset, endOffset):null; - PsiElement elementToFormat = document instanceof DocumentWindow ? InjectedLanguageFacadeImpl.getTopLevelFile(file) : psiElement; + PsiElement elementToFormat = document instanceof DocumentWindow ? InjectedLanguageUtil.getTopLevelFile(file) : psiElement; final PsiFile fileToFormat = elementToFormat.getContainingFile(); final FormattingModelBuilder builder = LanguageFormatting.INSTANCE.forContext(fileToFormat); @@ -137,7 +137,7 @@ public class CodeFormatterFacade { Document document = PsiDocumentManager.getInstance(project).getDocument(file); final List textRanges = ranges.getRanges(); if (document instanceof DocumentWindow) { - file = InjectedLanguageFacadeImpl.getTopLevelFile(file); + file = InjectedLanguageUtil.getTopLevelFile(file); final DocumentWindow documentWindow = (DocumentWindow)document; for (FormatTextRanges.FormatTextRange range : textRanges) { range.setTextRange(documentWindow.injectedToHost(range.getTextRange())); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerImpl.java index b6685b1e5e08..c0d69b38c25c 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerImpl.java @@ -38,7 +38,7 @@ import com.intellij.psi.impl.CheckUtil; import com.intellij.psi.impl.source.PostprocessReformattingAspect; import com.intellij.psi.impl.source.SourceTreeToPsiMap; import com.intellij.psi.impl.source.tree.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilBase; import com.intellij.util.CharTable; import com.intellij.util.IncorrectOperationException; @@ -274,7 +274,7 @@ public class CodeStyleManagerImpl extends CodeStyleManager { TextRange textRange = addedElement.getTextRange(); final Document document = fileViewProvider.getDocument(); if (document instanceof DocumentWindow) { - containingFile = InjectedLanguageFacadeImpl.getTopLevelFile(containingFile); + containingFile = InjectedLanguageUtil.getTopLevelFile(containingFile); textRange = ((DocumentWindow)document).injectedToHost(textRange); } @@ -614,7 +614,7 @@ public class CodeStyleManagerImpl extends CodeStyleManager { if (!(astNode instanceof FileElement)) { return new Pair(null, null); } - PsiElement elementAt = InjectedLanguageFacadeImpl.findInjectedElementNoCommit(file, offset); + PsiElement elementAt = InjectedLanguageUtil.findInjectedElementNoCommit(file, offset); final CharTable charTable = ((FileElement)astNode).getCharTable(); if (elementAt == null) { elementAt = findElementInTreeWithFormatterEnabled(file, offset); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerRunnable.java b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerRunnable.java index 3862e08e4749..de0243002b23 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerRunnable.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/codeStyle/CodeStyleManagerRunnable.java @@ -28,7 +28,7 @@ import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.psi.codeStyle.CommonCodeStyleSettings; import com.intellij.psi.formatter.DocumentBasedFormattingModel; import com.intellij.psi.impl.source.SourceTreeToPsiMap; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilCore; import com.intellij.util.text.CharArrayUtil; import org.jetbrains.annotations.Nullable; @@ -56,7 +56,7 @@ abstract class CodeStyleManagerRunnable { Document document = documentManager.getDocument(file); if (document instanceof DocumentWindow) { final DocumentWindow documentWindow = (DocumentWindow)document; - final PsiFile topLevelFile = InjectedLanguageFacadeImpl.getTopLevelFile(file); + final PsiFile topLevelFile = InjectedLanguageUtil.getTopLevelFile(file); if (!file.equals(topLevelFile)) { if (range != null) { range = documentWindow.injectedToHost(range); @@ -125,7 +125,7 @@ abstract class CodeStyleManagerRunnable { return false; } - if (element instanceof PsiLanguageInjectionHost && InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)element)) { + if (element instanceof PsiLanguageInjectionHost && InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)element)) { return false; } diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReferenceSet.java b/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReferenceSet.java index b76d8c89d481..2d73b9b02f82 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReferenceSet.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/FileReferenceSet.java @@ -25,7 +25,7 @@ import com.intellij.openapi.util.Condition; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.Function; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -306,7 +306,7 @@ public class FileReferenceSet { @Nullable private PsiFile getContainingFile() { - final PsiFile file = InjectedLanguageFacadeImpl.getTopLevelFile(myElement.getContainingFile()); + final PsiFile file = InjectedLanguageUtil.getTopLevelFile(myElement.getContainingFile()); if (file == null) { LOG.error("Invalid element: " + myElement); } diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedFileViewProvider.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedFileViewProvider.java index 21b6a6a4841c..4cd558854598 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedFileViewProvider.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedFileViewProvider.java @@ -90,7 +90,7 @@ public class InjectedFileViewProvider extends SingleRootFileViewProvider impleme PsiFile hostFile = documentManager.getPsiFile(hostDocument); Language language = getBaseLanguage(); PsiFile file = getPsi(language); - final Language hostFileLanguage = InjectedLanguageFacadeImpl.getTopLevelFile(file).getLanguage(); + final Language hostFileLanguage = InjectedLanguageUtil.getTopLevelFile(file).getLanguage(); PsiFile hostPsiFileCopy = (PsiFile)hostFile.copy(); Segment firstTextRange = oldDocumentWindow.getHostRanges()[0]; PsiElement hostElementCopy = hostPsiFileCopy.getViewProvider().findElementAt(firstTextRange.getStartOffset(), hostFileLanguage); @@ -108,7 +108,7 @@ public class InjectedFileViewProvider extends SingleRootFileViewProvider impleme for (PsiElement current = hostElementCopy; current != null && current != hostPsiFileCopy; current = current.getParent()) { current.putUserData(LANGUAGE_FOR_INJECTED_COPY_KEY, language); try { - InjectedLanguageFacadeImpl.enumerate(current, hostPsiFileCopy, false, visitor); + InjectedLanguageUtil.enumerate(current, hostPsiFileCopy, false, visitor); } finally { current.putUserData(LANGUAGE_FOR_INJECTED_COPY_KEY, null); diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageManagerImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageManagerImpl.java index 8a086947820c..3124a04d4928 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageManagerImpl.java @@ -40,16 +40,14 @@ import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.ProgressManager; import com.intellij.openapi.project.DumbService; import com.intellij.openapi.project.Project; -import com.intellij.openapi.util.Key; -import com.intellij.openapi.util.ProperTextRange; -import com.intellij.openapi.util.Segment; -import com.intellij.openapi.util.TextRange; +import com.intellij.openapi.util.*; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; import com.intellij.psi.impl.PsiDocumentManagerImpl; import com.intellij.psi.impl.source.resolve.FileContextUtil; import com.intellij.util.ArrayUtil; import com.intellij.util.Processor; +import com.intellij.util.SmartList; import com.intellij.util.containers.ConcurrentHashMap; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NonNls; @@ -131,7 +129,7 @@ public class InjectedLanguageManagerImpl extends InjectedLanguageManager impleme if (hostPsiFile == null) return; final CopyOnWriteArrayList injected = - (CopyOnWriteArrayList)InjectedLanguageFacadeImpl.getCachedInjectedDocuments(hostPsiFile); + (CopyOnWriteArrayList)InjectedLanguageUtil.getCachedInjectedDocuments(hostPsiFile); if (injected.isEmpty()) return; if (myProgress.isCanceled()) { @@ -157,7 +155,7 @@ public class InjectedLanguageManagerImpl extends InjectedLanguageManager impleme } final DocumentWindow[] stillInjectedDocument = {null}; // it is here where the reparse happens and old file contents replaced - InjectedLanguageFacadeImpl.enumerate(element, hostPsiFile, true, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, hostPsiFile, true, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { stillInjectedDocument[0] = (DocumentWindow)injectedPsi.getViewProvider().getDocument(); @@ -333,7 +331,7 @@ public class InjectedLanguageManagerImpl extends InjectedLanguageManager impleme @SuppressWarnings({"ConstantConditions", "unchecked"}) @NotNull public List intersectWithAllEditableFragments(@NotNull PsiFile injectedPsi, @NotNull TextRange rangeToEdit) { - Place shreds = InjectedLanguageFacadeImpl.getShreds(injectedPsi); + Place shreds = InjectedLanguageUtil.getShreds(injectedPsi); if (shreds == null) return Collections.emptyList(); Object result = null; // optimization: TextRange or ArrayList int count = 0; @@ -381,12 +379,12 @@ public class InjectedLanguageManagerImpl extends InjectedLanguageManager impleme @Override public PsiElement findInjectedElementAt(@NotNull PsiFile hostFile, int hostDocumentOffset) { - return InjectedLanguageFacadeImpl.findInjectedElementNoCommit(hostFile, hostDocumentOffset); + return InjectedLanguageUtil.findInjectedElementNoCommit(hostFile, hostDocumentOffset); } @Override public void dropFileCaches(@NotNull PsiFile file) { - InjectedLanguageFacadeImpl.clearCachedInjectedFragmentsForFile(file); + InjectedLanguageUtil.clearCachedInjectedFragmentsForFile(file); } private final Map myInjectorsClone = new HashMap(); @@ -436,6 +434,27 @@ public class InjectedLanguageManagerImpl extends InjectedLanguageManager impleme } } + @Override + @Nullable + public List> getInjectedPsiFiles(@NotNull final PsiElement host) { + if (!(host instanceof PsiLanguageInjectionHost) || !((PsiLanguageInjectionHost) host).isValidHost()) { + return null; + } + final PsiElement inTree = InjectedLanguageUtil.loadTree(host, host.getContainingFile()); + final List> result = new SmartList>(); + InjectedLanguageUtil.enumerate(inTree, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + @Override + public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { + for (PsiLanguageInjectionHost.Shred place : places) { + if (place.getHost() == inTree) { + result.add(new Pair(injectedPsi, place.getRangeInsideHost())); + } + } + } + }); + return result.isEmpty() ? null : result; + } + private static class PsiManagerRegisteredInjectorsAdapter implements MultiHostInjector { @Override public void getLanguagesToInject(@NotNull final MultiHostRegistrar injectionPlacesRegistrar, @NotNull PsiElement context) { diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageFacadeImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java similarity index 94% rename from platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageFacadeImpl.java rename to platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java index 4a019a46fac2..b1cf67d8945d 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageFacadeImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java @@ -30,13 +30,11 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.util.*; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.InjectedLanguageFacade; import com.intellij.psi.impl.PsiManagerEx; import com.intellij.psi.impl.PsiParameterizedCachedValue; import com.intellij.psi.impl.source.DummyHolder; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.*; -import com.intellij.util.SmartList; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -46,7 +44,7 @@ import java.util.List; /** * @author cdr */ -public class InjectedLanguageFacadeImpl extends InjectedLanguageFacade { +public class InjectedLanguageUtil { static final Key, TextRange>>> HIGHLIGHT_TOKENS = Key.create("HIGHLIGHT_TOKENS"); public static void forceInjectionOnElement(@NotNull PsiElement host) { @@ -58,7 +56,7 @@ public class InjectedLanguageFacadeImpl extends InjectedLanguageFacade { } @NotNull - private static PsiElement loadTree(@NotNull PsiElement host, @NotNull PsiFile containingFile) { + static PsiElement loadTree(@NotNull PsiElement host, @NotNull PsiFile containingFile) { if (containingFile instanceof DummyHolder) { PsiElement context = containingFile.getContext(); if (context != null) { @@ -76,27 +74,6 @@ public class InjectedLanguageFacadeImpl extends InjectedLanguageFacade { return host; } - @Override - @Nullable - public List> getInjectedPsiFiles(@NotNull final PsiElement host) { - if (!(host instanceof PsiLanguageInjectionHost) || !((PsiLanguageInjectionHost) host).isValidHost()) { - return null; - } - final PsiElement inTree = loadTree(host, host.getContainingFile()); - final List> result = new SmartList>(); - enumerate(inTree, new PsiLanguageInjectionHost.InjectedPsiVisitor() { - @Override - public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { - for (PsiLanguageInjectionHost.Shred place : places) { - if (place.getHost() == inTree) { - result.add(new Pair(injectedPsi, place.getRangeInsideHost())); - } - } - } - }); - return result.isEmpty() ? null : result; - } - public static List, TextRange>> getHighlightTokens(@NotNull PsiFile file) { return file.getUserData(HIGHLIGHT_TOKENS); } diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java index 19ca2be6c298..d1ee84f27989 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/MultiHostRegistrarImpl.java @@ -256,7 +256,7 @@ public class MultiHostRegistrarImpl implements MultiHostRegistrar, ModificationT PsiFile newFile = registerDocument(documentWindow, psiFile, place, myHostPsiFile, documentManager); boolean mergeHappened = newFile != psiFile; if (mergeHappened) { - InjectedLanguageFacadeImpl.clearCaches(psiFile, documentWindow); + InjectedLanguageUtil.clearCaches(psiFile, documentWindow); psiFile = newFile; viewProvider = (InjectedFileViewProvider)psiFile.getViewProvider(); documentWindow = (DocumentWindowImpl)viewProvider.getDocument(); @@ -274,7 +274,7 @@ public class MultiHostRegistrarImpl implements MultiHostRegistrar, ModificationT try { List, TextRange>> tokens = obtainHighlightTokensFromLexer(myLanguage, outChars, escapers, place, virtualFile, myProject); - psiFile.putUserData(InjectedLanguageFacadeImpl.HIGHLIGHT_TOKENS, tokens); + psiFile.putUserData(InjectedLanguageUtil.HIGHLIGHT_TOKENS, tokens); } catch (ProcessCanceledException e) { throw e; @@ -385,7 +385,7 @@ public class MultiHostRegistrarImpl implements MultiHostRegistrar, ModificationT final Place shreds, final PsiFile hostPsiFile, final PsiDocumentManager documentManager) { - List injected = InjectedLanguageFacadeImpl.getCachedInjectedDocuments(hostPsiFile); + List injected = InjectedLanguageUtil.getCachedInjectedDocuments(hostPsiFile); for (int i = injected.size()-1; i>=0; i--) { DocumentWindowImpl oldDocument = (DocumentWindowImpl)injected.get(i); diff --git a/platform/lang-impl/src/com/intellij/refactoring/move/FileReferenceContextUtil.java b/platform/lang-impl/src/com/intellij/refactoring/move/FileReferenceContextUtil.java index a15dfa42e4f2..0afa6b6545fc 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/move/FileReferenceContextUtil.java +++ b/platform/lang-impl/src/com/intellij/refactoring/move/FileReferenceContextUtil.java @@ -22,7 +22,7 @@ import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; import com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReference; import com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceOwner; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.IncorrectOperationException; import com.intellij.util.containers.HashMap; import org.jetbrains.annotations.NotNull; @@ -43,7 +43,7 @@ public class FileReferenceContextUtil { element.accept(new PsiRecursiveElementWalkingVisitor(true) { @Override public void visitElement(PsiElement element) { if (element instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { public void visit(@NotNull final PsiFile injectedPsi, @NotNull final List places) { encodeFileReferences(injectedPsi); } @@ -89,7 +89,7 @@ public class FileReferenceContextUtil { } if (element instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(element, new PsiLanguageInjectionHost.InjectedPsiVisitor() { public void visit(@NotNull final PsiFile injectedPsi, @NotNull final List places) { decodeFileReferences(injectedPsi); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/PsiElementRenameHandler.java b/platform/lang-impl/src/com/intellij/refactoring/rename/PsiElementRenameHandler.java index 3b5c3f49bdfd..c23fe24e664d 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/PsiElementRenameHandler.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/PsiElementRenameHandler.java @@ -31,7 +31,7 @@ import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.Messages; import com.intellij.openapi.util.Condition; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.meta.PsiMetaOwner; import com.intellij.psi.meta.PsiWritableMetaData; import com.intellij.refactoring.RefactoringBundle; @@ -57,7 +57,7 @@ public class PsiElementRenameHandler implements RenameHandler { public void invoke(@NotNull Project project, Editor editor, PsiFile file, DataContext dataContext) { PsiElement element = getElement(dataContext); editor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); - final PsiElement nameSuggestionContext = InjectedLanguageFacadeImpl.findElementAtNoCommit(file, editor.getCaretModel().getOffset()); + final PsiElement nameSuggestionContext = InjectedLanguageUtil.findElementAtNoCommit(file, editor.getCaretModel().getOffset()); invoke(element, project, nameSuggestionContext, editor); } @@ -127,7 +127,7 @@ public class PsiElementRenameHandler implements RenameHandler { } } - if (InjectedLanguageFacadeImpl.isInInjectedLanguagePrefixSuffix(element)) { + if (InjectedLanguageUtil.isInInjectedLanguagePrefixSuffix(element)) { final String message = RefactoringBundle.message("error.in.injected.lang.prefix.suffix", UsageViewUtil.getType(element)); return RefactoringBundle.getCannotRefactorMessage(message); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java index 80542b6a3c6a..2a963e5ad5fa 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/InplaceRefactoring.java @@ -62,7 +62,7 @@ import com.intellij.openapi.ui.popup.JBPopupFactory; import com.intellij.openapi.util.*; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.LocalSearchScope; import com.intellij.psi.search.ProjectScope; import com.intellij.psi.search.PsiSearchHelper; @@ -151,7 +151,7 @@ public abstract class InplaceRefactoring { public boolean performInplaceRefactoring(final LinkedHashSet nameSuggestions) { myNameSuggestions = nameSuggestions; - if (InjectedLanguageFacadeImpl.isInInjectedLanguagePrefixSuffix(myElementToRename)) { + if (InjectedLanguageUtil.isInInjectedLanguagePrefixSuffix(myElementToRename)) { return false; } @@ -274,7 +274,7 @@ public abstract class InplaceRefactoring { } else { revertState(); - final TemplateState templateState = TemplateManagerImpl.getTemplateState(InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor)); + final TemplateState templateState = TemplateManagerImpl.getTemplateState(InjectedLanguageUtil.getTopLevelEditor(myEditor)); if (templateState != null) { templateState.gotoEnd(true); } @@ -332,7 +332,7 @@ public abstract class InplaceRefactoring { TextRange range = myScope.getTextRange(); assert range != null; myHighlighters = new ArrayList(); - Editor topLevelEditor = InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor); + Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(myEditor); topLevelEditor.getCaretModel().moveToOffset(range.getStartOffset()); TemplateManager.getInstance(myProject).startTemplate(topLevelEditor, template, templateListener); @@ -508,7 +508,7 @@ public abstract class InplaceRefactoring { if (myOldName == null) return; CommandProcessor.getInstance().executeCommand(myProject, new Runnable() { public void run() { - final Editor topLevelEditor = InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor); + final Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(myEditor); ApplicationManager.getApplication().runWriteAction(new Runnable() { public void run() { final TemplateState state = TemplateManagerImpl.getTemplateState(topLevelEditor); @@ -751,7 +751,7 @@ public abstract class InplaceRefactoring { finally { if (!bind) { try { - ((EditorImpl)InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor)).stopDumb(); + ((EditorImpl)InjectedLanguageUtil.getTopLevelEditor(myEditor)).stopDumb(); } finally { FinishMarkAction.finish(myProject, myEditor, myMarkAction); diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenameHandler.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenameHandler.java index f6a107357ad9..45d74ff03420 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenameHandler.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenameHandler.java @@ -28,7 +28,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiNameIdentifierOwner; import com.intellij.psi.PsiNamedElement; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.refactoring.rename.RenamePsiElementProcessor; import org.jetbrains.annotations.NotNull; @@ -73,7 +73,7 @@ public class MemberInplaceRenameHandler extends VariableInplaceRenameHandler { else { final InplaceRefactoring inplaceRefactoring = editor.getUserData(InplaceRefactoring.INPLACE_RENAMER); if (inplaceRefactoring != null && inplaceRefactoring.getClass() == MemberInplaceRenamer.class) { - final TemplateState templateState = TemplateManagerImpl.getTemplateState(InjectedLanguageFacadeImpl.getTopLevelEditor(editor)); + final TemplateState templateState = TemplateManagerImpl.getTemplateState(InjectedLanguageUtil.getTopLevelEditor(editor)); if (templateState != null) { templateState.gotoEnd(true); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenamer.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenamer.java index 062fc1aa8a65..caf14daadbf3 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenamer.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MemberInplaceRenamer.java @@ -30,7 +30,7 @@ import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.LocalSearchScope; import com.intellij.psi.search.ProjectScope; import com.intellij.psi.search.SearchScope; @@ -202,7 +202,7 @@ public class MemberInplaceRenamer extends VariableInplaceRenamer { } finally { try { - ((EditorImpl)InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor)).stopDumb(); + ((EditorImpl)InjectedLanguageUtil.getTopLevelEditor(myEditor)).stopDumb(); } finally { FinishMarkAction.finish(myProject, myEditor, markAction); @@ -248,7 +248,7 @@ public class MemberInplaceRenamer extends VariableInplaceRenamer { @Override protected void revertStateOnFinish() { - final Editor editor = InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor); + final Editor editor = InjectedLanguageUtil.getTopLevelEditor(myEditor); if (editor == FileEditorManager.getInstance(myProject).getSelectedTextEditor()) { ((EditorImpl)editor).startDumb(); } diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MyLookupExpression.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MyLookupExpression.java index 70960742e739..7db3a3693faf 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MyLookupExpression.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/MyLookupExpression.java @@ -30,7 +30,7 @@ import com.intellij.openapi.extensions.Extensions; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiNamedElement; import com.intellij.psi.codeStyle.SuggestedNameInfo; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.refactoring.rename.NameSuggestionProvider; import com.intellij.refactoring.rename.PreferrableNameSuggestionProvider; @@ -78,7 +78,7 @@ public class MyLookupExpression extends Expression { @Override public void handleInsert(InsertionContext context, LookupElement item) { if (shouldSelectAll) return; - final Editor topLevelEditor = InjectedLanguageFacadeImpl.getTopLevelEditor(context.getEditor()); + final Editor topLevelEditor = InjectedLanguageUtil.getTopLevelEditor(context.getEditor()); final TemplateState templateState = TemplateManagerImpl.getTemplateState(topLevelEditor); if (templateState != null) { final TextRange range = templateState.getCurrentVariableRange(); diff --git a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/VariableInplaceRenamer.java b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/VariableInplaceRenamer.java index 222ca0db8098..f52e6635ef16 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/VariableInplaceRenamer.java +++ b/platform/lang-impl/src/com/intellij/refactoring/rename/inplace/VariableInplaceRenamer.java @@ -32,7 +32,7 @@ import com.intellij.openapi.ui.popup.JBPopupFactory; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.PsiUtilCore; import com.intellij.refactoring.RefactoringBundle; import com.intellij.refactoring.rename.AutomaticRenamingDialog; @@ -249,7 +249,7 @@ public class VariableInplaceRenamer extends InplaceRefactoring { } finally { try { - ((EditorImpl)InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor)).stopDumb(); + ((EditorImpl)InjectedLanguageUtil.getTopLevelEditor(myEditor)).stopDumb(); } finally { FinishMarkAction.finish(myProject, myEditor, markAction); @@ -298,7 +298,7 @@ public class VariableInplaceRenamer extends InplaceRefactoring { revertStateOnFinish(); } else { - ((EditorImpl)InjectedLanguageFacadeImpl.getTopLevelEditor(myEditor)).stopDumb(); + ((EditorImpl)InjectedLanguageUtil.getTopLevelEditor(myEditor)).stopDumb(); } } diff --git a/platform/platform-resources/src/META-INF/LangExtensions.xml b/platform/platform-resources/src/META-INF/LangExtensions.xml index 78eedf74f4ef..950645fbeeac 100644 --- a/platform/platform-resources/src/META-INF/LangExtensions.xml +++ b/platform/platform-resources/src/META-INF/LangExtensions.xml @@ -50,8 +50,6 @@ - > injectedPsi = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(host); + final List> injectedPsi = InjectedLanguageManager.getInstance(project).getInjectedPsiFiles(host); return injectedPsi == null || injectedPsi.isEmpty(); } diff --git a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/UnInjectLanguageAction.java b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/UnInjectLanguageAction.java index 3829287efc27..dcd55e753b53 100644 --- a/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/UnInjectLanguageAction.java +++ b/plugins/IntelliLang/src/org/intellij/plugins/intelliLang/inject/UnInjectLanguageAction.java @@ -28,7 +28,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.FileContentUtil; import com.intellij.util.IncorrectOperationException; import gnu.trove.THashSet; @@ -55,7 +55,7 @@ public class UnInjectLanguageAction implements IntentionAction, LowPriorityActio public boolean isAvailable(@NotNull Project project, Editor editor, PsiFile file) { final int offset = editor.getCaretModel().getOffset(); - final PsiFile psiFile = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(file, offset); + final PsiFile psiFile = InjectedLanguageUtil.findInjectedPsiNoCommit(file, offset); if (psiFile == null) return false; final LanguageInjectionSupport support = psiFile.getUserData(LanguageInjectionSupport.INJECTOR_SUPPORT); return support != null; @@ -70,7 +70,7 @@ public class UnInjectLanguageAction implements IntentionAction, LowPriorityActio } private static void invokeImpl(Project project, Editor editor, PsiFile file) { - final PsiFile psiFile = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(file, editor.getCaretModel().getOffset()); + final PsiFile psiFile = InjectedLanguageUtil.findInjectedPsiNoCommit(file, editor.getCaretModel().getOffset()); if (psiFile == null) return; final PsiLanguageInjectionHost host = InjectedLanguageManager.getInstance(project).getInjectionHost(psiFile); if (host == null) return; @@ -88,7 +88,7 @@ public class UnInjectLanguageAction implements IntentionAction, LowPriorityActio private static boolean defaultFunctionalityWorked(final PsiLanguageInjectionHost host) { final THashSet languages = new THashSet(); - final List> files = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(host); + final List> files = InjectedLanguageManager.getInstance(host.getProject()).getInjectedPsiFiles(host); if (files == null) return false; for (Pair pair : files) { for (Language lang = pair.first.getLanguage(); lang != null; lang = lang.getBaseLanguage()) { diff --git a/plugins/IntentionPowerPak/src/com/siyeh/ipp/comment/CommentOnLineWithSourcePredicate.java b/plugins/IntentionPowerPak/src/com/siyeh/ipp/comment/CommentOnLineWithSourcePredicate.java index ed366ec1b1ef..a76a86fedbbe 100644 --- a/plugins/IntentionPowerPak/src/com/siyeh/ipp/comment/CommentOnLineWithSourcePredicate.java +++ b/plugins/IntentionPowerPak/src/com/siyeh/ipp/comment/CommentOnLineWithSourcePredicate.java @@ -16,7 +16,7 @@ package com.siyeh.ipp.comment; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.javadoc.PsiDocComment; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiTreeUtil; @@ -37,7 +37,7 @@ class CommentOnLineWithSourcePredicate implements PsiElementPredicate { } final PsiComment comment = (PsiComment)element; - if (comment instanceof PsiLanguageInjectionHost && InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)comment)) { + if (comment instanceof PsiLanguageInjectionHost && InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)comment)) { return false; } final IElementType type = comment.getTokenType(); diff --git a/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java b/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java index 9ecfa303c689..d58e0d8935c2 100644 --- a/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java +++ b/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java @@ -25,7 +25,7 @@ import com.intellij.openapi.editor.ex.EditorEx; import com.intellij.openapi.fileEditor.FileDocumentManager; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.refactoring.PackageWrapper; import com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesProcessor; @@ -98,7 +98,7 @@ public class AndroidRenameTest extends AndroidTestCase { protected void run() throws Throwable { Editor editor = myFixture.getEditor(); PsiFile file = myFixture.getFile(); - Editor completionEditor = InjectedLanguageFacadeImpl.getEditorForInjectedLanguageNoCommit(editor, file); + Editor completionEditor = InjectedLanguageUtil.getEditorForInjectedLanguageNoCommit(editor, file); PsiElement element = TargetElementUtilBase.findTargetElement(completionEditor, TargetElementUtilBase.REFERENCED_ELEMENT_ACCEPTED | TargetElementUtilBase.ELEMENT_NAME_ACCEPTED); assert element != null; diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/InjectedGroovyTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/InjectedGroovyTest.groovy index ec9a72e32c68..cd04b5caa43f 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/InjectedGroovyTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/completion/InjectedGroovyTest.groovy @@ -23,7 +23,7 @@ import com.intellij.testFramework.fixtures.LightCodeInsightFixtureTestCase import org.intellij.plugins.intelliLang.inject.TemporaryPlacesRegistry import org.jetbrains.plugins.groovy.GroovyFileType -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil /** * @author peter @@ -54,7 +54,7 @@ s.codePointAt(0) def offset = psiFile.getText().indexOf('"') + 1 assertNotNull(psiFile.findElementAt(offset)); - assert InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(psiFile, offset) + assert InjectedLanguageUtil.findInjectedPsiNoCommit(psiFile, offset) } public void testRegexInjections() { @@ -62,8 +62,8 @@ s.codePointAt(0) final PsiFile psiFile = myFixture.configureByText("script.groovy", 'new groovy.lang.GroovyShell().evaluate(/ blah-blah-blah \\ language won\'t be injected here /)'); assertNotNull(psiFile); - assert InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(psiFile, psiFile.getText().indexOf('blah') + 1) - assert InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(psiFile, psiFile.getText().indexOf('injected') + 1) + assert InjectedLanguageUtil.findInjectedPsiNoCommit(psiFile, psiFile.getText().indexOf('blah') + 1) + assert InjectedLanguageUtil.findInjectedPsiNoCommit(psiFile, psiFile.getText().indexOf('injected') + 1) } } diff --git a/plugins/java-i18n/src/com/intellij/codeInspection/i18n/SuppressByCommentOutAction.java b/plugins/java-i18n/src/com/intellij/codeInspection/i18n/SuppressByCommentOutAction.java index dad8077bb62e..f674084163a0 100644 --- a/plugins/java-i18n/src/com/intellij/codeInspection/i18n/SuppressByCommentOutAction.java +++ b/plugins/java-i18n/src/com/intellij/codeInspection/i18n/SuppressByCommentOutAction.java @@ -24,7 +24,7 @@ import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.util.IncorrectOperationException; @@ -45,7 +45,7 @@ class SuppressByCommentOutAction extends SuppressIntentionAction { if (!CodeInsightUtilBase.preparePsiElementForWrite(element)) return; element = findJavaCodeUpThere(element); PsiFile file = element.getContainingFile(); - editor = InjectedLanguageFacadeImpl.openEditorFor(file, project); + editor = InjectedLanguageUtil.openEditorFor(file, project); int endOffset = element.getTextRange().getEndOffset(); int line = editor.getDocument().getLineNumber(endOffset); int lineEndOffset = editor.getDocument().getLineEndOffset(line); diff --git a/plugins/spellchecker/src/com/intellij/spellchecker/quickfixes/RenameTo.java b/plugins/spellchecker/src/com/intellij/spellchecker/quickfixes/RenameTo.java index 407a4cf0ccdc..2bf1a9205d96 100644 --- a/plugins/spellchecker/src/com/intellij/spellchecker/quickfixes/RenameTo.java +++ b/plugins/spellchecker/src/com/intellij/spellchecker/quickfixes/RenameTo.java @@ -27,7 +27,7 @@ import com.intellij.openapi.fileEditor.impl.text.TextEditorPsiDataProvider; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.refactoring.actions.RenameElementAction; import com.intellij.refactoring.rename.NameSuggestionProvider; import com.intellij.refactoring.rename.RenameHandlerRegistry; @@ -86,7 +86,7 @@ public class RenameTo extends ShowSuggestions implements SpellCheckerQuickFix { HashMap map = new HashMap(); PsiElement psiElement = descriptor.getPsiElement(); PsiFile containingFile = psiElement.getContainingFile(); - Editor editor = InjectedLanguageFacadeImpl.openEditorFor(containingFile, project); + Editor editor = InjectedLanguageUtil.openEditorFor(containingFile, project); if (editor == null) { return; } diff --git a/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/TokenizerBase.java b/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/TokenizerBase.java index d9b83abbd6c8..5210dbe5e639 100644 --- a/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/TokenizerBase.java +++ b/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/TokenizerBase.java @@ -17,7 +17,7 @@ package com.intellij.spellchecker.tokenizer; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiLanguageInjectionHost; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.spellchecker.inspections.Splitter; import org.jetbrains.annotations.NotNull; @@ -37,7 +37,7 @@ public class TokenizerBase extends Tokenizer { @Override public void tokenize(@NotNull T element, TokenConsumer consumer) { - if (element instanceof PsiLanguageInjectionHost && InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)element)) { + if (element instanceof PsiLanguageInjectionHost && InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)element)) { return; } consumer.consumeToken(element, mySplitter); diff --git a/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/XmlTextTokenizer.java b/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/XmlTextTokenizer.java index 3864f8e04691..2703391ba897 100644 --- a/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/XmlTextTokenizer.java +++ b/plugins/spellchecker/src/com/intellij/spellchecker/tokenizer/XmlTextTokenizer.java @@ -15,10 +15,10 @@ */ package com.intellij.spellchecker.tokenizer; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; import com.intellij.psi.xml.XmlText; import com.intellij.psi.xml.XmlToken; import com.intellij.psi.xml.XmlTokenType; @@ -30,7 +30,7 @@ import java.util.List; public class XmlTextTokenizer extends Tokenizer { @Override public void tokenize(@NotNull XmlText element, TokenConsumer consumer) { - List> list = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(element); + List> list = InjectedLanguageManager.getInstance(element.getProject()).getInjectedPsiFiles(element); if (list != null && list.size() > 0) return; final PsiElement[] children = element.getChildren(); for (PsiElement child : children) { diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/psi/impl/XPathElementImpl.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/psi/impl/XPathElementImpl.java index b4ffb6a8298d..728bbee7c3d3 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/psi/impl/XPathElementImpl.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/psi/impl/XPathElementImpl.java @@ -21,7 +21,7 @@ import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElementVisitor; import com.intellij.psi.impl.PsiTreeDebugBuilder; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.util.IncorrectOperationException; import org.intellij.lang.xpath.XPath2ElementTypes; import org.intellij.lang.xpath.XPathElementTypes; @@ -141,7 +141,7 @@ public class XPathElementImpl extends ASTWrapperPsiElement implements XPathEleme } public final String getUnescapedText() { - if (InjectedLanguageFacadeImpl.isInInjectedLanguagePrefixSuffix(this)) { + if (InjectedLanguageUtil.isInInjectedLanguagePrefixSuffix(this)) { // do not attempt to decode text if PsiElement is part of prefix/suffix return getText(); } diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/XsltSupport.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/XsltSupport.java index a73a30a3e741..76887f89f3eb 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/XsltSupport.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/XsltSupport.java @@ -22,7 +22,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.impl.PsiFileEx; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.util.*; import com.intellij.psi.xml.*; import com.intellij.ui.LayeredIcon; @@ -88,7 +88,7 @@ public class XsltSupport { final XmlAttributeValue value = attribute.getValueElement(); if (value != null) { final List files = new SmartList(); - InjectedLanguageFacadeImpl.enumerate(value, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(value, new PsiLanguageInjectionHost.InjectedPsiVisitor() { public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { if (injectedPsi instanceof XPathFile) { files.add(injectedPsi); diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/util/XsltCodeInsightUtil.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/util/XsltCodeInsightUtil.java index 65baf53f6eae..38df41dde977 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/util/XsltCodeInsightUtil.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/util/XsltCodeInsightUtil.java @@ -17,13 +17,13 @@ package org.intellij.lang.xpath.xslt.util; import com.intellij.codeInsight.PsiEquivalenceUtil; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.util.Pair; import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.PsiRecursiveElementVisitor; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; import com.intellij.psi.search.PsiElementProcessor; import com.intellij.psi.util.PsiElementFilter; import com.intellij.psi.util.PsiTreeUtil; @@ -125,7 +125,7 @@ public class XsltCodeInsightUtil { public static TextRange getRangeInsideHostingFile(XPathElement expr) { final PsiLanguageInjectionHost host = PsiTreeUtil.getContextOfType(expr, PsiLanguageInjectionHost.class, true); assert host != null; - final List> psi = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(host); + final List> psi = InjectedLanguageManager.getInstance(host.getProject()).getInjectedPsiFiles(host); assert psi != null; for (Pair pair : psi) { if (PsiTreeUtil.isAncestor(pair.first, expr, false)) { @@ -140,7 +140,7 @@ public class XsltCodeInsightUtil { public static TextRange getRangeInsideHost(XPathElement expr) { final PsiLanguageInjectionHost host = PsiTreeUtil.getContextOfType(expr, PsiLanguageInjectionHost.class, true); assert host != null; - final List> psi = InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(host); + final List> psi = InjectedLanguageManager.getInstance(host.getProject()).getInjectedPsiFiles(host); assert psi != null; for (Pair pair : psi) { if (PsiTreeUtil.isAncestor(pair.first, expr, false)) { diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/validation/XsltXmlAnnotator.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/validation/XsltXmlAnnotator.java index 236012e7e968..444410b9d045 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/validation/XsltXmlAnnotator.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/validation/XsltXmlAnnotator.java @@ -21,7 +21,7 @@ import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiLanguageInjectionHost; import com.intellij.psi.XmlElementVisitor; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.xml.XmlAttribute; import com.intellij.psi.xml.XmlAttributeValue; import org.intellij.lang.xpath.XPathFile; @@ -49,7 +49,7 @@ public class XsltXmlAnnotator extends XmlElementVisitor implements Annotator { if (s == null || s.length() == 0) { final PsiElement parent = value.getParent(); if (parent instanceof XmlAttribute && XsltSupport.isXPathAttribute((XmlAttribute)parent)) { - InjectedLanguageFacadeImpl.enumerate(value, new PsiLanguageInjectionHost.InjectedPsiVisitor() { + InjectedLanguageUtil.enumerate(value, new PsiLanguageInjectionHost.InjectedPsiVisitor() { @Override public void visit(@NotNull PsiFile injectedPsi, @NotNull List places) { if (injectedPsi instanceof XPathFile) { diff --git a/plugins/xpath/xpath-lang/test/org/intellij/lang/xpath/xslt/Xslt2RefactoringTest.java b/plugins/xpath/xpath-lang/test/org/intellij/lang/xpath/xslt/Xslt2RefactoringTest.java index 2d65472b76d5..4f27becf8d88 100644 --- a/plugins/xpath/xpath-lang/test/org/intellij/lang/xpath/xslt/Xslt2RefactoringTest.java +++ b/plugins/xpath/xpath-lang/test/org/intellij/lang/xpath/xslt/Xslt2RefactoringTest.java @@ -22,7 +22,7 @@ import com.intellij.psi.PsiFile; import com.intellij.psi.codeStyle.CodeStyleSettings; import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.psi.formatter.xml.XmlCodeStyleSettings; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import org.intellij.lang.xpath.TestBase; import org.intellij.lang.xpath.psi.XPathExpression; import org.intellij.lang.xpath.xslt.refactoring.RefactoringOptions; @@ -77,8 +77,8 @@ public class Xslt2RefactoringTest extends TestBase { } }; - final PsiFile file = InjectedLanguageFacadeImpl.findInjectedPsiNoCommit(myFixture.getFile(), editor.getCaretModel().getOffset()); - final Editor editorWindow = InjectedLanguageFacadeImpl.getInjectedEditorForInjectedFile(editor, file); + final PsiFile file = InjectedLanguageUtil.findInjectedPsiNoCommit(myFixture.getFile(), editor.getCaretModel().getOffset()); + final Editor editorWindow = InjectedLanguageUtil.getInjectedEditorForInjectedFile(editor, file); assertTrue(editorWindow instanceof EditorWindow); action.invoke(myFixture.getProject(), editorWindow, file, null); diff --git a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java index 8d53fae183a3..4040ade8572a 100644 --- a/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java +++ b/xml/dom-impl/src/com/intellij/util/xml/impl/GenericValueReferenceProvider.java @@ -19,7 +19,7 @@ import com.intellij.javaee.web.PsiReferenceConverter; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.psi.*; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.xml.*; import com.intellij.util.ProcessingContext; import com.intellij.util.ReflectionCache; @@ -61,10 +61,10 @@ public class GenericValueReferenceProvider extends PsiReferenceProvider { if (psiElement instanceof XmlTag) { for (XmlText text : ((XmlTag)psiElement).getValue().getTextElements()) { - if (InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)text)) return PsiReference.EMPTY_ARRAY; + if (InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)text)) return PsiReference.EMPTY_ARRAY; } } else { - if (InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)psiElement)) return PsiReference.EMPTY_ARRAY; + if (InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)psiElement)) return PsiReference.EMPTY_ARRAY; } final GenericDomValue domValue = (GenericDomValue)domElement; diff --git a/xml/dom-openapi/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java b/xml/dom-openapi/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java index ed613ed5d3c0..f11d5ada84e9 100644 --- a/xml/dom-openapi/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java +++ b/xml/dom-openapi/src/com/intellij/util/xml/AbstractDomDeclarationSearcher.java @@ -19,7 +19,7 @@ import com.intellij.pom.PomDeclarationSearcher; import com.intellij.pom.PomTarget; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiLanguageInjectionHost; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.tree.IElementType; import com.intellij.psi.xml.*; import com.intellij.util.Consumer; @@ -42,7 +42,7 @@ public abstract class AbstractDomDeclarationSearcher extends PomDeclarationSearc if (tokenType == XmlTokenType.XML_DATA_CHARACTERS && psiElement.getParent() instanceof XmlText && psiElement.getParent().getParent() instanceof XmlTag) { final XmlTag tag = (XmlTag)psiElement.getParent().getParent(); for (XmlText text : tag.getValue().getTextElements()) { - if (InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)text)) { + if (InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)text)) { return; } } @@ -50,7 +50,7 @@ public abstract class AbstractDomDeclarationSearcher extends PomDeclarationSearc nameElement = domManager.getDomElement(tag); } else if (tokenType == XmlTokenType.XML_ATTRIBUTE_VALUE_TOKEN && psiElement.getParent() instanceof XmlAttributeValue && psiElement.getParent().getParent() instanceof XmlAttribute) { final PsiElement attributeValue = psiElement.getParent(); - if (InjectedLanguageFacadeImpl.hasInjections((PsiLanguageInjectionHost)attributeValue)) { + if (InjectedLanguageUtil.hasInjections((PsiLanguageInjectionHost)attributeValue)) { return; } nameElement = domManager.getDomElement((XmlAttribute)attributeValue.getParent()); diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java index 9995f3202056..97cbbcef64c8 100644 --- a/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java +++ b/xml/impl/src/com/intellij/codeInsight/editorActions/XmlAutoPopupHandler.java @@ -26,7 +26,7 @@ import com.intellij.psi.FileViewProvider; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiWhiteSpace; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.templateLanguages.TemplateLanguageFileViewProvider; import com.intellij.psi.xml.XmlTag; import com.intellij.xml.util.XmlUtil; @@ -61,7 +61,7 @@ public class XmlAutoPopupHandler extends TypedHandlerDelegate { public boolean value(PsiFile file) { int offset = editor.getCaretModel().getOffset(); - PsiElement lastElement = InjectedLanguageFacadeImpl.findElementAtNoCommit(file, offset - 1); + PsiElement lastElement = InjectedLanguageUtil.findElementAtNoCommit(file, offset - 1); if (lastElement instanceof PsiFile) { //the very end of an injected file lastElement = file.findElementAt(offset - 1); } diff --git a/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java b/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java index c3cc4d979ee1..eda7cd827243 100644 --- a/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java +++ b/xml/impl/src/com/intellij/codeInsight/editorActions/moveUpDown/XmlMover.java @@ -15,12 +15,15 @@ */ package com.intellij.codeInsight.editorActions.moveUpDown; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.openapi.editor.Document; import com.intellij.openapi.editor.Editor; import com.intellij.openapi.util.TextRange; -import com.intellij.psi.*; +import com.intellij.psi.PsiElement; +import com.intellij.psi.PsiFile; +import com.intellij.psi.PsiNamedElement; +import com.intellij.psi.PsiWhiteSpace; import com.intellij.psi.html.HtmlTag; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.psi.xml.XmlAttribute; import com.intellij.psi.xml.XmlFile; @@ -56,8 +59,8 @@ class XmlMover extends LineMover { final XmlText text2 = PsiTreeUtil.getParentOfType(movedEndElement, XmlText.class); // Let's do not care about injections for this mover - if ( ( text != null && InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(text) != null) || - ( text2 != null && InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(text2) != null)) { + if ( ( text != null && InjectedLanguageManager.getInstance(file.getProject()).getInjectedPsiFiles(text) != null) || + ( text2 != null && InjectedLanguageManager.getInstance(file.getProject()).getInjectedPsiFiles(text2) != null)) { return false; } diff --git a/xml/impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java b/xml/impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java index 7adad3fb99e4..6080d1986669 100644 --- a/xml/impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java +++ b/xml/impl/src/com/intellij/psi/impl/source/xml/XmlTextImpl.java @@ -17,6 +17,7 @@ package com.intellij.psi.impl.source.xml; import com.intellij.lang.ASTFactory; import com.intellij.lang.ASTNode; +import com.intellij.lang.injection.InjectedLanguageManager; import com.intellij.lang.xml.XMLLanguage; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.util.Pair; @@ -37,7 +38,7 @@ import com.intellij.psi.impl.source.codeStyle.CodeEditUtil; import com.intellij.psi.impl.source.tree.FileElement; import com.intellij.psi.impl.source.tree.LeafElement; import com.intellij.psi.impl.source.tree.TreeElement; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.impl.source.tree.injected.XmlTextLiteralEscaper; import com.intellij.psi.impl.source.xml.behavior.DefaultXmlPsiPolicy; import com.intellij.psi.tree.IElementType; @@ -365,7 +366,7 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI @Nullable public List> getInjectedPsi() { - return InjectedLanguageFacadeImpl.getInstance().getInjectedPsiFiles(this); + return InjectedLanguageManager.getInstance(getProject()).getInjectedPsiFiles(this); } public TextRange getCDATAInterior() { @@ -520,6 +521,6 @@ public class XmlTextImpl extends XmlElementImpl implements XmlText, PsiLanguageI return new XmlTextLiteralEscaper(this); } public void processInjectedPsi(@NotNull InjectedPsiVisitor visitor) { - InjectedLanguageFacadeImpl.enumerate(this, visitor); + InjectedLanguageUtil.enumerate(this, visitor); } } diff --git a/xml/impl/src/com/intellij/xml/util/HtmlUtil.java b/xml/impl/src/com/intellij/xml/util/HtmlUtil.java index 1e8fb921b9c9..27207f7d8178 100644 --- a/xml/impl/src/com/intellij/xml/util/HtmlUtil.java +++ b/xml/impl/src/com/intellij/xml/util/HtmlUtil.java @@ -38,7 +38,7 @@ import com.intellij.psi.html.HtmlTag; import com.intellij.psi.impl.source.html.HtmlDocumentImpl; import com.intellij.psi.impl.source.parsing.xml.HtmlBuilderDriver; import com.intellij.psi.impl.source.parsing.xml.XmlBuilder; -import com.intellij.psi.impl.source.tree.injected.InjectedLanguageFacadeImpl; +import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil; import com.intellij.psi.impl.source.xml.XmlAttributeImpl; import com.intellij.psi.templateLanguages.TemplateLanguageFileViewProvider; import com.intellij.psi.templateLanguages.TemplateLanguageUtil; @@ -471,7 +471,7 @@ public class HtmlUtil { for (final XmlText text : texts) { for (PsiElement _element : text.getChildren()) { if (_element instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(_element, injectedPsiVisitor); + InjectedLanguageUtil.enumerate(_element, injectedPsiVisitor); } } } @@ -481,7 +481,7 @@ public class HtmlUtil { if (comments != null && comments.length > 0) { for (final XmlComment comment : comments) { if (comment instanceof PsiLanguageInjectionHost) { - InjectedLanguageFacadeImpl.enumerate(comment, injectedPsiVisitor); + InjectedLanguageUtil.enumerate(comment, injectedPsiVisitor); } } } From 220852205e9c07150d9233fe0790404965286592 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Thu, 21 Jun 2012 14:17:49 +0200 Subject: [PATCH 02/15] move DefinitionsSearch to indexing-api --- .../src/com/intellij/psi/search/searches/DefinitionsSearch.java | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename platform/{lang-api => indexing-api}/src/com/intellij/psi/search/searches/DefinitionsSearch.java (100%) diff --git a/platform/lang-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java b/platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java similarity index 100% rename from platform/lang-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java rename to platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java From a664685e61d0d3e6d9b207aaf007cbffaaf6c6ef Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Thu, 21 Jun 2012 15:24:02 +0200 Subject: [PATCH 03/15] DefinitionsSearch.EP_NAME --- .../com/intellij/psi/search/searches/DefinitionsSearch.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java b/platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java index 1d141b19c265..8d78d9d873b6 100644 --- a/platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java +++ b/platform/indexing-api/src/com/intellij/psi/search/searches/DefinitionsSearch.java @@ -16,8 +16,10 @@ package com.intellij.psi.search.searches; +import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.psi.PsiElement; import com.intellij.util.Query; +import com.intellij.util.QueryExecutor; /** * The search is used in two IDE navigation functions namely Go To Implementation (Ctrl+Alt+B) and @@ -27,6 +29,7 @@ import com.intellij.util.Query; * @author max */ public class DefinitionsSearch extends ExtensibleQueryFactory { + public static ExtensionPointName EP_NAME = ExtensionPointName.create("com.intellij.definitionsSearch"); public static DefinitionsSearch INSTANCE = new DefinitionsSearch(); public static Query search(PsiElement definitionsOf) { From 9fcee29903e703c3fb0384805d8d9e88fdfb1e29 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Thu, 21 Jun 2012 16:14:50 +0200 Subject: [PATCH 04/15] New module: java-indexing-api --- .idea/modules.xml | 1 + build/scripts/layouts.gant | 3 ++- java/java-indexing-api/java-indexing-api.iml | 12 ++++++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 java/java-indexing-api/java-indexing-api.iml diff --git a/.idea/modules.xml b/.idea/modules.xml index 8720385396a2..d943f90d0368 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -56,6 +56,7 @@ + diff --git a/build/scripts/layouts.gant b/build/scripts/layouts.gant index cba7816b15ef..55c5cf77e6a6 100644 --- a/build/scripts/layouts.gant +++ b/build/scripts/layouts.gant @@ -49,7 +49,7 @@ def layoutFull(String home, String targetDirectory, String patchedDescriptorDir //noinspection GroovyAssignabilityCheck List openapiModules = [platformApiModules, - "java-psi-api", "openapi", "testFramework-java", "debugger-openapi", "compiler-openapi", "dom-openapi", "execution-openapi", + "java-psi-api", "java-indexing-api", "openapi", "testFramework-java", "debugger-openapi", "compiler-openapi", "dom-openapi", "execution-openapi", "jsp-openapi", "jsp-base-openapi"].flatten() //noinspection GroovyAssignabilityCheck @@ -531,6 +531,7 @@ def layout_core_upsource(String home, String target) { module("java-psi-impl") module("projectModel-api") module("projectModel-impl") + module("java-indexing-api") module("java-indexing-impl") module("platform-resources") module("platform-resources-en") diff --git a/java/java-indexing-api/java-indexing-api.iml b/java/java-indexing-api/java-indexing-api.iml new file mode 100644 index 000000000000..d5c074327501 --- /dev/null +++ b/java/java-indexing-api/java-indexing-api.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + From 577ede3fe23b21416d9cababd304b6c734564a21 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Fri, 22 Jun 2012 08:55:07 +0200 Subject: [PATCH 05/15] move searchers to indexing module --- java/execution/impl/execution-impl.iml | 1 + java/java-impl/java-impl.iml | 1 + .../refactoring/memberPullUp/PullUpHelper.java | 3 --- .../refactoring/rename/RenameJavaClassProcessor.java | 1 - java/java-indexing-api/java-indexing-api.iml | 1 + .../intellij/psi/search/searches/AllClassesSearch.java | 0 .../psi/search/searches/ClassInheritorsSearch.java | 10 +++++----- .../search/searches/DirectClassInheritorsSearch.java | 0 .../psi/search/searches/OverridingMethodsSearch.java | 2 +- java/java-indexing-impl/java-indexing-impl.iml | 1 + .../navigation/ClassImplementationsSearch.java | 0 .../navigation/MethodImplementationsSearch.java | 0 .../impl/search/ConstructorReferencesSearchHelper.java | 0 .../psi/impl/search/ConstructorReferencesSearcher.java | 0 .../search/PsiAnnotationMethodReferencesSearcher.java | 0 .../intellij/psi/impl/light/LightMemberReference.java | 0 java/java-tests/java-tests.iml | 1 + .../codeInsight/daemon/ImplementationsViewTest.java | 1 - .../psi/search/PsiElementProcessorAdapter.java | 2 +- plugins/InspectionGadgets/InspectionGadgetsPlugin.iml | 1 + plugins/IntentionPowerPak/IntentionPowerPackPlugin.iml | 1 + .../ConvertInterfaceToClassPredicate.java | 1 - plugins/android-designer/android-designer.iml | 1 + plugins/android/android.iml | 1 + plugins/groovy/jetgroovy.iml | 1 + .../groovy/lang/findUsages/FindUsagesTest.groovy | 1 - plugins/junit/junit.iml | 1 + plugins/rearranger/rearranger.iml | 1 + plugins/testng/testng.iml | 1 + resources/src/META-INF/IdeaPlugin.xml | 5 ++--- 30 files changed, 22 insertions(+), 17 deletions(-) rename java/{openapi => java-indexing-api}/src/com/intellij/psi/search/searches/AllClassesSearch.java (100%) rename java/{openapi => java-indexing-api}/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java (97%) rename java/{openapi => java-indexing-api}/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java (100%) rename java/{openapi => java-indexing-api}/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java (98%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/codeInsight/navigation/ClassImplementationsSearch.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/codeInsight/navigation/MethodImplementationsSearch.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/search/ConstructorReferencesSearchHelper.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/search/PsiAnnotationMethodReferencesSearcher.java (100%) rename java/{java-impl => java-psi-impl}/src/com/intellij/psi/impl/light/LightMemberReference.java (100%) rename platform/{lang-api => core-api}/src/com/intellij/psi/search/PsiElementProcessorAdapter.java (96%) diff --git a/java/execution/impl/execution-impl.iml b/java/execution/impl/execution-impl.iml index 445fdea5ddf7..b3e1db2cbc1f 100644 --- a/java/execution/impl/execution-impl.iml +++ b/java/execution/impl/execution-impl.iml @@ -16,6 +16,7 @@ + diff --git a/java/java-impl/java-impl.iml b/java/java-impl/java-impl.iml index 9735a4a7fad1..1df40d12996a 100644 --- a/java/java-impl/java-impl.iml +++ b/java/java-impl/java-impl.iml @@ -32,6 +32,7 @@ + diff --git a/java/java-impl/src/com/intellij/refactoring/memberPullUp/PullUpHelper.java b/java/java-impl/src/com/intellij/refactoring/memberPullUp/PullUpHelper.java index 71305101c8d1..3cea9619e270 100644 --- a/java/java-impl/src/com/intellij/refactoring/memberPullUp/PullUpHelper.java +++ b/java/java-impl/src/com/intellij/refactoring/memberPullUp/PullUpHelper.java @@ -33,10 +33,8 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.progress.ProgressManager; -import com.intellij.openapi.util.Comparing; import com.intellij.openapi.util.Condition; import com.intellij.openapi.util.Key; -import com.intellij.openapi.util.Ref; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; import com.intellij.psi.codeStyle.CodeStyleSettings; @@ -64,7 +62,6 @@ import com.intellij.util.IncorrectOperationException; import com.intellij.util.Query; import com.intellij.util.VisibilityUtil; import com.intellij.util.containers.HashMap; -import com.intellij.util.containers.MultiMap; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaClassProcessor.java b/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaClassProcessor.java index d651777f0106..f827af6454bd 100644 --- a/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaClassProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaClassProcessor.java @@ -34,7 +34,6 @@ import com.intellij.refactoring.HelpID; import com.intellij.refactoring.JavaRefactoringSettings; import com.intellij.refactoring.RefactoringBundle; import com.intellij.refactoring.listeners.RefactoringElementListener; -import com.intellij.refactoring.util.ConflictsUtil; import com.intellij.refactoring.util.MoveRenameUsageInfo; import com.intellij.refactoring.util.RefactoringUIUtil; import com.intellij.refactoring.util.RefactoringUtil; diff --git a/java/java-indexing-api/java-indexing-api.iml b/java/java-indexing-api/java-indexing-api.iml index d5c074327501..ef9a5293175a 100644 --- a/java/java-indexing-api/java-indexing-api.iml +++ b/java/java-indexing-api/java-indexing-api.iml @@ -7,6 +7,7 @@ + diff --git a/java/openapi/src/com/intellij/psi/search/searches/AllClassesSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/AllClassesSearch.java similarity index 100% rename from java/openapi/src/com/intellij/psi/search/searches/AllClassesSearch.java rename to java/java-indexing-api/src/com/intellij/psi/search/searches/AllClassesSearch.java diff --git a/java/openapi/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java similarity index 97% rename from java/openapi/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java rename to java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java index f23d58e3f89f..0b283808834c 100644 --- a/java/openapi/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java +++ b/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java @@ -18,7 +18,7 @@ package com.intellij.psi.search.searches; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.progress.ProgressIndicator; -import com.intellij.openapi.progress.ProgressManager; +import com.intellij.openapi.progress.ProgressIndicatorProvider; import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.Condition; import com.intellij.openapi.util.Pair; @@ -56,7 +56,7 @@ public class ClassInheritorsSearch extends ExtensibleQueryFactory() { @@ -171,7 +171,7 @@ public class ClassInheritorsSearch extends ExtensibleQueryFactory() { @Override public boolean process(final PsiClass aClass) { - ProgressManager.checkCanceled(); + ProgressIndicatorProvider.checkCanceled(); final String qname1 = ApplicationManager.getApplication().runReadAction(new Computable() { @Override @Nullable @@ -193,7 +193,7 @@ public class ClassInheritorsSearch extends ExtensibleQueryFactory processor = new Processor() { @Override public boolean process(final PsiClass candidate) { - ProgressManager.checkCanceled(); + ProgressIndicatorProvider.checkCanceled(); final Ref result = new Ref(); final String[] fqn = new String[1]; @@ -233,7 +233,7 @@ public class ClassInheritorsSearch extends ExtensibleQueryFactory, String> pair = stack.pop(); PsiClass psiClass = pair.getFirst().get(); diff --git a/java/openapi/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java similarity index 100% rename from java/openapi/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java rename to java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java diff --git a/java/openapi/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java similarity index 98% rename from java/openapi/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java rename to java/java-indexing-api/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java index 0c310d11a422..ef1fcd588ffd 100644 --- a/java/openapi/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java +++ b/java/java-indexing-api/src/com/intellij/psi/search/searches/OverridingMethodsSearch.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2012 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/java/java-indexing-impl/java-indexing-impl.iml b/java/java-indexing-impl/java-indexing-impl.iml index 94f91bbb0a10..0379d94f938a 100644 --- a/java/java-indexing-impl/java-indexing-impl.iml +++ b/java/java-indexing-impl/java-indexing-impl.iml @@ -13,6 +13,7 @@ + diff --git a/java/java-impl/src/com/intellij/codeInsight/navigation/ClassImplementationsSearch.java b/java/java-indexing-impl/src/com/intellij/codeInsight/navigation/ClassImplementationsSearch.java similarity index 100% rename from java/java-impl/src/com/intellij/codeInsight/navigation/ClassImplementationsSearch.java rename to java/java-indexing-impl/src/com/intellij/codeInsight/navigation/ClassImplementationsSearch.java diff --git a/java/java-impl/src/com/intellij/codeInsight/navigation/MethodImplementationsSearch.java b/java/java-indexing-impl/src/com/intellij/codeInsight/navigation/MethodImplementationsSearch.java similarity index 100% rename from java/java-impl/src/com/intellij/codeInsight/navigation/MethodImplementationsSearch.java rename to java/java-indexing-impl/src/com/intellij/codeInsight/navigation/MethodImplementationsSearch.java diff --git a/java/java-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearchHelper.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearchHelper.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearchHelper.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearchHelper.java diff --git a/java/java-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java diff --git a/java/java-impl/src/com/intellij/psi/impl/search/PsiAnnotationMethodReferencesSearcher.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/PsiAnnotationMethodReferencesSearcher.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/search/PsiAnnotationMethodReferencesSearcher.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/search/PsiAnnotationMethodReferencesSearcher.java diff --git a/java/java-impl/src/com/intellij/psi/impl/light/LightMemberReference.java b/java/java-psi-impl/src/com/intellij/psi/impl/light/LightMemberReference.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/light/LightMemberReference.java rename to java/java-psi-impl/src/com/intellij/psi/impl/light/LightMemberReference.java diff --git a/java/java-tests/java-tests.iml b/java/java-tests/java-tests.iml index a60c94412b23..d74dcea5318d 100644 --- a/java/java-tests/java-tests.iml +++ b/java/java-tests/java-tests.iml @@ -29,6 +29,7 @@ + diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/ImplementationsViewTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/ImplementationsViewTest.java index 9533a9e78cca..69637123c55c 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/ImplementationsViewTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/ImplementationsViewTest.java @@ -2,7 +2,6 @@ package com.intellij.codeInsight.daemon; import com.intellij.codeInsight.TargetElementUtilBase; import com.intellij.codeInsight.hint.ImplementationViewComponent; -import com.intellij.openapi.util.Disposer; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiMethod; diff --git a/platform/lang-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java b/platform/core-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java similarity index 96% rename from platform/lang-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java rename to platform/core-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java index a192273453cf..5d3ab67d48bf 100644 --- a/platform/lang-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java +++ b/platform/core-api/src/com/intellij/psi/search/PsiElementProcessorAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2012 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/plugins/InspectionGadgets/InspectionGadgetsPlugin.iml b/plugins/InspectionGadgets/InspectionGadgetsPlugin.iml index 923cb85bf2a6..274a192e4953 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsPlugin.iml +++ b/plugins/InspectionGadgets/InspectionGadgetsPlugin.iml @@ -16,6 +16,7 @@ + diff --git a/plugins/IntentionPowerPak/IntentionPowerPackPlugin.iml b/plugins/IntentionPowerPak/IntentionPowerPackPlugin.iml index cbc20212f075..e140d9ad6683 100644 --- a/plugins/IntentionPowerPak/IntentionPowerPackPlugin.iml +++ b/plugins/IntentionPowerPak/IntentionPowerPackPlugin.iml @@ -17,6 +17,7 @@ + diff --git a/plugins/IntentionPowerPak/src/com/siyeh/ipp/interfacetoclass/ConvertInterfaceToClassPredicate.java b/plugins/IntentionPowerPak/src/com/siyeh/ipp/interfacetoclass/ConvertInterfaceToClassPredicate.java index c132603b8128..cc9611da1d8c 100644 --- a/plugins/IntentionPowerPak/src/com/siyeh/ipp/interfacetoclass/ConvertInterfaceToClassPredicate.java +++ b/plugins/IntentionPowerPak/src/com/siyeh/ipp/interfacetoclass/ConvertInterfaceToClassPredicate.java @@ -17,7 +17,6 @@ package com.siyeh.ipp.interfacetoclass; import com.intellij.psi.PsiClass; import com.intellij.psi.PsiElement; -import com.intellij.psi.PsiJavaToken; import com.intellij.psi.search.SearchScope; import com.intellij.psi.search.searches.ClassInheritorsSearch; import com.siyeh.ipp.base.PsiElementPredicate; diff --git a/plugins/android-designer/android-designer.iml b/plugins/android-designer/android-designer.iml index dc07d072b1ba..3dd46592d603 100644 --- a/plugins/android-designer/android-designer.iml +++ b/plugins/android-designer/android-designer.iml @@ -25,6 +25,7 @@ + diff --git a/plugins/android/android.iml b/plugins/android/android.iml index 9da7d4398eb8..0eda4c87660c 100644 --- a/plugins/android/android.iml +++ b/plugins/android/android.iml @@ -64,6 +64,7 @@ + diff --git a/plugins/groovy/jetgroovy.iml b/plugins/groovy/jetgroovy.iml index 9e76e222a152..c74d30f5eab7 100644 --- a/plugins/groovy/jetgroovy.iml +++ b/plugins/groovy/jetgroovy.iml @@ -33,6 +33,7 @@ + diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy index db6fd3e4d287..03179cf1395e 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy @@ -23,7 +23,6 @@ import com.intellij.find.findUsages.FindUsagesManager import com.intellij.find.findUsages.FindUsagesOptions import com.intellij.find.impl.FindManagerImpl import com.intellij.psi.search.GlobalSearchScope -import com.intellij.psi.search.searches.DirectClassInheritorsSearch import com.intellij.psi.search.searches.MethodReferencesSearch import com.intellij.psi.search.searches.ReferencesSearch import com.intellij.psi.search.searches.SuperMethodsSearch diff --git a/plugins/junit/junit.iml b/plugins/junit/junit.iml index 36602b0c9b75..8f4c38643198 100644 --- a/plugins/junit/junit.iml +++ b/plugins/junit/junit.iml @@ -17,6 +17,7 @@ + diff --git a/plugins/rearranger/rearranger.iml b/plugins/rearranger/rearranger.iml index cb24fd03e1f1..441eb107d823 100644 --- a/plugins/rearranger/rearranger.iml +++ b/plugins/rearranger/rearranger.iml @@ -18,6 +18,7 @@ + diff --git a/plugins/testng/testng.iml b/plugins/testng/testng.iml index 86c89479d8a4..c9048cc509a6 100644 --- a/plugins/testng/testng.iml +++ b/plugins/testng/testng.iml @@ -22,6 +22,7 @@ + diff --git a/resources/src/META-INF/IdeaPlugin.xml b/resources/src/META-INF/IdeaPlugin.xml index 36dcfaa83d5d..9ed2f41c50b3 100644 --- a/resources/src/META-INF/IdeaPlugin.xml +++ b/resources/src/META-INF/IdeaPlugin.xml @@ -179,12 +179,11 @@ - - - + + From b0b5da9b872000f3a95ac0c1dbb2b0ab43493588 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Fri, 22 Jun 2012 09:04:09 +0200 Subject: [PATCH 06/15] more dependencies --- java/java-indexing-api/java-indexing-api.iml | 1 + 1 file changed, 1 insertion(+) diff --git a/java/java-indexing-api/java-indexing-api.iml b/java/java-indexing-api/java-indexing-api.iml index ef9a5293175a..7ca2c64e089c 100644 --- a/java/java-indexing-api/java-indexing-api.iml +++ b/java/java-indexing-api/java-indexing-api.iml @@ -7,6 +7,7 @@ + From ff6ed0f6e6abd7a927baff60b55bee4a2b33bb88 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Fri, 22 Jun 2012 09:11:31 +0200 Subject: [PATCH 07/15] public ctor --- .../intellij/psi/impl/search/ConstructorReferencesSearcher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java index c64e469aab63..933a748e9874 100644 --- a/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java +++ b/java/java-indexing-impl/src/com/intellij/psi/impl/search/ConstructorReferencesSearcher.java @@ -12,7 +12,7 @@ import org.jetbrains.annotations.NotNull; * @author max */ public class ConstructorReferencesSearcher extends QueryExecutorBase { - protected ConstructorReferencesSearcher() { + public ConstructorReferencesSearcher() { super(true); } From fa77cc79ae1e2ff4b7851818927b66cd6b5eecd0 Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Fri, 22 Jun 2012 09:52:57 +0200 Subject: [PATCH 08/15] move java searching stuff to indexing module --- .../psi/search/searches/ClassInheritorsSearch.java | 2 ++ .../searches/DirectClassInheritorsSearch.java | 3 +++ .../JavaAnonymousClassBaseRefOccurenceIndex.java | 0 .../index/JavaSuperClassNameOccurenceIndex.java | 0 .../impl/search/JavaDirectInheritorsSearcher.java | 13 +++++++------ 5 files changed, 12 insertions(+), 6 deletions(-) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/java/stubs/index/JavaAnonymousClassBaseRefOccurenceIndex.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/java/stubs/index/JavaSuperClassNameOccurenceIndex.java (100%) rename java/{java-impl => java-indexing-impl}/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java (93%) diff --git a/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java index 0b283808834c..bf7b89870d83 100644 --- a/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java +++ b/java/java-indexing-api/src/com/intellij/psi/search/searches/ClassInheritorsSearch.java @@ -17,6 +17,7 @@ package com.intellij.psi.search.searches; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.diagnostic.Logger; +import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.progress.ProgressIndicatorProvider; import com.intellij.openapi.util.Computable; @@ -43,6 +44,7 @@ import java.util.Set; * @author max */ public class ClassInheritorsSearch extends ExtensibleQueryFactory { + public static ExtensionPointName EP_NAME = ExtensionPointName.create("com.intellij.classInheritorsSearch"); private static final Logger LOG = Logger.getInstance("#com.intellij.psi.search.searches.ClassInheritorsSearch"); public static final ClassInheritorsSearch INSTANCE = new ClassInheritorsSearch(); diff --git a/java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java b/java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java index 2ef1574cbf47..da798a15ed3b 100644 --- a/java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java +++ b/java/java-indexing-api/src/com/intellij/psi/search/searches/DirectClassInheritorsSearch.java @@ -15,6 +15,7 @@ */ package com.intellij.psi.search.searches; +import com.intellij.openapi.extensions.ExtensionPointName; import com.intellij.openapi.util.Condition; import com.intellij.psi.PsiAnonymousClass; import com.intellij.psi.PsiClass; @@ -22,11 +23,13 @@ import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.search.SearchScope; import com.intellij.util.FilteredQuery; import com.intellij.util.Query; +import com.intellij.util.QueryExecutor; /** * @author max */ public class DirectClassInheritorsSearch extends ExtensibleQueryFactory { + public static ExtensionPointName EP_NAME = ExtensionPointName.create("com.intellij.directClassInheritorsSearch"); public static DirectClassInheritorsSearch INSTANCE = new DirectClassInheritorsSearch(); public static class SearchParameters { diff --git a/java/java-impl/src/com/intellij/psi/impl/java/stubs/index/JavaAnonymousClassBaseRefOccurenceIndex.java b/java/java-indexing-impl/src/com/intellij/psi/impl/java/stubs/index/JavaAnonymousClassBaseRefOccurenceIndex.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/java/stubs/index/JavaAnonymousClassBaseRefOccurenceIndex.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/java/stubs/index/JavaAnonymousClassBaseRefOccurenceIndex.java diff --git a/java/java-impl/src/com/intellij/psi/impl/java/stubs/index/JavaSuperClassNameOccurenceIndex.java b/java/java-indexing-impl/src/com/intellij/psi/impl/java/stubs/index/JavaSuperClassNameOccurenceIndex.java similarity index 100% rename from java/java-impl/src/com/intellij/psi/impl/java/stubs/index/JavaSuperClassNameOccurenceIndex.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/java/stubs/index/JavaSuperClassNameOccurenceIndex.java diff --git a/java/java-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java similarity index 93% rename from java/java-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java rename to java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java index b495b2bd0d8b..b88ac9e77309 100644 --- a/java/java-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java +++ b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaDirectInheritorsSearcher.java @@ -3,8 +3,7 @@ package com.intellij.psi.impl.search; import com.intellij.openapi.application.AccessToken; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ReadAction; -import com.intellij.openapi.fileTypes.StdFileTypes; -import com.intellij.openapi.progress.ProgressManager; +import com.intellij.openapi.progress.ProgressIndicatorProvider; import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.VirtualFile; @@ -53,8 +52,10 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor() { @Override @@ -96,7 +97,7 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor> classes = new HashMap>(); for (PsiReferenceList referenceList : candidates) { - ProgressManager.checkCanceled(); + ProgressIndicatorProvider.checkCanceled(); final PsiClass candidate = (PsiClass)referenceList.getParent(); if (!checkInheritance(p, aClass, candidate)) continue; @@ -127,7 +128,7 @@ public class JavaDirectInheritorsSearcher implements QueryExecutor Date: Fri, 22 Jun 2012 13:26:37 +0200 Subject: [PATCH 09/15] Fix test --- .../plugins/groovy/lang/findUsages/FindUsagesTest.groovy | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy index 03179cf1395e..db6fd3e4d287 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/lang/findUsages/FindUsagesTest.groovy @@ -23,6 +23,7 @@ import com.intellij.find.findUsages.FindUsagesManager import com.intellij.find.findUsages.FindUsagesOptions import com.intellij.find.impl.FindManagerImpl import com.intellij.psi.search.GlobalSearchScope +import com.intellij.psi.search.searches.DirectClassInheritorsSearch import com.intellij.psi.search.searches.MethodReferencesSearch import com.intellij.psi.search.searches.ReferencesSearch import com.intellij.psi.search.searches.SuperMethodsSearch From 33278f0c848129a767ab13d9e2dcbbd8fb5fa81d Mon Sep 17 00:00:00 2001 From: Evgeny Pasynkov Date: Mon, 25 Jun 2012 12:00:18 +0200 Subject: [PATCH 10/15] merge with master --- .idea/compiler.xml | 6 +- .idea/libraries/Netty.xml | 4 +- build/conf/mac/Contents/Info.plist | 3 + colorSchemes/src/colorSchemes/Darcula.xml | 2509 +++++++++++++++++ .../src/CommunityFileTypes.xml | 610 ++++ .../impl/TranslatingCompilerFilesMonitor.java | 20 +- .../resourceCompiler/ResourceCompiler.java | 6 +- .../ChangedConstantsDependencyProcessor.java | 2 +- .../artifacts/JarFromModulesTemplate.java | 12 +- .../elements/ModuleOutputElementTypeBase.java | 14 +- .../ProductionModuleOutputElementType.java | 15 +- .../elements/TestModuleOutputElementType.java | 19 +- .../NotNullVerifyingInstrumenter.java | 43 +- .../debugger/actions/ThreadDumpAction.java | 11 +- .../debugger/impl/DebuggerSession.java | 10 + .../debugger/impl/ReloadClassesWorker.java | 5 +- .../intellij/debugger/ui/HotSwapUIImpl.java | 53 +- .../ui/impl/DebuggerTreeRenderer.java | 42 +- .../CodeStyleGenerationConfigurable.form | 6 +- .../options/CodeStyleImportForm.form | 1 - .../completion/AllClassesGetter.java | 18 +- .../completion/InheritorsHolder.java | 4 +- .../JavaClassNameCompletionContributor.java | 59 +- .../JavaClassNameInsertHandler.java | 16 +- .../completion/JavaCompletionContributor.java | 15 +- .../completion/JavaCompletionUtil.java | 60 +- .../JavaPsiClassReferenceElement.java | 37 + .../JavaSmartCompletionContributor.java | 2 +- ...erenceExpressionCompletionContributor.java | 4 +- .../completion/StaticMemberProcessor.java | 6 +- .../daemon/impl/PostHighlightingPass.java | 5 +- .../daemon/impl/RefCountHolder.java | 33 +- .../quickfix/CreateFieldFromUsageFix.java | 58 +- .../quickfix/CreateFieldFromUsageHelper.java | 58 + .../impl/quickfix/GuessTypeParameters.java | 5 +- .../JavaCreateFieldFromUsageHelper.java | 95 + .../quickfix/RemoveRedundantElseAction.java | 7 +- .../impl/quickfix/SurroundWithArrayFix.java | 8 +- .../impl/AddOnDemandStaticImportAction.java | 7 +- .../AddSingleMemberStaticImportAction.java | 7 +- .../BaseMoveInitializerToMethodAction.java | 16 +- .../impl/BaseRunRefactoringAction.java | 43 - .../impl/ColorChooserIntentionAction.java | 6 +- ...AbsolutePathToRelativeIntentionAction.java | 10 +- .../impl/CreateFieldFromParameterAction.java | 148 +- .../CreateFieldFromParameterActionBase.java | 156 + .../impl/CreateFieldFromParameterDialog.java | 4 +- .../impl/EncapsulateFieldAction.java | 26 +- .../impl/ExpandStaticImportAction.java | 11 +- .../IntroduceVariableIntentionAction.java | 43 +- .../impl/InvertIfConditionAction.java | 7 +- .../intention/impl/MakeTypeGenericAction.java | 5 +- .../intention/impl/RunRefactoringAction.java | 25 +- .../impl/SplitDeclarationAction.java | 48 +- .../intention/impl/SplitIfAction.java | 9 +- ...placeImplementsWithStaticImportAction.java | 13 +- .../UnusedSymbolLocalInspection.java | 3 +- .../roots/impl/JavaLanguageLevelPusher.java | 7 +- .../psi/filters/getters/MembersGetter.java | 3 +- .../JavaChangeSignatureDialog.java | 9 +- .../IntroduceVariableHandler.java | 4 + .../rename/RenameJavaVariableProcessor.java | 2 +- .../createTest/CreateTestAction.java | 11 +- .../com/intellij/psi/PsiElementFactory.java | 2 +- .../className/importAfterNew/after2.java | 2 +- .../normal/ClassNameWithInner_after.java | 7 +- .../normal/ClassNameWithInnersTab_after.java | 2 +- .../completion/ClassNameCompletionTest.java | 1 + .../completion/NormalCompletionTest.groovy | 37 +- .../CustomFileTypeEditorTest.java | 11 + .../hierarchy/HierarchyViewTestBase.java | 20 +- .../jetbrains/ether/IncrementalTestCase.java | 63 +- .../ether/dependencyView/IntIntMaplet.java | 25 +- .../dependencyView/IntIntMultiMaplet.java | 54 +- .../dependencyView/IntObjectMultiMaplet.java | 53 +- .../ether/dependencyView/Mappings.java | 48 +- .../ether/dependencyView/OrderProvider.java | 54 + lib/netty-3.4.5.Final.jar | Bin 973548 -> 0 bytes lib/netty-3.5.0.Final.jar | Bin 0 -> 1110922 bytes lib/required_for_dist.txt | 2 +- lib/src/netty-3.4.5.Final-sources.jar | Bin 905830 -> 0 bytes lib/src/netty-3.5.0.Final-sources.jar | Bin 0 -> 1027022 bytes .../codeInsight/completion/PrefixMatcher.java | 1 + .../BaseElementAtCaretIntentionAction.java | 99 + .../PsiElementBaseIntentionAction.java | 41 +- .../lookup/LookupElementBuilder.java | 10 +- .../SuppressIntentionAction.java | 18 - .../codeInsight/AutoPopupController.java | 4 +- .../daemon/impl/GeneralHighlightingPass.java | 165 +- .../impl/IntentionHintComponent.java | 4 +- .../lookup/impl/LookupCellRenderer.java | 17 +- .../codeInsight/lookup/impl/LookupImpl.java | 2 +- ...efaultHighlightVisitorBasedInspection.java | 6 +- .../execution/impl/RunManagerImpl.java | 2 +- .../RunnerAndConfigurationSettingsImpl.java | 1 + .../formatting/InitialInfoBuilder.java | 4 +- .../ide/hierarchy/HierarchyBrowserBaseEx.java | 32 + .../ide/hierarchy/HierarchyNodeRenderer.java | 38 +- .../ide/navigationToolbar/NavBarPanel.java | 5 +- .../ui/AbstractNavBarUI.java | 5 +- .../ide/projectView/impl/ProjectViewTree.java | 66 +- ...va => BaseRefactoringIntentionAction.java} | 2 +- .../ChangeSignatureDetectorAction.java | 10 +- .../util/indexing/FileBasedIndexImpl.java | 69 +- .../util/indexing/IndexInfrastructure.java | 25 +- .../intellij/util/indexing/IndexingStamp.java | 164 +- .../util/indexing/UnindexedFilesUpdater.java | 3 +- .../treeView/PresentableNodeDescriptor.java | 3 +- .../com/intellij/openapi/ui/StripeTable.java | 77 +- .../openapi/vfs/newvfs/FileAttribute.java | 5 +- .../intellij/openapi/wm/StatusBarWidget.java | 1 + .../intellij/ui/EditorNotificationPanel.java | 5 +- .../com/intellij/ui/components/JBList.java | 3 +- .../src/com/intellij/ui/table/JBTable.java | 4 +- .../src/com/intellij/ui/table/TableView.java | 9 +- .../ShowFeatureUsageStatisticsDialog.java | 15 +- .../com/intellij/ide/actions/Switcher.java | 8 +- .../SwitcherToolWindowsListRenderer.java | 10 +- .../ide/ui/AppearanceConfigurable.java | 24 +- .../com/intellij/ide/ui/laf/IdeaDarkLaf.java | 139 +- .../intellij/ide/ui/laf/darcula.properties | 62 + .../ide/ui/laf/darcula_linux.properties | 0 .../ide/ui/laf/darcula_mac.properties | 49 +- .../ide/ui/laf/darcula_windows.properties | 1 + .../internal/inspector/UiInspectorAction.java | 3 +- .../ui/NotificationsConfigurablePanel.java | 3 +- .../openapi/command/impl/CommandMerger.java | 2 +- .../openapi/command/impl/UndoManagerImpl.java | 2 + .../editor/actions/DuplicateAction.java | 2 +- .../openapi/editor/ex/util/EditorUtil.java | 4 +- .../impl/FileEditorManagerImpl.java | 7 +- .../openapi/keymap/impl/ui/ActionsTree.java | 3 + .../vfs/impl/local/LocalFileSystemBase.java | 2 +- .../vfs/newvfs/impl/VirtualDirectoryImpl.java | 15 +- .../vfs/newvfs/persistent/FSRecords.java | 104 +- .../wm/impl/status/IdeStatusBarImpl.java | 2 +- .../openapi/wm/impl/status/StatusBarUI.java | 10 +- .../openapi/wm/impl/status/TextPanel.java | 8 +- .../src/com/intellij/ui/ColorPicker.java | 2 +- .../src/FileTypeManager.xml | 611 +++- .../vcs/AbstractJunitVcsTestCase.java | 6 +- .../intellij/openapi/util/io/FileUtil.java | 5 +- .../com/intellij/util/CommonProcessors.java | 14 + .../util/containers/CollectionFactory.java | 104 +- .../util/io/storage/AbstractStorage.java | 40 +- .../io/storage/CapacityAllocationPolicy.java | 48 + .../util/io/storage/RefCountingStorage.java | 4 + .../com/intellij/util/io/storage/Storage.java | 4 + .../util/src/com/intellij/util/ui/UIUtil.java | 10 +- .../com/intellij/util/ui/tree/MacTreeUI.java | 2 +- .../ShowAllAffectedGenericAction.java | 24 +- .../vcs/changes/ChangeListManagerImpl.java | 3 +- .../actions/CreatePatchFromChangesAction.java | 11 +- .../vcs/history/FileHistoryPanelImpl.java | 102 +- .../ManualArrayCopyInspection.java | 117 +- .../Decrement.after.java | 7 + .../Decrement.java | 9 + .../Simple.after.java | 7 + .../replace_with_system_arraycopy/Simple.java | 9 + .../performance/ManualArrayCopyFixTest.java | 19 + .../src/com/siyeh/ipp/base/Intention.java | 4 +- .../MergeNestedTryStatementsIntention.java | 31 +- .../NestedTryStatementsPredicate.java | 18 +- .../ipp/enumswitch/NoActionAfterBraces.java | 2 +- .../mergeTry/WithoutAndWithResources.java | 21 + .../WithoutAndWithResources_after.java | 19 + ...MergeNestedTryStatementsIntentionTest.java | 21 +- plugins/android-designer/android-designer.iml | 1 + .../AndroidDesignerEditorPanel.java | 27 +- .../designer/model/PropertyParser.java | 6 + .../model/RadCustomViewComponent.java | 2 +- .../android/designer/model/RadFragment.java | 2 +- .../designer/model/RadIncludeLayout.java | 2 +- .../designer/model/views-meta-model.xml | 15 +- .../propertyTable/AttributeProperty.java | 24 +- .../designer/propertyTable/StyleProperty.java | 121 + .../editors/ChooseClassDialog.java | 22 +- .../propertyTable/editors/ResourceDialog.java | 146 +- .../propertyTable/editors/ResourceEditor.java | 15 +- .../renderers/ResourceRenderer.java | 39 +- .../util/ValueResourcesFileParser.java | 6 +- plugins/android/src/META-INF/plugin.xml | 3 - .../AndroidGotoDeclarationHandler.java | 14 +- .../android/AndroidValueResourcesIndex.java | 2 +- .../AndroidCreateLayoutFileAction.java | 4 +- .../actions/CreateResourceFileAction.java | 29 +- .../android/augment/AndroidLightField.java | 125 +- .../android/augment/ResourceTypeClass.java | 7 +- .../inspections/AndroidQuickFixProvider.java | 9 +- .../lint/AndroidLintExternalAnnotator.java | 4 +- .../resourceManagers/ResourceManager.java | 7 +- .../layout/JavaCreateResourceFromUsage.java | 7 + .../dom/layout/createResourceFromUsage1.xml | 9 + ...reateResourceFromUsage1_drawable_after.xml | 5 + ...vaCreateResourceFromUsage_layout_after.xml | 8 + .../dom/resources/InlineResourceField.java | 7 + .../dom/resources/JavaCreateFromUsage.java | 7 + .../dom/resources/JavaCreateFromUsage1.java | 7 + .../dom/resources/JavaHighlighting.java | 7 + .../javaCreateFromUsage1_bools_after.xml | 3 + .../javaCreateFromUsage_drawables_after.xml | 3 + .../dom/resources/value_resources.xml | 1 + plugins/android/testData/rename/RefR1.java | 7 + .../android/testData/rename/RefR1_after.java | 7 + plugins/android/testData/rename/RefR2.java | 7 + .../android/testData/rename/RefR2_after.java | 7 + .../src/p1/p2/JavaFileNavigation10.java | 7 + .../src/p1/p2/JavaFileNavigation11.java | 7 + .../src/p1/p2/JavaFileNavigation8.java | 7 + .../src/p1/p2/JavaFileNavigation9.java | 7 + .../jetbrains/android/AndroidRenameTest.java | 40 +- .../AndroidResourcesLineMarkerTest.java | 49 +- .../android/dom/AndroidLayoutDomTest.java | 50 +- .../dom/AndroidValueResourcesTest.java | 79 +- plugins/ant/src/META-INF/plugin.xml | 12 +- .../lang/ant/AntDeclarationRangeHandler.java | 34 - .../lang/ant/AntDefaultNSProvider.java | 56 - .../lang/ant/{psi => }/AntFilesProvider.java | 2 +- .../ant/{psi/impl => }/AntImportsIndex.java | 2 +- .../ant/{psi/impl => }/AntIntrospector.java | 4 +- .../lang/ant/AntLanguageExtension.java | 57 - .../lang/ant/AntParserDefinition.java | 78 - .../lang/ant/AntPropertyRefSelectioner.java | 82 - .../ant/AntStructureViewBuilderFactory.java | 99 - .../src/com/intellij/lang/ant/AntSupport.java | 39 +- .../com/intellij/lang/ant/PsiAntElement.java | 26 - .../ant/{psi/impl => }/ReflectedProject.java | 4 +- .../ant/config/actions/RunTargetAction.java | 48 +- .../impl/AntBreadcrumbsInfoProvider.java | 101 - .../ant/doc/AntDomDocumentationProvider.java | 2 +- .../ant/dom/AntDomClasspathComponent.java | 38 + .../dom/AntDomCustomClasspathComponent.java | 15 +- .../intellij/lang/ant/dom/AntDomDirSet.java | 2 +- .../intellij/lang/ant/dom/AntDomExtender.java | 4 +- .../intellij/lang/ant/dom/AntDomFileList.java | 2 +- .../intellij/lang/ant/dom/AntDomFileSet.java | 2 +- .../lang/ant/dom/AntDomFilesProviderImpl.java | 2 +- .../com/intellij/lang/ant/dom/AntDomPath.java | 2 +- .../lang/ant/dom/AntDomPathElement.java | 2 +- .../intellij/lang/ant/dom/AntDomProject.java | 2 +- .../intellij/lang/ant/dom/AntDomProperty.java | 64 +- .../lang/ant/dom/AntResolveInspection.java | 12 +- .../ant/dom/CustomAntElementsRegistry.java | 142 +- .../intellij/lang/ant/misc/AntPsiUtil.java | 45 - .../ant/misc/PsiElementSetSpinAllocator.java | 51 - .../PsiElementWithValueSetSpinAllocator.java | 52 - .../lang/ant/psi/AntAllTasksContainer.java | 23 - .../src/com/intellij/lang/ant/psi/AntAnt.java | 25 - .../com/intellij/lang/ant/psi/AntCall.java | 28 - .../com/intellij/lang/ant/psi/AntDefTask.java | 24 - .../com/intellij/lang/ant/psi/AntElement.java | 49 - .../lang/ant/psi/AntElementVisitor.java | 82 - .../com/intellij/lang/ant/psi/AntFile.java | 85 - .../com/intellij/lang/ant/psi/AntImport.java | 27 - .../intellij/lang/ant/psi/AntMacroDef.java | 22 - .../lang/ant/psi/AntNameIdentifier.java | 29 - .../intellij/lang/ant/psi/AntPresetDef.java | 22 - .../com/intellij/lang/ant/psi/AntProject.java | 51 - .../intellij/lang/ant/psi/AntProperty.java | 57 - .../intellij/lang/ant/psi/AntScriptDef.java | 22 - .../lang/ant/psi/AntStructuredElement.java | 81 - .../com/intellij/lang/ant/psi/AntTarget.java | 57 - .../com/intellij/lang/ant/psi/AntTypeDef.java | 60 - .../psi/impl/AntAllTasksContainerImpl.java | 53 - .../lang/ant/psi/impl/AntAntImpl.java | 91 - .../lang/ant/psi/impl/AntBuildNumberImpl.java | 104 - .../lang/ant/psi/impl/AntCallImpl.java | 106 - .../lang/ant/psi/impl/AntCommentImpl.java | 45 - .../lang/ant/psi/impl/AntDirSetImpl.java | 112 - .../lang/ant/psi/impl/AntElementFactory.java | 348 --- .../lang/ant/psi/impl/AntElementImpl.java | 305 -- .../lang/ant/psi/impl/AntEntityRefImpl.java | 61 - .../lang/ant/psi/impl/AntFileImpl.java | 1017 ------- .../lang/ant/psi/impl/AntFileListImpl.java | 85 - .../lang/ant/psi/impl/AntFileSetImpl.java | 115 - .../ant/psi/impl/AntFilesProviderImpl.java | 162 -- .../lang/ant/psi/impl/AntImportImpl.java | 97 - .../lang/ant/psi/impl/AntMacroDefImpl.java | 175 -- .../ant/psi/impl/AntNameIdentifierImpl.java | 81 - .../ant/psi/impl/AntOuterProjectElement.java | 78 - .../lang/ant/psi/impl/AntPathImpl.java | 88 - .../lang/ant/psi/impl/AntPattern.java | 276 -- .../lang/ant/psi/impl/AntPresetDefImpl.java | 114 - .../lang/ant/psi/impl/AntProjectImpl.java | 334 --- .../lang/ant/psi/impl/AntPropertyImpl.java | 434 --- .../lang/ant/psi/impl/AntScriptDefImpl.java | 186 -- .../psi/impl/AntStructuredElementImpl.java | 653 ----- .../lang/ant/psi/impl/AntTargetImpl.java | 142 - .../lang/ant/psi/impl/AntTaskImpl.java | 78 - .../ant/psi/impl/AntTimestampFormatImpl.java | 41 - .../lang/ant/psi/impl/AntTypeDefImpl.java | 667 ----- .../lang/ant/psi/impl/PropertiesBuilder.java | 232 -- .../impl/reference/AntAttributeReference.java | 64 - .../AntElementCompletionWrapper.java | 83 - .../reference/AntElementNameReference.java | 182 -- .../reference/AntEndElementNameReference.java | 62 - .../impl/reference/AntEntityReference.java | 74 - .../psi/impl/reference/AntFileReference.java | 122 - .../impl/reference/AntFileReferenceSet.java | 122 - .../impl/reference/AntGenericReference.java | 100 - .../AntMacroDefParameterReference.java | 123 - .../impl/reference/AntPropertyReference.java | 178 -- .../psi/impl/reference/AntRefIdReference.java | 134 - .../ant/psi/impl/reference/AntReference.java | 35 - .../AntReferenceProvidersRegistry.java | 72 - .../impl/reference/AntTargetReference.java | 222 -- .../AntAttributeReferenceProvider.java | 74 - .../AntElementNameReferenceProvider.java | 99 - .../providers/AntFileReferenceProvider.java | 65 - ...AntMacroDefParameterReferenceProvider.java | 98 - .../AntPropertyReferenceProvider.java | 155 - .../providers/AntRefIdReferenceProvider.java | 70 - .../AntSingleTargetReferenceProvider.java | 69 - .../AntTargetListReferenceProvider.java | 85 - .../psi/introspection/AntAttributeType.java | 60 - .../psi/introspection/AntTypeDefinition.java | 60 - .../lang/ant/psi/introspection/AntTypeId.java | 70 - .../impl/AntTypeDefinitionImpl.java | 246 -- .../ant/psi/usages/AntUsagesProvider.java | 73 - .../ant/quickfix/AntChangeContextFix.java | 58 +- .../quickfix/AntChangeContextLocalFix.java | 58 + .../ant/quickfix/AntCreateMacroDefFix.java | 117 - .../ant/quickfix/AntCreatePresetDefFix.java | 101 - .../ant/quickfix/AntCreatePropertyFix.java | 101 - .../lang/ant/quickfix/AntCreateTargetFix.java | 92 - .../AntUnresolvedRefsFixProvider.java | 41 + .../AntTargetRenameListenerProvider.java | 59 - .../refactoring/AntVetoRenameCondition.java | 26 - .../ant/validation/AntHectorConfigurable.java | 2 +- .../lang/ant/psi/impl/PatternsTest.java | 100 - plugins/git4idea/src/META-INF/plugin.xml | 4 + plugins/git4idea/src/git4idea/GitUtil.java | 34 +- plugins/git4idea/src/git4idea/GitVcs.java | 10 +- .../git4idea/branch/GitMergeOperation.java | 4 +- .../git4idea/src/git4idea/commands/Git.java | 3 +- .../src/git4idea/commands/GitImpl.java | 5 +- .../src/git4idea/history/GitHistoryUtils.java | 2 +- .../git4idea/history/browser/GitCommit.java | 15 +- .../history/wholeTree/DetailsLoaderImpl.java | 3 +- .../git4idea/history/wholeTree/GitLogUI.java | 33 +- .../src/git4idea/update/GitRebaseUpdater.java | 52 +- .../src/git4idea/update/GitUpdateProcess.java | 82 +- .../cherrypick/GitCherryPickTest.groovy | 5 +- .../tests/git4idea/test/MockGit.groovy | 3 +- plugins/github/src/META-INF/plugin.xml | 4 + .../github/GithubOpenInBrowserAction.java | 88 +- .../GithubShowCommitInBrowserAction.java | 119 + .../jetbrains/plugins/github/GithubUtil.java | 57 +- .../after.groovy.template | 6 + .../before.groovy.template | 3 + .../description.html | 5 + plugins/groovy/src/META-INF/plugin.xml | 12 +- .../groovy/annotator/GroovyAnnotator.java | 52 +- .../annotator/intentions/CreateFieldFix.java | 46 +- .../CreateFieldFromConstructorLabelFix.java | 2 +- .../intentions/CreateFieldFromUsageFix.java | 6 +- .../GroovyCreateFieldFromUsageHelper.java | 88 + .../processors/GroovySpacingProcessor.java | 5 +- .../plugins/groovy/gant/AntBuilderMethod.java | 2 +- .../plugins/groovy/gant/AntTasksProvider.java | 4 +- .../highlighter/DefaultHighlighter.java | 5 + .../highlighter/GroovyColorsAndFontsPage.java | 5 + .../GroovyIntentionsBundle.properties | 2 + .../GrCreateFieldForParameterIntention.java | 140 + .../GrCreateSubclassAction.java | 2 +- .../intentions/style/AddReturnTypeFix.java | 3 +- .../GroovyClassNameInsertHandler.java | 14 +- .../GroovyCompletionContributor.java | 51 +- .../lang/completion/GroovyCompletionUtil.java | 73 +- .../GroovyDocCompletionProvider.java | 7 +- .../GroovySmartCompletionContributor.java | 16 +- .../groovy/lang/psi/GrReferenceElement.java | 3 +- .../groovy/lang/psi/GroovyElementVisitor.java | 4 + .../lang/psi/api/statements/GrField.java | 3 + .../controlFlow/impl/ControlFlowBuilder.java | 22 +- .../psi/impl/GroovyPsiElementFactoryImpl.java | 3 +- .../groovy/lang/psi/impl/PsiImplUtil.java | 16 +- .../GrAnnotationNameValuePairImpl.java | 3 +- .../lang/psi/impl/statements/GrFieldImpl.java | 52 + .../CompleteReferenceExpression.java | 26 +- .../GrReferenceExpressionImpl.java | 3 +- .../typedef/GrTypeDefinitionImpl.java | 15 +- .../GrLightClassReferenceElement.java | 3 +- .../lang/psi/impl/synthetic/GrLightField.java | 5 + .../impl/synthetic/GrSyntheticExpression.java | 89 + .../types/GrCodeReferenceElementImpl.java | 82 +- .../psi/impl/types/GrTypeParameterImpl.java | 7 +- .../refactoring/GroovyRefactoringUtil.java | 112 +- .../dynamicMembers/GrDynamicPropertyImpl.java | 5 + .../completion/GroovyCompletionTest.groovy | 7 +- .../GroovyCompletionTestBase.groovy | 2 +- .../CreateFieldFromParameterTest.groovy | 66 + .../groovy/lang/GroovyHighlightingTest.groovy | 17 +- .../lang/controlFlow/ControlFlowTest.java | 1 + .../groovy/controlFlow/orInReturn.test | 10 + .../groovy/oldCompletion/keyword/var13.test | 4 + .../groovy/oldCompletion/keyword/var6.test | 4 + .../createFieldFromParameter/after1.groovy | 23 + .../createFieldFromParameter/after2.groovy | 17 + .../createFieldFromParameter/after3.groovy | 19 + .../createFieldFromParameter/after4.groovy | 12 + .../createFieldFromParameter/after5.groovy | 12 + .../createFieldFromParameter/after6.groovy | 13 + .../createFieldFromParameter/after8.groovy | 10 + .../afterArrayType.groovy | 10 + .../afterBoundListTypeParameter.groovy | 11 + .../afterClassTypeParameter.groovy | 10 + .../afterListClassTypeParameter.groovy | 11 + .../afterListTypeParameter.groovy | 11 + .../afterNotNull.groovy | 14 + .../afterNullable.groovy | 17 + .../afterSimpleTypeParameter.groovy | 10 + .../afterTypeParameter.groovy | 10 + .../createFieldFromParameter/before1.groovy | 21 + .../createFieldFromParameter/before2.groovy | 15 + .../createFieldFromParameter/before3.groovy | 17 + .../createFieldFromParameter/before4.groovy | 10 + .../createFieldFromParameter/before5.groovy | 10 + .../createFieldFromParameter/before6.groovy | 12 + .../createFieldFromParameter/before7.groovy | 12 + .../createFieldFromParameter/before8.groovy | 7 + .../beforeArrayType.groovy | 7 + .../beforeBoundListTypeParameter.groovy | 8 + .../beforeCaretOnMethod.groovy | 7 + ...aretOnMethodWithOnlyAssignedParams.groovy} | 15 +- .../beforeCaretOnMethodWithoutParams.groovy} | 10 +- .../beforeClassTypeParameter.groovy | 7 + .../beforeListClassTypeParameter.groovy | 8 + .../beforeListTypeParameter.groovy | 8 + .../beforeNotNull.groovy | 10 + .../beforeNullable.groovy | 13 + .../beforeSimpleTypeParameter.groovy | 7 + .../beforeTypeParameter.groovy | 7 + .../i18n/InvalidPropertyKeyInspection.java | 86 +- .../designer/AbstractToolWindowManager.java | 49 +- .../designer/actions/DesignerActionPanel.java | 9 +- .../componentTree/TreeNodeDescriptor.java | 11 + .../intellij/designer/model/MetaManager.java | 5 +- .../designer/palette/DefaultPaletteItem.java | 15 +- .../designer/palette/PaletteItem.java | 2 + .../palette/PaletteItemsComponent.java | 26 +- .../designer/propertyTable/Property.java | 5 + .../designer/propertyTable/PropertyTable.java | 8 +- resources/src/META-INF/IdeaPlugin.xml | 4 + .../options/CodeStyleHtmlPanel.form | 1 - .../options/CodeStyleXmlPanel.form | 1 - .../XmlChooseColorIntentionAction.java | 7 +- .../com/intellij/xml/XmlFileTypeFactory.java | 2 +- 448 files changed, 9101 insertions(+), 13350 deletions(-) create mode 100644 colorSchemes/src/colorSchemes/Darcula.xml create mode 100644 java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/CreateFieldFromUsageHelper.java create mode 100644 java/java-impl/src/com/intellij/codeInsight/daemon/impl/quickfix/JavaCreateFieldFromUsageHelper.java delete mode 100644 java/java-impl/src/com/intellij/codeInsight/intention/impl/BaseRunRefactoringAction.java create mode 100644 java/java-impl/src/com/intellij/codeInsight/intention/impl/CreateFieldFromParameterActionBase.java create mode 100644 jps/model/src/org/jetbrains/ether/dependencyView/OrderProvider.java delete mode 100644 lib/netty-3.4.5.Final.jar create mode 100644 lib/netty-3.5.0.Final.jar delete mode 100644 lib/src/netty-3.4.5.Final-sources.jar create mode 100644 lib/src/netty-3.5.0.Final-sources.jar create mode 100644 platform/lang-api/src/com/intellij/codeInsight/intention/BaseElementAtCaretIntentionAction.java rename platform/lang-impl/src/com/intellij/refactoring/{RefactoringBaseIntention.java => BaseRefactoringIntentionAction.java} (78%) create mode 100644 platform/platform-impl/src/com/intellij/ide/ui/laf/darcula.properties create mode 100644 platform/platform-impl/src/com/intellij/ide/ui/laf/darcula_linux.properties create mode 100644 platform/platform-impl/src/com/intellij/ide/ui/laf/darcula_windows.properties create mode 100644 platform/util/src/com/intellij/util/io/storage/CapacityAllocationPolicy.java create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igfixes/performance/replace_with_system_arraycopy/Decrement.after.java create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igfixes/performance/replace_with_system_arraycopy/Decrement.java create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igfixes/performance/replace_with_system_arraycopy/Simple.after.java create mode 100644 plugins/InspectionGadgets/test/com/siyeh/igfixes/performance/replace_with_system_arraycopy/Simple.java create mode 100644 plugins/InspectionGadgets/testsrc/com/siyeh/ig/fixes/performance/ManualArrayCopyFixTest.java create mode 100644 plugins/IntentionPowerPak/test/com/siyeh/ipp/exceptions/mergeTry/WithoutAndWithResources.java create mode 100644 plugins/IntentionPowerPak/test/com/siyeh/ipp/exceptions/mergeTry/WithoutAndWithResources_after.java create mode 100644 plugins/android-designer/src/com/intellij/android/designer/propertyTable/StyleProperty.java create mode 100644 plugins/android/testData/dom/layout/JavaCreateResourceFromUsage.java create mode 100644 plugins/android/testData/dom/layout/createResourceFromUsage1.xml create mode 100644 plugins/android/testData/dom/layout/createResourceFromUsage1_drawable_after.xml create mode 100644 plugins/android/testData/dom/layout/javaCreateResourceFromUsage_layout_after.xml create mode 100644 plugins/android/testData/dom/resources/InlineResourceField.java create mode 100644 plugins/android/testData/dom/resources/JavaCreateFromUsage.java create mode 100644 plugins/android/testData/dom/resources/JavaCreateFromUsage1.java create mode 100644 plugins/android/testData/dom/resources/javaCreateFromUsage1_bools_after.xml create mode 100644 plugins/android/testData/dom/resources/javaCreateFromUsage_drawables_after.xml create mode 100644 plugins/android/testData/rename/RefR1.java create mode 100644 plugins/android/testData/rename/RefR1_after.java create mode 100644 plugins/android/testData/rename/RefR2.java create mode 100644 plugins/android/testData/rename/RefR2_after.java create mode 100644 plugins/android/testData/resNavigation/src/p1/p2/JavaFileNavigation10.java create mode 100644 plugins/android/testData/resNavigation/src/p1/p2/JavaFileNavigation11.java create mode 100644 plugins/android/testData/resNavigation/src/p1/p2/JavaFileNavigation8.java create mode 100644 plugins/android/testData/resNavigation/src/p1/p2/JavaFileNavigation9.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntDeclarationRangeHandler.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntDefaultNSProvider.java rename plugins/ant/src/com/intellij/lang/ant/{psi => }/AntFilesProvider.java (96%) rename plugins/ant/src/com/intellij/lang/ant/{psi/impl => }/AntImportsIndex.java (98%) rename plugins/ant/src/com/intellij/lang/ant/{psi/impl => }/AntIntrospector.java (98%) delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntLanguageExtension.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntParserDefinition.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntPropertyRefSelectioner.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/AntStructureViewBuilderFactory.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/PsiAntElement.java rename plugins/ant/src/com/intellij/lang/ant/{psi/impl => }/ReflectedProject.java (98%) delete mode 100644 plugins/ant/src/com/intellij/lang/ant/config/impl/AntBreadcrumbsInfoProvider.java create mode 100644 plugins/ant/src/com/intellij/lang/ant/dom/AntDomClasspathComponent.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/misc/AntPsiUtil.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/misc/PsiElementSetSpinAllocator.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/misc/PsiElementWithValueSetSpinAllocator.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntAllTasksContainer.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntAnt.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntCall.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntDefTask.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntElement.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntElementVisitor.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntFile.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntImport.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntMacroDef.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntNameIdentifier.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntPresetDef.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntProject.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntProperty.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntScriptDef.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntStructuredElement.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntTarget.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/AntTypeDef.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntAllTasksContainerImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntAntImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntBuildNumberImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntCallImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntCommentImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntDirSetImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntElementFactory.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntElementImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntEntityRefImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntFileImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntFileListImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntFileSetImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntFilesProviderImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntImportImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntMacroDefImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntNameIdentifierImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntOuterProjectElement.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntPathImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntPattern.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntPresetDefImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntProjectImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntPropertyImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntScriptDefImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntStructuredElementImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntTargetImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntTaskImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntTimestampFormatImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/AntTypeDefImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/PropertiesBuilder.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntAttributeReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntElementCompletionWrapper.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntElementNameReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntEndElementNameReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntEntityReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntFileReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntFileReferenceSet.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntGenericReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntMacroDefParameterReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntPropertyReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntRefIdReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntReferenceProvidersRegistry.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/AntTargetReference.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntAttributeReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntElementNameReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntFileReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntMacroDefParameterReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntPropertyReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntRefIdReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntSingleTargetReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/impl/reference/providers/AntTargetListReferenceProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/introspection/AntAttributeType.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/introspection/AntTypeDefinition.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/introspection/AntTypeId.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/introspection/impl/AntTypeDefinitionImpl.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/psi/usages/AntUsagesProvider.java create mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntChangeContextLocalFix.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntCreateMacroDefFix.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntCreatePresetDefFix.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntCreatePropertyFix.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntCreateTargetFix.java create mode 100644 plugins/ant/src/com/intellij/lang/ant/quickfix/AntUnresolvedRefsFixProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/refactoring/AntTargetRenameListenerProvider.java delete mode 100644 plugins/ant/src/com/intellij/lang/ant/refactoring/AntVetoRenameCondition.java delete mode 100644 plugins/ant/tests/src/com/intellij/lang/ant/psi/impl/PatternsTest.java create mode 100644 plugins/github/src/org/jetbrains/plugins/github/GithubShowCommitInBrowserAction.java create mode 100644 plugins/groovy/resources/intentionDescriptions/GrCreateFieldForParameterIntention/after.groovy.template create mode 100644 plugins/groovy/resources/intentionDescriptions/GrCreateFieldForParameterIntention/before.groovy.template create mode 100644 plugins/groovy/resources/intentionDescriptions/GrCreateFieldForParameterIntention/description.html create mode 100644 plugins/groovy/src/org/jetbrains/plugins/groovy/annotator/intentions/GroovyCreateFieldFromUsageHelper.java create mode 100644 plugins/groovy/src/org/jetbrains/plugins/groovy/intentions/declaration/GrCreateFieldForParameterIntention.java rename plugins/groovy/src/org/jetbrains/plugins/groovy/intentions/{control => declaration}/GrCreateSubclassAction.java (99%) create mode 100644 plugins/groovy/src/org/jetbrains/plugins/groovy/lang/psi/impl/synthetic/GrSyntheticExpression.java create mode 100644 plugins/groovy/test/org/jetbrains/plugins/groovy/intentions/CreateFieldFromParameterTest.groovy create mode 100644 plugins/groovy/testdata/groovy/controlFlow/orInReturn.test create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after1.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after2.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after3.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after4.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after5.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after6.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/after8.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterArrayType.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterBoundListTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterClassTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterListClassTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterListTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterNotNull.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterNullable.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterSimpleTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/afterTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before1.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before2.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before3.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before4.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before5.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before6.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before7.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/before8.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeArrayType.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeBoundListTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeCaretOnMethod.groovy rename plugins/{ant/src/com/intellij/lang/ant/psi/AntTask.java => groovy/testdata/intentions/createFieldFromParameter/beforeCaretOnMethodWithOnlyAssignedParams.groovy} (73%) rename plugins/{ant/src/com/intellij/lang/ant/psi/AntComment.java => groovy/testdata/intentions/createFieldFromParameter/beforeCaretOnMethodWithoutParams.groovy} (76%) create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeClassTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeListClassTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeListTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeNotNull.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeNullable.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeSimpleTypeParameter.groovy create mode 100644 plugins/groovy/testdata/intentions/createFieldFromParameter/beforeTypeParameter.groovy diff --git a/.idea/compiler.xml b/.idea/compiler.xml index fa595e20de73..569ac7af0c1b 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -20,7 +20,11 @@ - + + + + +