580077864f1d2b0d23d5a669603d736263709127
[idea/community.git] / resources / src / META-INF / IdeaPlugin.xml
1 <!--
2   ~ Copyright 2000-2014 JetBrains s.r.o.
3   ~
4   ~ Licensed under the Apache License, Version 2.0 (the "License");
5   ~ you may not use this file except in compliance with the License.
6   ~ You may obtain a copy of the License at
7   ~
8   ~ http://www.apache.org/licenses/LICENSE-2.0
9   ~
10   ~ Unless required by applicable law or agreed to in writing, software
11   ~ distributed under the License is distributed on an "AS IS" BASIS,
12   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   ~ See the License for the specific language governing permissions and
14   ~ limitations under the License.
15   -->
16 <idea-plugin version="2" xmlns:xi="http://www.w3.org/2001/XInclude">
17   <id>com.intellij</id>
18   <name>IDEA CORE</name>
19
20   <xi:include href="/META-INF/IdeTipsAndTricks.xml" xpointer="xpointer(/idea-plugin/*)"/>
21   <xi:include href="/idea/RichPlatformPlugin.xml" xpointer="xpointer(/idea-plugin/*)"/>
22   <module value="com.intellij.modules.java"/>
23   <module value="com.intellij.modules.all"/>
24   <xi:include href="/idea/JavaActions.xml" xpointer="xpointer(/idea-plugin/*)"/>
25   <xi:include href="/META-INF/ExternalSystemExtensions.xml" xpointer="xpointer(/idea-plugin/extensions/*)"/>
26   <xi:include href="/componentSets/Debugger.xml" xpointer="xpointer(/idea-plugin/*)"/>
27   <xi:include href="/META-INF/structuralsearch.xml" xpointer="xpointer(/idea-plugin/*)">
28     <xi:fallback/>
29   </xi:include>
30   <xi:include href="/META-INF/structuralsearch-java.xml" xpointer="xpointer(/idea-plugin/*)">
31     <xi:fallback/>
32   </xi:include>
33   <xi:include href="/META-INF/IntentionPowerPack.xml" xpointer="xpointer(/idea-plugin/*)">
34     <xi:fallback/>
35   </xi:include>
36   <xi:include href="/META-INF/InspectionGadgets.xml" xpointer="xpointer(/idea-plugin/*)"/>
37   <xi:include href="/META-INF/ManifestSupport.xml" xpointer="xpointer(/idea-plugin/*)">
38     <xi:fallback/>
39   </xi:include>
40   <xi:include href="/META-INF/TypeMigration.xml" xpointer="xpointer(/idea-plugin/*)">
41     <xi:fallback/>
42   </xi:include>
43   <xi:include href="/META-INF/libraryJarUsage.xml" xpointer="xpointer(/idea-plugin/*)">
44     <xi:fallback/>
45   </xi:include>
46
47   <application-components>
48     <component>
49       <implementation-class>com.intellij.openapi.vfs.impl.jrt.JrtFileSystem</implementation-class>
50     </component>
51     <component>
52       <implementation-class>com.intellij.util.xml.impl.JavaDomApplicationComponent</implementation-class>
53     </component>
54   </application-components>
55
56   <project-components>
57     <component>
58       <implementation-class>com.intellij.compiler.classFilesIndex.api.index.ClassFilesIndexFeaturesHolder</implementation-class>
59     </component>
60
61     <component>
62       <interface-class>com.intellij.psi.RefResolveService</interface-class>
63       <implementation-class>com.intellij.psi.refResolve.RefResolveServiceImpl</implementation-class>
64     </component>
65
66     <component>
67       <implementation-class>com.intellij.execution.testDiscovery.TestDiscoveryIndex</implementation-class>
68     </component>
69
70     <component>
71       <implementation-class>com.intellij.execution.scratch.JavaScratchCompilationSupport</implementation-class>
72     </component>
73     <component>
74       <implementation-class>com.intellij.codeInsight.hints.ParameterHintsPassFactory</implementation-class>
75       <skipForDefaultProject/>
76     </component>
77
78     <component>
79       <interface-class>com.intellij.compiler.CompilerReferenceService</interface-class>
80       <implementation-class>com.intellij.compiler.backwardRefs.CompilerReferenceServiceImpl</implementation-class>
81     </component>
82   </project-components>
83
84   <extensionPoints>
85     <extensionPoint name="codeInsight.changeVariableTypeQuickFixProvider"
86                     interface="com.intellij.codeInsight.quickfix.ChangeVariableTypeQuickFixProvider"/>
87     <extensionPoint name="codeInsight.implementedAtRuntime"
88                     interface="com.intellij.codeInspection.inheritance.ImplementedAtRuntimeCondition"/>
89     <extensionPoint name="conversion.rule"
90                     interface="com.intellij.refactoring.typeMigration.rules.TypeConversionRule"/>
91
92     <extensionPoint name="overrideImplementsAnnotationsHandler"
93                     interface="com.intellij.codeInsight.generation.OverrideImplementsAnnotationsHandler"/>
94     <extensionPoint name="generateAccessorProvider"
95                     interface="com.intellij.util.NotNullFunction"/>
96
97     <extensionPoint name="junitPatcher"
98                     interface="com.intellij.execution.JUnitPatcher"/>
99
100     <extensionPoint name="junitRecognizer"
101                     interface="com.intellij.execution.JUnitRecognizer"/>
102
103     <extensionPoint name="i18nInspectionTool"
104                     interface="com.intellij.codeInspection.FileCheckingInspection"/>
105     <extensionPoint name="invalidPropertyKeyInspectionTool"
106                     interface="com.intellij.codeInspection.FileCheckingInspection"/>
107     <extensionPoint name="java15InspectionTool"
108                     interface="com.intellij.codeInspection.FileCheckingInspection"/>
109
110     <extensionPoint name="deadCode"
111                     interface="com.intellij.codeInspection.reference.EntryPoint"/>
112     <extensionPoint name="predefinedMigrationMapProvider"
113                     interface="com.intellij.refactoring.migration.PredefinedMigrationProvider"/>
114     <extensionPoint name="unusedDeclarationFixProvider"
115                     interface="com.intellij.codeInspection.reference.UnusedDeclarationFixProvider"/>
116
117     <extensionPoint name="canBeFinal"
118                     interface="com.intellij.codeInspection.canBeFinal.CanBeFinalHandler"/>
119     <!-- PsiMember -->
120     <extensionPoint name="javaDocNotNecessary"
121                     interface="com.intellij.openapi.util.Condition"/>
122
123     <!-- RefMethod -->
124     <extensionPoint name="canBeEmpty"
125                     interface="com.intellij.openapi.util.Condition"/>
126
127     <extensionPoint name="safeDelete.importSearcher"
128                     interface="com.intellij.refactoring.safeDelete.ImportSearcher"/>
129
130     <extensionPoint name="visibility"
131                     interface="com.intellij.codeInspection.visibility.VisibilityExtension"/>
132
133     <extensionPoint name="methodImplementor"
134                     interface="com.intellij.codeInsight.MethodImplementor"/>
135
136     <extensionPoint name="debugger.codeFragmentFactory"
137                     interface="com.intellij.debugger.engine.evaluation.CodeFragmentFactory"/>
138
139     <extensionPoint name="debugger.nodeRenderer"
140                     interface="com.intellij.debugger.ui.tree.render.NodeRenderer"/>
141
142     <extensionPoint name="debugger.javaDebugAware"
143                     interface="com.intellij.debugger.engine.JavaDebugAware"/>
144
145     <extensionPoint name="debugger.javaBreakpointHandlerFactory"
146                     interface="com.intellij.debugger.engine.JavaBreakpointHandlerFactory"/>
147
148     <extensionPoint name="debugger.positionManagerFactory"
149                     interface="com.intellij.debugger.PositionManagerFactory"
150                     area="IDEA_PROJECT"/>
151     <extensionPoint name="debugger.jvmSmartStepIntoHandler"
152                     interface="com.intellij.debugger.actions.JvmSmartStepIntoHandler"/>
153     <extensionPoint name="debugger.jvmSteppingCommandProvider"
154                     interface="com.intellij.debugger.impl.JvmSteppingCommandProvider"/>
155
156     <extensionPoint name="debugger.frameExtraVarsProvider"
157                     interface="com.intellij.debugger.engine.FrameExtraVariablesProvider"/>
158
159     <extensionPoint name="debugger.sourcePositionProvider"
160                     interface="com.intellij.debugger.engine.SourcePositionProvider"/>
161
162     <extensionPoint name="debugger.simpleGetterProvider"
163                     interface="com.intellij.debugger.engine.SimpleGetterProvider"/>
164
165     <extensionPoint name="debugger.simplePropertyGetterProvider"
166                     interface="com.intellij.debugger.engine.SimplePropertyGetterProvider"/>
167
168     <extensionPoint name="debugger.syntheticProvider"
169                     interface="com.intellij.debugger.engine.SyntheticTypeComponentProvider"/>
170
171     <extensionPoint name="debugger.extraSteppingFilter"
172                     interface="com.intellij.debugger.engine.ExtraSteppingFilter"/>
173
174     <extensionPoint name="debugger.sourcePositionHighlighter"
175                     interface="com.intellij.debugger.engine.SourcePositionHighlighter"/>
176
177     <extensionPoint name="debugger.nodeNameAdjuster"
178                     interface="com.intellij.debugger.ui.tree.NodeDescriptorNameAdjuster"/>
179
180
181     <extensionPoint name="allOverridingMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
182     <extensionPoint name="annotatedElementsSearch" interface="com.intellij.util.QueryExecutor"/>
183     <extensionPoint name="annotatedPackagesSearch" interface="com.intellij.util.QueryExecutor"/>
184     <extensionPoint name="classInheritorsSearch" interface="com.intellij.util.QueryExecutor"/>
185     <extensionPoint name="deepestSuperMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
186     <extensionPoint name="directClassInheritorsSearch" interface="com.intellij.util.QueryExecutor"/>
187     <extensionPoint name="methodReferencesSearch" interface="com.intellij.util.QueryExecutor"/>
188     <extensionPoint name="overridingMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
189     <extensionPoint name="superMethodsSearch" interface="com.intellij.util.QueryExecutor"/>
190     <extensionPoint name="allClassesSearch" interface="com.intellij.util.QueryExecutor"/>
191     <extensionPoint name="functionalExpressionSearch" interface="com.intellij.util.QueryExecutor"/>
192     <extensionPoint name="classesWithAnnotatedMembersSearch" interface="com.intellij.util.QueryExecutor"/>
193
194     <extensionPoint name="hierarchy.indexer" interface="com.intellij.psi.stubsHierarchy.StubHierarchyIndexer"/>
195
196     <extensionPoint name="compiler.inspectionValidator"
197                     interface="com.intellij.openapi.compiler.util.InspectionValidator"
198                     area="IDEA_PROJECT"/>
199
200     <extensionPoint name="javaExpressionSurrounder"
201                     interface="com.intellij.codeInsight.generation.surroundWith.JavaExpressionSurrounder"/>
202
203     <extensionPoint name="customPropertyScopeProvider" interface="com.intellij.psi.impl.search.CustomPropertyScopeProvider"/>
204
205     <extensionPoint name="testFramework" interface="com.intellij.testIntegration.TestFramework"/>
206
207     <extensionPoint name="projectTaskRunner" interface="com.intellij.task.ProjectTaskRunner"/>
208
209     <extensionPoint name="unscrambleSupport" interface="com.intellij.unscramble.UnscrambleSupport"/>
210
211     <extensionPoint name="javaMainMethodProvider" interface="com.intellij.codeInsight.runner.JavaMainMethodProvider"/>
212
213     <extensionPoint name="importFilter" interface="com.intellij.codeInsight.ImportFilter"/>
214
215     <extensionPoint name="debuggerClassFilterProvider" interface="com.intellij.ui.classFilter.DebuggerClassFilterProvider"/>
216
217     <extensionPoint name="debuggerEditorTextProvider" beanClass="com.intellij.lang.LanguageExtensionPoint" >
218       <with attribute="implementationClass" implements="com.intellij.debugger.impl.EditorTextProvider"/>
219     </extensionPoint>
220
221     <extensionPoint name="codeStyle.ReferenceAdjuster" beanClass="com.intellij.lang.LanguageExtensionPoint">
222       <with attribute="implementationClass" implements="com.intellij.psi.codeStyle.ReferenceAdjuster"/>
223     </extensionPoint>
224
225     <extensionPoint name="javadocTagInfo" area="IDEA_PROJECT" interface="com.intellij.psi.javadoc.JavadocTagInfo"/>
226     <extensionPoint name="customJavadocTagProvider" interface="com.intellij.psi.javadoc.CustomJavadocTagProvider"/>
227
228     <extensionPoint name="refactoring.introduceParameterMethodUsagesProcessor" interface="com.intellij.refactoring.introduceParameter.IntroduceParameterMethodUsagesProcessor"/>
229
230     <extensionPoint name="annotationSupport" beanClass="com.intellij.lang.LanguageExtensionPoint">
231       <with attribute="implementationClass" implements="com.intellij.psi.PsiAnnotationSupport"/>
232     </extensionPoint>
233
234     <extensionPoint name="constantExpressionEvaluator" beanClass="com.intellij.lang.LanguageExtensionPoint">
235       <with attribute="implementationClass" implements="com.intellij.psi.impl.ConstantExpressionEvaluator"/>
236     </extensionPoint>
237
238     <extensionPoint name="expressionConverter" beanClass="com.intellij.lang.LanguageExtensionPoint">
239       <with attribute="implementationClass" implements="com.intellij.psi.impl.ExpressionConverter"/>
240     </extensionPoint>
241
242     <extensionPoint name="refactoring.pullUpHelperFactory" beanClass="com.intellij.lang.LanguageExtensionPoint">
243       <with attribute="implementationClass" implements="com.intellij.refactoring.memberPullUp.PullUpHelperFactory"/>
244     </extensionPoint>
245
246     <extensionPoint name="classTypePointerFactory" interface="com.intellij.psi.ClassTypePointerFactory"/>
247
248     <!--<extensionPoint name="expectedTypesProvider" interface="com.intellij.codeInsight.ExpectedTypesProviderExtension"/>-->
249
250     <extensionPoint name="java.elementFinder" area="IDEA_PROJECT" interface="com.intellij.psi.PsiElementFinder"/>
251     <extensionPoint name="java.shortNamesCache" area="IDEA_PROJECT" interface="com.intellij.psi.search.PsiShortNamesCache"/>
252
253     <extensionPoint name="allowedApiFilter" interface="com.intellij.psi.impl.AllowedApiFilterExtension"/>
254
255     <extensionPoint name="generation.topLevelFactory" beanClass="com.intellij.lang.LanguageExtensionPoint">
256       <with attribute="implementationClass" implements="com.intellij.psi.JVMElementFactoryProvider"/>
257     </extensionPoint>
258
259     <extensionPoint name="codeInsight.createFieldFromUsageHelper" beanClass="com.intellij.lang.LanguageExtensionPoint">
260       <with attribute="implementationClass" implements="com.intellij.codeInsight.daemon.impl.quickfix.CreateFieldFromUsageHelper"/>
261     </extensionPoint>
262
263     <extensionPoint name="generation.toStringClassFilter" interface="org.jetbrains.generate.tostring.GenerateToStringClassFilter"/>
264
265     <extensionPoint name="getterSetterProvider" interface="com.intellij.codeInsight.generation.GetterSetterPrototypeProvider"/>
266
267     <extensionPoint name="library.dependencyScopeSuggester" interface="com.intellij.openapi.roots.LibraryDependencyScopeSuggester"/>
268     <extensionPoint name="projectModelModifier" interface="com.intellij.openapi.roots.JavaProjectModelModifier"
269                     area="IDEA_PROJECT"/>
270
271     <extensionPoint name="refactoring.safeDelete.JavaSafeDeleteDelegate" beanClass="com.intellij.lang.LanguageExtensionPoint">
272       <with attribute="implementationClass" implements="com.intellij.refactoring.safeDelete.JavaSafeDeleteDelegate"/>
273     </extensionPoint>
274
275     <extensionPoint name="constructorBodyGenerator"
276                     beanClass="com.intellij.lang.LanguageExtensionPoint">
277       <with attribute="implementationClass" implements="com.intellij.codeInsight.generation.ConstructorBodyGenerator"/>
278     </extensionPoint>
279
280     <extensionPoint name="refactoring.moveInnerHandler" beanClass="com.intellij.lang.LanguageExtensionPoint">
281       <with attribute="implementationClass" implements="com.intellij.refactoring.move.moveInner.MoveInnerHandler"/>
282     </extensionPoint>
283
284     <extensionPoint name="refactoring.moveClassToInnerHandler"
285                     interface="com.intellij.refactoring.move.moveClassesOrPackages.MoveClassToInnerHandler"/>
286
287     <extensionPoint name="refactoring.moveAllClassesInFileHandler"
288                     interface="com.intellij.refactoring.move.moveClassesOrPackages.MoveAllClassesInFileHandler"/>
289
290     <extensionPoint name="refactoring.moveClassHandler" interface="com.intellij.refactoring.move.moveClassesOrPackages.MoveClassHandler"/>
291
292     <extensionPoint name="refactoring.moveMemberHandler" beanClass="com.intellij.lang.LanguageExtensionPoint">
293       <with attribute="implementationClass" implements="com.intellij.refactoring.move.moveMembers.MoveMemberHandler"/>
294     </extensionPoint>
295
296     <extensionPoint name="testGenerator"
297                     beanClass="com.intellij.lang.LanguageExtensionPoint">
298       <with attribute="implementationClass" implements="com.intellij.testIntegration.createTest.TestGenerator"/>
299     </extensionPoint>
300
301     <extensionPoint name="encapsulateFields.Helper" beanClass="com.intellij.lang.LanguageExtensionPoint">
302       <with attribute="implementationClass" implements="com.intellij.refactoring.encapsulateFields.EncapsulateFieldHelper"/>
303     </extensionPoint>
304
305     <extensionPoint name="psi.classFileDecompiler" interface="com.intellij.psi.compiled.ClassFileDecompilers$Decompiler"/>
306     <!-- deprecated API -->
307     <!--suppress DeprecatedClassUsageInspection -->
308     <extensionPoint name="psi.clsCustomNavigationPolicy" interface="com.intellij.psi.impl.compiled.ClsCustomNavigationPolicy"/>
309
310     <extensionPoint name="codeInsight.externalLibraryResolver" interface="com.intellij.codeInsight.daemon.quickFix.ExternalLibraryResolver"/>
311
312     <extensionPoint name="vetoSPICondition" interface="com.intellij.openapi.util.Condition"/>
313
314     <extensionPoint name="hierarchy.referenceProcessor" interface="com.intellij.ide.hierarchy.call.CallReferenceProcessor"/>
315
316     <extensionPoint name="lang.psiAugmentProvider" interface="com.intellij.psi.augment.PsiAugmentProvider"/>
317     <extensionPoint name="lang.psiTypeAnnotationModifier" interface="com.intellij.psi.augment.TypeAnnotationModifier"/>
318
319     <extensionPoint name="custom.exception.handler" interface="com.intellij.codeInsight.CustomExceptionHandler"/>
320
321     <extensionPoint name="refactoring.moveInnerClassUsagesHandler" beanClass="com.intellij.lang.LanguageExtensionPoint">
322       <with attribute="implementationClass" implements="com.intellij.refactoring.move.moveInner.MoveInnerClassUsagesHandler"/>
323     </extensionPoint>
324
325     <extensionPoint name="library.javaSourceRootDetector" interface="com.intellij.openapi.roots.libraries.ui.RootDetector"/>
326
327     <extensionPoint name="documentationDelegateProvider" interface="com.intellij.codeInsight.javadoc.DocumentationDelegateProvider"/>
328   </extensionPoints>
329
330   <extensions defaultExtensionNs="com.intellij">
331     <lang.syntaxHighlighterFactory language="JAVA" implementationClass="com.intellij.lang.java.JavaSyntaxHighlighterFactory"/>
332     <syntaxHighlighter id="java.class" key="CLASS" factoryClass="com.intellij.lang.java.JavaSyntaxHighlighterFactory"/>
333
334     <constantExpressionEvaluator language="JAVA" implementationClass="com.intellij.psi.impl.PsiExpressionEvaluator" />
335     <annotationSupport language="JAVA" implementationClass="com.intellij.psi.impl.source.tree.java.JavaAnnotationSupport" />
336
337     <codeInsight.unresolvedReferenceQuickFixProvider
338         implementation="com.intellij.codeInsight.daemon.impl.quickfix.DefaultQuickFixProvider"/>
339
340     <codeInsight.changeVariableTypeQuickFixProvider
341         implementation="com.intellij.codeInsight.daemon.impl.quickfix.VariableTypeQuickFixProvider"/>
342
343     <overrideImplementsAnnotationsHandler implementation="com.intellij.codeInsight.generation.OverrideImplementsAnnotationsHandlerImpl"/>
344     <applicationService serviceInterface="com.intellij.openapi.module.ModuleTypeManager"
345                         serviceImplementation="com.intellij.openapi.module.impl.JavaAwareModuleTypeManagerImpl"/>
346     <errorOptionsProvider instance="com.intellij.profile.codeInspection.ui.JavaErrorOptionsProvider"/>
347     <autoImportOptionsProvider instance="com.intellij.application.options.editor.JavaAutoImportOptions"/>
348     <codeFoldingOptionsProvider instance="com.intellij.application.options.editor.JavaCodeFoldingOptionsProvider"/>
349
350     <expressionConverter implementationClass="com.intellij.refactoring.introduceParameter.JavaExpressionConverter" language="JAVA"/>
351
352     <codeInsight.createFieldFromUsageHelper language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.quickfix.JavaCreateFieldFromUsageHelper"/>
353
354     <codeInsight.containerProvider implementation="com.intellij.codeInsight.JavaContainerProvider" id="JAVA"/>
355
356     <codeInsight.lineMarkerProvider language="" implementationClass="com.intellij.ui.ColorLineMarkerProvider"/>
357     <!--<expectedTypesProvider implementation="com.intellij.codeInsight.JavaExpectedTypesProvider"/>-->
358
359     <customPropertyScopeProvider implementation="com.intellij.psi.impl.search.SimpleAccessorScopeProvider"/>
360
361     <referencesSearch implementation="com.intellij.psi.impl.search.PsiAnnotationMethodReferencesSearcher"/>
362     <referencesSearch implementation="com.intellij.psi.impl.search.ConstructorReferencesSearcher"/>
363     <referencesSearch implementation="com.intellij.psi.impl.search.SPIReferencesSearcher"/>
364     <referencesSearch implementation="com.intellij.psi.impl.search.SimpleAccessorReferenceSearcher"/>
365     <referencesSearch implementation="com.intellij.psi.impl.search.VariableInIncompleteCodeSearcher"/>
366
367     <allClassesSearch implementation="com.intellij.psi.impl.search.AllClassesSearchExecutor"/>
368
369     <superMethodsSearch implementation="com.intellij.psi.impl.search.MethodSuperSearcher"/>
370     <annotatedElementsSearch implementation="com.intellij.psi.impl.search.AnnotatedElementsSearcher"/>
371     <annotatedPackagesSearch implementation="com.intellij.psi.impl.search.AnnotatedPackagesSearcher"/>
372     <directClassInheritorsSearch implementation="com.intellij.psi.impl.search.JavaDirectInheritorsSearcher"/>
373     <directClassInheritorsSearch implementation="com.intellij.psi.impl.search.StubHierarchyInheritorSearcher"/>
374     <classInheritorsSearch implementation="com.intellij.psi.impl.search.JavaClassInheritorsSearcher"/>
375     <overridingMethodsSearch implementation="com.intellij.psi.impl.search.JavaOverridingMethodsSearcher"/>
376     <allOverridingMethodsSearch implementation="com.intellij.psi.impl.search.JavaAllOverridingMethodsSearcher"/>
377     <methodReferencesSearch implementation="com.intellij.psi.impl.search.MethodUsagesSearcher"/>
378     <deepestSuperMethodsSearch implementation="com.intellij.psi.impl.search.MethodDeepestSuperSearcher"/>
379     <classesWithAnnotatedMembersSearch implementation="com.intellij.psi.impl.search.ClassesWithAnnotatedMembersSearcher"/>
380
381     <definitionsScopedSearch implementation="com.intellij.codeInsight.navigation.MethodImplementationsSearch"/>
382     <definitionsScopedSearch implementation="com.intellij.codeInsight.navigation.ClassImplementationsSearch"/>
383
384     <functionalExpressionSearch implementation="com.intellij.psi.impl.search.JavaFunctionalExpressionSearcher"/>
385
386     <fileTypeFactory implementation="com.intellij.openapi.fileTypes.impl.JavaFileTypeFactory"/>
387
388     <lookup.actionProvider implementation="com.intellij.codeInsight.completion.ImportStaticLookupActionProvider" id="importStatic"/>
389     <lookup.actionProvider implementation="com.intellij.codeInsight.completion.ExcludeFromCompletionLookupActionProvider"
390                            id="excludeFromCompletion" order="last"/>
391
392     <completion.confidence language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaReferenceCompletionConfidence"/>
393     <completion.confidence language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavadocCompletionConfidence" id="javadoc" order="before javaComments"/>
394     <completion.confidence language="JAVA" implementationClass="com.intellij.codeInsight.completion.SkipAutopopupInComments" id="javaComments"/>
395     <completion.confidence language="JAVA" implementationClass="com.intellij.psi.impl.source.resolve.reference.impl.JavaReflectionCompletionConfidence" id="javaReflection" />
396     <completion.confidence language="JAVA" implementationClass="com.intellij.codeInsight.completion.SkipAutopopupInStrings" id="javaSkipAutopopupInStrings"/>
397
398     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.RefactoringCompletionContributor" id="javaRefactoring"
399                             order="first"/>
400
401     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaNoVariantsDelegator" id="javaBasic2ClassName"
402                             order="before javaMemberName, before javaLegacy, after liveTemplates"/>
403     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInspection.magicConstant.MagicCompletionContributor" id="magicCompletion"
404                             order="after javaBasic2ClassName"/>
405     <completion.contributor language="XML" implementationClass="com.intellij.codeInsight.completion.XmlBasicToClassNameDelegator" id="basic2ClassName"
406                             order="after xml"/>
407     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaCompletionContributor" id="javaLegacy"
408                             order="last, before legacy, before default, before javaClassName"/>
409     <completion.contributor language="any" implementationClass="com.intellij.codeInsight.completion.JavaClassReferenceCompletionContributor"
410                             id="javaClassReference" order="before legacy"/>
411
412     <completion.contributor language="any" implementationClass="com.intellij.codeInsight.completion.JavaMethodMergingContributor" id="methodMerger"
413                             order="before javaLegacy, before default"/>
414     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaMemberNameCompletionContributor" id="javaMemberName"
415                             order="before javaOverride"/>
416     <completion.contributor language="any" implementationClass="com.intellij.codeInsight.completion.JavaClassNameCompletionContributor" id="javaClassName"
417                             order="last, before default"/>
418
419     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaDocCompletionContributor" id="javadoc"
420                             order="last, before javaLegacy, before wordCompletion"/>
421
422     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.NullSmartCompletionContributor" id="smartNull"
423                             order="last, before javaSmart"/>
424     <completion.contributor language="JAVA" implementationClass="com.intellij.codeInsight.completion.JavaSmartCompletionContributor" id="javaSmart"
425                             order="last, before default"/>
426
427     <lookup.charFilter implementation="com.intellij.codeInsight.completion.JavaCharFilter" id="java"/>
428
429     <lang.elementManipulator forClass="com.intellij.psi.PsiLiteralExpression"
430                              implementationClass="com.intellij.psi.impl.source.resolve.reference.impl.manipulators.StringLiteralManipulator"/>
431     <lang.elementManipulator forClass="com.intellij.psi.javadoc.PsiDocTag"
432                              implementationClass="com.intellij.psi.impl.source.resolve.reference.impl.manipulators.PsiDocTagValueManipulator"/>
433
434     <classTypePointerFactory implementation="com.intellij.psi.impl.smartPointers.PsiClassReferenceTypePointerFactory"/>
435
436     <applicationService serviceInterface="com.intellij.util.xml.converters.values.ClassValueConverter"
437                     serviceImplementation="com.intellij.util.xml.converters.ClassValueConverterImpl"/>
438
439     <applicationService serviceInterface="com.intellij.util.xml.converters.values.ClassArrayConverter"
440                     serviceImplementation="com.intellij.util.xml.converters.ClassArrayConverterImpl"/>
441
442     <applicationService serviceInterface="com.intellij.debugger.engine.DebuggerUtils"
443                         serviceImplementation="com.intellij.debugger.impl.DebuggerUtilsImpl"/>
444
445     <applicationService serviceInterface="com.intellij.codeInspection.reference.RefJavaUtil"
446                         serviceImplementation="com.intellij.codeInspection.reference.RefJavaUtilImpl"/>
447     <applicationService serviceInterface="com.intellij.psi.EmptySubstitutor"
448                         serviceImplementation="com.intellij.psi.impl.EmptySubstitutorImpl"/>
449
450     <applicationService serviceInterface="com.intellij.codeInsight.intention.QuickFixFactory"
451                         serviceImplementation="com.intellij.codeInsight.intention.impl.config.QuickFixFactoryImpl"/>
452
453     <applicationService serviceInterface="com.intellij.psi.impl.source.codeStyle.IndentHelper"
454                         serviceImplementation="com.intellij.psi.impl.source.codeStyle.JavaIndentHelper"
455                         overrides="true"/>
456
457     <applicationService serviceInterface="com.intellij.codeInsight.TestFrameworks"
458                         serviceImplementation="com.intellij.codeInsight.TestFrameworksImpl"/>
459
460     <projectService serviceInterface="com.intellij.execution.testDiscovery.JavaAutoRunManager"
461                     serviceImplementation="com.intellij.execution.testDiscovery.JavaAutoRunManager"/>
462
463     <projectService serviceInterface="com.intellij.ide.util.TreeClassChooserFactory"
464                     serviceImplementation="com.intellij.ide.util.TreeClassChooserFactoryImpl"/>
465     <projectService serviceInterface="com.intellij.psi.JavaPsiFacade"
466                     serviceImplementation="com.intellij.psi.impl.JavaPsiFacadeImpl"/>
467     <projectService serviceInterface="com.intellij.psi.PsiNameHelper"
468                     serviceImplementation="com.intellij.psi.impl.PsiNameHelperImpl"/>
469     <projectService serviceInterface="com.intellij.psi.impl.file.impl.JavaFileManager"
470                     serviceImplementation="com.intellij.psi.impl.file.impl.JavaFileManagerImpl"/>
471     <projectService
472                     serviceImplementation="com.intellij.psi.impl.search.HighlightingCaches"/>
473     <projectService serviceInterface="com.intellij.codeInsight.guess.GuessManager"
474                     serviceImplementation="com.intellij.codeInsight.guess.impl.GuessManagerImpl"/>
475     <projectService serviceInterface="com.intellij.psi.impl.source.resolve.JavaResolveCache"
476                     serviceImplementation="com.intellij.psi.impl.source.resolve.JavaResolveCache"/>
477     <projectService serviceInterface="com.intellij.psi.PsiElementFactory"
478                     serviceImplementation="com.intellij.psi.impl.PsiElementFactoryImpl"/>
479     <projectService serviceInterface="com.intellij.psi.javadoc.JavadocManager"
480                     serviceImplementation="com.intellij.psi.impl.source.javadoc.JavadocManagerImpl"/>
481     <projectService serviceInterface="com.intellij.psi.impl.JavaPsiImplementationHelper"
482                     serviceImplementation="com.intellij.psi.impl.JavaPsiImplementationHelperImpl"/>
483     <projectService serviceInterface="com.intellij.psi.codeStyle.JavaCodeStyleSettingsFacade"
484                     serviceImplementation="com.intellij.psi.codeStyle.JavaCodeStyleSettingsFacadeImpl"/>
485     <projectService serviceInterface="com.intellij.codeInsight.JavaCodeInsightSettingsFacade"
486                     serviceImplementation="com.intellij.codeInsight.JavaCodeInsightSettingsFacadeImpl"/>
487     <projectService serviceInterface="com.intellij.psi.impl.migration.PsiMigrationManager"
488                     serviceImplementation="com.intellij.psi.impl.migration.PsiMigrationManager"/>
489     <projectService serviceInterface="com.intellij.psi.PsiResolveHelper"
490                     serviceImplementation="com.intellij.psi.impl.source.resolve.PsiResolveHelperImpl"/>
491
492     <projectService serviceInterface="com.intellij.psi.JavaCodeFragmentFactory"
493                     serviceImplementation="com.intellij.psi.impl.JavaCodeFragmentFactoryImpl"/>
494
495     <projectService serviceInterface="com.intellij.codeInsight.javadoc.JavaDocCodeStyle"
496                     serviceImplementation="com.intellij.codeInsight.javadoc.JavaDocCodeStyleImpl"/>
497
498     <applicationService serviceInterface="com.intellij.psi.JavaDirectoryService"
499                         serviceImplementation="com.intellij.psi.impl.file.JavaDirectoryServiceImpl"/>
500
501     <applicationService serviceInterface="com.intellij.psi.util.JavaClassSupers"
502                         serviceImplementation="com.intellij.psi.impl.JavaClassSupersImpl"/>
503
504     <applicationService serviceInterface="com.intellij.openapi.projectRoots.JavaVersionService"
505                         serviceImplementation="com.intellij.openapi.projectRoots.JavaVersionServiceImpl"/>
506
507     <applicationService serviceInterface="com.intellij.refactoring.JavaRefactoringActionHandlerFactory"
508                         serviceImplementation="com.intellij.refactoring.openapi.impl.JavaRefactoringActionHandlerFactoryImpl"/>
509     <changeSignatureDetector language="JAVA" implementationClass="com.intellij.refactoring.changeSignature.JavaChangeSignatureDetector"/>
510
511     <applicationService serviceInterface="com.intellij.refactoring.JavaRefactoringSettings"
512                         serviceImplementation="com.intellij.refactoring.JavaRefactoringSettings"/>
513
514     <applicationService serviceInterface="com.intellij.codeInsight.generation.OverrideImplementExploreUtil$MemberImplementorExplorersProvider"
515                         serviceImplementation="com.intellij.codeInsight.generation.MemberImplementorExplorersProviderImpl"/>
516
517     <projectService serviceInterface="com.intellij.refactoring.RefactoringManager"
518                     serviceImplementation="com.intellij.refactoring.RefactoringManager"/>
519     <projectService serviceInterface="com.intellij.refactoring.listeners.JavaRefactoringListenerManager"
520                     serviceImplementation="com.intellij.refactoring.listeners.impl.JavaRefactoringListenerManagerImpl"/>
521     <projectService serviceInterface="com.intellij.refactoring.RefactoringFactory"
522                     serviceImplementation="com.intellij.refactoring.openapi.impl.JavaRefactoringFactoryImpl"/>
523
524     <applicationService serviceInterface="com.intellij.codeInsight.folding.JavaCodeFoldingSettings"
525                         serviceImplementation="com.intellij.codeInsight.folding.impl.JavaCodeFoldingSettingsImpl"/>
526     <exportable serviceInterface="com.intellij.codeInsight.folding.JavaCodeFoldingSettings"/>
527
528     <projectService serviceInterface="com.intellij.psi.impl.source.tree.injected.JavaConcatenationInjectorManager"
529                     serviceImplementation="com.intellij.psi.impl.source.tree.injected.JavaConcatenationInjectorManager"/>
530
531     <multiHostInjector implementation="com.intellij.psi.impl.source.tree.injected.JavaConcatenationInjectorManager$Concatenation2InjectorAdapter" order="first"/>
532
533     <projectService serviceInterface="com.intellij.psi.SmartTypePointerManager"
534                     serviceImplementation="com.intellij.psi.impl.smartPointers.SmartTypePointerManagerImpl"/>
535     <projectService serviceInterface="com.intellij.psi.codeStyle.JavaCodeStyleManager"
536                     serviceImplementation="com.intellij.psi.impl.source.codeStyle.JavaCodeStyleManagerImpl"/>
537     <projectService serviceInterface="com.intellij.codeInsight.ExpectedTypesProvider"
538                     serviceImplementation="com.intellij.codeInsight.ExpectedTypesProvider"/>
539
540     <projectService serviceInterface="com.intellij.psi.controlFlow.ControlFlowFactory"
541                     serviceImplementation="com.intellij.psi.controlFlow.ControlFlowFactory"/>
542
543     <applicationService serviceInterface="com.intellij.psi.CommonReferenceProviderTypes"
544                     serviceImplementation="com.intellij.psi.impl.CommonReferenceProviderTypesImpl"/>
545     <projectService serviceInterface="com.intellij.psi.impl.file.PsiDirectoryFactory"
546                     serviceImplementation="com.intellij.psi.impl.file.PsiJavaDirectoryFactory"/>
547
548     <projectService serviceInterface="com.intellij.openapi.roots.PackageIndex"
549                     serviceImplementation="com.intellij.openapi.roots.impl.ProjectPackageIndexImpl"/>
550     <moduleService serviceInterface="com.intellij.openapi.roots.ModulePackageIndex"
551                    serviceImplementation="com.intellij.openapi.roots.impl.ModulePackageIndexImpl"/>
552
553     <projectService serviceInterface="com.intellij.openapi.roots.JavaProjectModelModificationService"
554                     serviceImplementation="com.intellij.openapi.roots.impl.JavaProjectModelModificationServiceImpl"/>
555     <projectModelModifier implementation="com.intellij.openapi.roots.impl.IdeaProjectModelModifier" order="last"/>
556
557     <projectService serviceInterface="com.intellij.usages.impl.rules.DirectoryGroupingRule"
558                     serviceImplementation="com.intellij.usages.impl.rules.PackageGroupingRule"/>
559
560
561     <projectService serviceInterface="com.intellij.codeInspection.ex.EntryPointsManager"
562                     serviceImplementation="com.intellij.codeInspection.ex.EntryPointsManagerImpl"/>
563
564     <projectService serviceInterface="com.intellij.codeInsight.NullableNotNullManager"
565                     serviceImplementation="com.intellij.codeInsight.NullableNotNullManagerImpl"/>
566
567     <lang.psiTypeAnnotationModifier implementation="com.intellij.codeInsight.NullityAnnotationModifier"/>
568
569     <projectService serviceInterface="com.intellij.codeInsight.ConcurrencyAnnotationsManager"
570                     serviceImplementation="com.intellij.codeInsight.ConcurrencyAnnotationsManager"/>
571
572     <projectService serviceInterface="com.intellij.psi.search.PsiShortNamesCache"
573                     serviceImplementation="com.intellij.psi.impl.CompositeShortNamesCache"/>
574
575     <java.shortNamesCache implementation="com.intellij.psi.impl.PsiShortNamesCacheImpl"/>
576
577     <psi.treeChangePreprocessor implementation="com.intellij.psi.impl.JavaCodeBlockModificationListener"/>
578
579     <applicationService serviceInterface="com.intellij.framework.library.DownloadableLibraryService"
580                         serviceImplementation="com.intellij.framework.library.impl.DownloadableLibraryServiceImpl"/>
581
582     <projectService serviceImplementation="com.intellij.javadoc.JavadocGenerationManager"/>
583     <projectService serviceImplementation="com.intellij.codeInsight.JavaProjectCodeInsightSettings"/>
584     <applicationService serviceInterface="com.intellij.codeInsight.javadoc.JavaDocInfoGeneratorFactory"
585                         serviceImplementation="com.intellij.codeInsight.javadoc.JavaDocInfoGeneratorFactory"/>
586
587     <highlightVisitor implementation="com.intellij.codeInsight.daemon.impl.analysis.HighlightVisitorImpl"/>
588
589     <lang.foldingBuilder language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.actions.SuppressWarningsFoldingBuilder" />
590     <moduleType id="WEB_MODULE" implementationClass="com.intellij.openapi.module.WebModuleType"/>
591     <moduleConfigurationEditorProvider implementation="com.intellij.openapi.module.WebModuleConfigurationEditorProvider"/>
592
593     <externalProjectDataService implementation="com.intellij.externalSystem.JavaProjectDataService"/>
594     <inspectionElementsMerger implementation="com.intellij.codeInspection.deadCode.UnusedDeclarationInspectionMerger"/>
595
596     <globalInspection groupPath="Java" language="JAVA" shortName="unused" displayName="Unused declaration" groupBundle="messages.InspectionsBundle"
597                      groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING"
598                      implementationClass="com.intellij.codeInspection.deadCode.UnusedDeclarationInspection"
599                      presentation="com.intellij.codeInspection.deadCode.UnusedDeclarationPresentation"/>
600     <deadCode implementation="com.intellij.codeInspection.deadCode.DeprecatedEntryPoint"/>
601     <globalInspection groupPath="Java" shortName="UnusedLibrary" bundle="messages.InspectionsBundle" key="unused.library.display.name"
602                      groupKey="group.names.declaration.redundancy" enabledByDefault="false" level="WARNING"
603                      implementationClass="com.intellij.codeInspection.unusedLibraries.UnusedLibrariesInspection"/>
604     <globalInspection groupPath="Java" shortName="InconsistentLanguageLevel" displayName="Inconsistent language level settings"
605                      groupKey="group.names.modularization.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
606                      implementationClass="com.intellij.codeInspection.inconsistentLanguageLevel.InconsistentLanguageLevelInspection"/>
607     <globalInspection groupPath="Java" language="JAVA" shortName="WeakerAccess" displayName="Declaration access can be weaker" groupKey="group.names.declaration.redundancy" groupBundle="messages.InspectionsBundle"
608                       enabledByDefault="true" level="WARNING"
609                       implementationClass="com.intellij.codeInspection.visibility.VisibilityInspection"/>
610     <globalInspection groupPath="Java" language="JAVA" shortName="CanBeFinal" displayName="Declaration can have final modifier" groupKey="group.names.declaration.redundancy" groupBundle="messages.InspectionsBundle"
611                       enabledByDefault="true" level="WARNING"
612                       implementationClass="com.intellij.codeInspection.canBeFinal.CanBeFinalInspection"/>
613     <globalInspection groupPath="Java" language="JAVA" shortName="SameParameterValue" bundle="messages.InspectionsBundle" key="inspection.same.parameter.display.name"
614                       groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING"
615                       implementationClass="com.intellij.codeInspection.sameParameterValue.SameParameterValueInspection"/>
616     <globalInspection groupPath="Java" language="JAVA" shortName="UnusedReturnValue" bundle="messages.InspectionsBundle" key="inspection.unused.return.value.display.name"
617                       groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING"
618                       implementationClass="com.intellij.codeInspection.unusedReturnValue.UnusedReturnValue"/>
619     <globalInspection groupPath="Java" language="JAVA" shortName="SameReturnValue" bundle="messages.InspectionsBundle" key="inspection.same.return.value.display.name"
620                       groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING"
621                       implementationClass="com.intellij.codeInspection.sameReturnValue.SameReturnValueInspection"/>
622     <globalInspection groupPath="Java" language="JAVA" shortName="EmptyMethod" displayName="Empty method" groupKey="group.names.declaration.redundancy" enabledByDefault="true" groupBundle="messages.InspectionsBundle"
623                       level="WARNING" implementationClass="com.intellij.codeInspection.emptyMethod.EmptyMethodInspection"/>
624     <globalInspection groupPath="Java" language="JAVA" shortName="RedundantThrows" displayName="Redundant throws clause" groupKey="group.names.declaration.redundancy" groupBundle="messages.InspectionsBundle"
625                       enabledByDefault="true" level="WARNING"
626                       implementationClass="com.intellij.codeInspection.unneededThrows.RedundantThrows"/>
627     <localInspection groupPath="Java" language="JAVA" shortName="ConstantConditions" bundle="messages.InspectionsBundle" key="inspection.data.flow.display.name"
628                      groupKey="group.names.probable.bugs" enabledByDefault="true" level="WARNING"
629                      implementationClass="com.intellij.codeInspection.dataFlow.DataFlowInspection"/>
630     <localInspection groupPath="Java" language="JAVA" shortName="Contract" bundle="messages.InspectionsBundle" key="inspection.contract.display.name"
631                      groupKey="group.names.probable.bugs" enabledByDefault="true" level="WARNING"
632                      implementationClass="com.intellij.codeInspection.dataFlow.ContractInspection"/>
633     <localInspection groupPath="Java" language="JAVA" shortName="UnusedAssignment" displayName="Unused assignment" groupKey="group.names.probable.bugs" groupBundle="messages.InspectionsBundle" enabledByDefault="true"
634                      level="WARNING" implementationClass="com.intellij.codeInspection.defUse.DefUseInspection"/>
635     <localInspection groupPath="Java" language="JAVA" shortName="NumericOverflow" displayName="Numeric overflow" groupKey="group.names.numeric.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="true"
636                      level="WARNING" implementationClass="com.intellij.codeInspection.NumericOverflowInspection"/>
637     <localInspection groupPath="Java" language="JAVA" shortName="RedundantCast" displayName="Redundant type cast" groupKey="group.names.verbose.or.redundant.code.constructs" groupBundle="messages.InspectionsBundle"
638                      enabledByDefault="true" level="WARNING" cleanupTool="true"
639                      implementationClass="com.intellij.codeInspection.redundantCast.RedundantCastInspection"/>
640     <localInspection groupPath="Java" language="JAVA" shortName="RedundantTypeArguments" bundle="messages.InspectionsBundle" key="inspection.redundant.type.display.name"
641                      groupKey="group.names.verbose.or.redundant.code.constructs" enabledByDefault="true" level="WARNING"  cleanupTool="true"
642                      implementationClass="com.intellij.codeInspection.miscGenerics.RedundantTypeArgsInspection"/>
643     <localInspection groupPath="Java" language="JAVA" shortName="RedundantArrayCreation" bundle="messages.InspectionsBundle"
644                      key="inspection.redundant.array.creation.display.name" groupKey="group.names.verbose.or.redundant.code.constructs"
645                      enabledByDefault="true" level="WARNING" cleanupTool="true"
646                      implementationClass="com.intellij.codeInspection.miscGenerics.RedundantArrayForVarargsCallInspection"/>
647     <localInspection groupPath="Java" language="JAVA" shortName="SuspiciousMethodCalls" bundle="messages.InspectionsBundle"
648                      key="inspection.suspicious.collections.method.calls.display.name" groupKey="group.names.probable.bugs" enabledByDefault="true"
649                      level="WARNING"
650                      implementationClass="com.intellij.codeInspection.miscGenerics.SuspiciousCollectionsMethodCallsInspection"/>
651     <localInspection groupPath="Java" language="JAVA" shortName="RawTypeCanBeGeneric" bundle="messages.InspectionsBundle"
652                      key="inspection.raw.variable.type.can.be.generic.name" groupKey="group.names.code.style.issues"
653                      enabledByDefault="true" level="INFORMATION"
654                      implementationClass="com.intellij.codeInspection.miscGenerics.RawTypeCanBeGenericInspection"/>
655     <localInspection groupPath="Java" language="JAVA" shortName="LocalCanBeFinal" bundle="messages.InspectionsBundle" key="inspection.local.can.be.final.display.name"
656                      groupKey="group.names.code.style.issues" enabledByDefault="false" level="WARNING"
657                      implementationClass="com.intellij.codeInspection.localCanBeFinal.LocalCanBeFinal"/>
658     <localInspection groupPath="Java" language="JAVA" shortName="ReturnSeparatedFromComputation" bundle="messages.InspectionsBundle"
659                      key="inspection.return.separated.from.computation.name" groupKey="group.names.code.style.issues"
660                      enabledByDefault="true" level="INFORMATION"
661                      implementationClass="com.intellij.codeInspection.intermediaryVariable.ReturnSeparatedFromComputationInspection"/>
662
663     <localInspection groupPath="Java" language="JAVA" shortName="JavaDoc" bundle="messages.InspectionsBundle" key="inspection.javadoc.display.name"
664                      groupKey="group.names.javadoc.issues" enabledByDefault="true" level="WARNING"
665                      implementationClass="com.intellij.codeInspection.javaDoc.JavaDocLocalInspection" alternativeId="javadoc"/>
666     <localInspection groupPath="Java" language="JAVA" shortName="JavadocReference" bundle="messages.InspectionsBundle" key="inspection.javadoc.ref.display.name"
667                      groupKey="group.names.javadoc.issues" enabledByDefault="true" level="ERROR"
668                      implementationClass="com.intellij.codeInspection.javaDoc.JavaDocReferenceInspection"/>
669     <localInspection groupPath="Java" language="JAVA" shortName="JavadocHtmlLint" bundle="messages.InspectionsBundle" key="inspection.javadoc.lint.display.name"
670                      groupKey="group.names.javadoc.issues" enabledByDefault="false" level="ERROR" unfair="true"
671                      implementationClass="com.intellij.codeInspection.javaDoc.JavadocHtmlLintInspection"/>
672     <externalAnnotator language="JAVA" implementationClass="com.intellij.codeInspection.javaDoc.JavadocHtmlLintAnnotator"/>
673
674     <localInspection groupPath="Java" language="JAVA" suppressId="deprecation" shortName="Deprecation" displayName="Deprecated API usage" groupKey="group.names.code.maturity.issues" groupBundle="messages.InspectionsBundle"
675                      enabledByDefault="true" level="WARNING"
676                      implementationClass="com.intellij.codeInspection.deprecation.DeprecationInspection"/>
677     <localInspection groupPath="Java" language="JAVA" shortName="DeprecatedIsStillUsed" displayName="Deprecated member is still used"
678                      groupKey="group.names.code.maturity.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
679                      implementationClass="com.intellij.codeInspection.DeprecatedIsStillUsedInspection" />
680     <localInspection language="XML" shortName="DeprecatedClassUsageInspection" displayName="Deprecated API usage in XML" groupKey="group.names.xml" groupBundle="messages.InspectionsBundle"
681                      enabledByDefault="true" level="WARNING" implementationClass="com.intellij.codeInspection.xml.DeprecatedClassUsageInspection"/>
682     <localInspection groupPath="Java" language="JAVA" shortName="EqualsAndHashcode" bundle="messages.InspectionsBundle" key="inspection.equals.hashcode.display.name"
683                      groupKey="group.names.probable.bugs" enabledByDefault="false" level="WARNING"
684                      implementationClass="com.intellij.codeInspection.equalsAndHashcode.EqualsAndHashcode"/>
685     <localInspection groupPath="Java" language="JAVA" shortName="Since15" bundle="messages.InspectionsBundle" key="inspection.1.5.display.name"
686                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="ERROR"
687                      implementationClass="com.intellij.codeInspection.java15api.Java15APIUsageInspection"/>
688     <localInspection groupPath="Java" language="JAVA" shortName="Dependency" displayName="Illegal package dependencies" groupKey="group.names.dependency.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="ERROR"
689                      implementationClass="com.intellij.codeInspection.dependencyViolation.DependencyInspection"/>
690     <localInspection groupPath="Java" language="JAVA" shortName="FieldCanBeLocal" bundle="messages.InspectionsBundle" key="inspection.field.can.be.local.display.name"
691                      groupKey="group.names.class.structure" enabledByDefault="true" level="WARNING" runForWholeFile="true"
692                      implementationClass="com.intellij.codeInspection.varScopeCanBeNarrowed.FieldCanBeLocalInspection"/>
693     <localInspection groupPath="Java" language="JAVA" shortName="ParameterCanBeLocal" key="inspection.parameter.can.be.local.display.name"
694                      groupKey="group.names.class.structure" enabledByDefault="true" level="WARNING" bundle="messages.InspectionsBundle"
695                      implementationClass="com.intellij.codeInspection.varScopeCanBeNarrowed.ParameterCanBeLocalInspection" />
696     <localInspection groupPath="Java" language="JAVA" shortName="NullableProblems" bundle="messages.InspectionsBundle" key="inspection.nullable.problems.display.name"
697                      groupKey="group.names.probable.bugs" enabledByDefault="true" level="WARNING"
698                      implementationClass="com.intellij.codeInspection.nullable.NullableStuffInspection" />
699     <localInspection groupPath="Java" language="JAVA" shortName="TestOnlyProblems" bundle="messages.InspectionsBundle" key="inspection.test.only.problems.display.name"
700                      groupKey="inspection.general.tools.group.name" enabledByDefault="false" level="WARNING"
701                      implementationClass="com.intellij.codeInspection.testOnly.TestOnlyInspection" />
702     <localInspection groupPath="Java" language="JAVA" shortName="WrongPackageStatement" bundle="messages.InspectionsBundle" key="wrong.package.statement" groupKey="group.names.probable.bugs"
703                      enabledByDefault="true" level="ERROR"
704                      implementationClass="com.intellij.codeInspection.wrongPackageStatement.WrongPackageStatementInspection" />
705     <localInspection groupPath="Java" language="JAVA" shortName="SillyAssignment" bundle="messages.InspectionsBundle" key="inspection.variable.assigned.to.itself.display.name" groupKey="group.names.declaration.redundancy"
706                      enabledByDefault="true" level="WARNING"
707                      implementationClass="com.intellij.codeInspection.sillyAssignment.SillyAssignmentInspection" />
708     <localInspection groupPath="Java" language="JAVA" shortName="DefaultAnnotationParam" bundle="messages.InspectionsBundle" key="inspection.default.annotation.param" groupKey="group.names.declaration.redundancy"
709                      enabledByDefault="true" level="WARNING"
710                      implementationClass="com.intellij.codeInspection.DefaultAnnotationParamInspection" />
711     <localInspection groupPath="Java" language="JAVA" shortName="RedundantThrowsDeclaration" bundle="messages.InspectionsBundle" key="redundant.throws.declaration"
712                      groupKey="group.names.declaration.redundancy" enabledByDefault="false" level="WARNING" cleanupTool="true"
713                      implementationClass="com.intellij.codeInspection.unneededThrows.RedundantThrowsDeclaration" />
714     <localInspection groupPath="Java" language="JAVA" shortName="AccessStaticViaInstance" bundle="messages.InspectionsBundle" key="access.static.via.instance" groupKey="group.names.declaration.redundancy"
715                      enabledByDefault="true" level="WARNING" cleanupTool="true" alternativeId="static-access"
716                      implementationClass="com.intellij.codeInspection.accessStaticViaInstance.AccessStaticViaInstance" />
717     <localInspection shortName="DefaultFileTemplate" bundle="messages.InspectionsBundle" key="default.file.template.display.name"
718                      groupKey="inspection.general.tools.group.name" enabledByDefault="true" level="WARNING"
719                      implementationClass="com.intellij.codeInspection.defaultFileTemplateUsage.DefaultFileTemplateUsageInspection"/>
720     <globalInspection groupPath="Java" shortName="UnnecessaryModuleDependencyInspection" bundle="messages.InspectionsBundle"
721                       key="unnecessary.module.dependency.display.name" groupKey="group.names.declaration.redundancy" enabledByDefault="true"
722                       level="WARNING"
723                       implementationClass="com.intellij.codeInspection.unnecessaryModuleDependency.UnnecessaryModuleDependencyInspection"/>
724     <globalInspection shortName="RedundantSuppression" bundle="messages.InspectionsBundle" key="inspection.redundant.suppression.name"
725                       groupKey="inspection.general.tools.group.name" enabledByDefault="false" level="WARNING"
726                       implementationClass="com.intellij.codeInspection.RedundantSuppressInspection"/>
727
728     <localInspection groupPath="Java" language="JAVA" shortName="UNUSED_IMPORT" displayName="Unused import (editor light)" groupKey="group.names.imports" groupBundle="messages.InspectionsBundle" enabledByDefault="true"
729                      level="WARNING" implementationClass="com.intellij.codeInspection.unusedImport.UnusedImportLocalInspection" unfair="true"/>
730
731     <localInspection groupPath="Java" language="JAVA" suppressId="unchecked" shortName="UNCHECKED_WARNING" displayName="Unchecked warning" groupKey="group.names.compiler.issues" groupBundle="messages.InspectionsBundle"
732                      enabledByDefault="true" level="WARNING"
733                      implementationClass="com.intellij.codeInspection.uncheckedWarnings.UncheckedWarningLocalInspection" />
734     <localInspection groupPath="Java" language="JAVA" shortName="SuspiciousNameCombination" bundle="messages.InspectionsBundle"
735                      key="suspicious.name.combination.display.name" groupKey="group.names.probable.bugs" enabledByDefault="true" level="WARNING"
736                      implementationClass="com.intellij.codeInspection.suspiciousNameCombination.SuspiciousNameCombinationInspection" />
737     <localInspection groupPath="Java" language="JAVA" shortName="DuplicateThrows" bundle="messages.InspectionsBundle" key="inspection.duplicate.throws.display.name"
738                      groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING" cleanupTool="true"
739                      implementationClass="com.intellij.codeInspection.duplicateThrows.DuplicateThrowsInspection" />
740     <localInspection groupPath="Java" language="JAVA" shortName="FieldAccessNotGuarded" displayName="Unguarded field access" groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle"
741                      enabledByDefault="false" level="WARNING"
742                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.FieldAccessNotGuardedInspection" />
743     <localInspection groupPath="Java" language="JAVA" shortName="InstanceGuardedByStatic" displayName="Instance member guarded by static field"
744                      groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
745                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.InstanceGuardedByStaticInspection" />
746     <localInspection groupPath="Java" language="JAVA" shortName="NonFinalFieldInImmutable" displayName="Non-final field in @Immutable class"
747                      groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
748                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.NonFinalFieldInImmutableInspection" />
749     <localInspection groupPath="Java" language="JAVA" shortName="NonFinalGuard" displayName="Non-final @GuardedBy field" groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle"
750                      enabledByDefault="false" level="WARNING"
751                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.NonFinalGuardInspection" />
752     <localInspection groupPath="Java" language="JAVA" shortName="StaticGuardedByInstance" displayName="Static member guarded by instance field or this"
753                      groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
754                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.StaticGuardedByInstanceInspection" />
755     <localInspection groupPath="Java" language="JAVA" shortName="UnknownGuard" displayName="Unknown @GuardedBy field" groupKey="group.names.concurrency.annotation.issues" groupBundle="messages.InspectionsBundle"
756                      enabledByDefault="false" level="WARNING"
757                      implementationClass="com.intellij.codeInspection.concurrencyAnnotations.UnknownGuardInspection" />
758     <localInspection groupPath="Java" language="JAVA" shortName="Convert2Diamond" displayName="Explicit type can be replaced with &lt;&gt;"
759                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
760                      implementationClass="com.intellij.codeInspection.ExplicitTypeCanBeDiamondInspection" />
761     <localInspection groupPath="Java" language="JAVA" shortName="Convert2Lambda" displayName="Anonymous type can be replaced with lambda"
762                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
763                      implementationClass="com.intellij.codeInspection.AnonymousCanBeLambdaInspection" />
764     <localInspection groupPath="Java" language="JAVA" shortName="Convert2streamapi" displayName="foreach loop can be collapsed with Stream API"
765                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="INFORMATION"
766                      implementationClass="com.intellij.codeInspection.streamMigration.StreamApiMigrationInspection"/>
767     <localInspection groupPath="Java" language="JAVA" shortName="Anonymous2MethodRef" displayName="Anonymous type can be replaced with method reference"
768                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
769                      implementationClass="com.intellij.codeInspection.AnonymousCanBeMethodReferenceInspection" />
770     <localInspection groupPath="Java" language="JAVA" shortName="Convert2MethodRef" displayName="Lambda can be replaced with method reference"
771                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
772                      implementationClass="com.intellij.codeInspection.LambdaCanBeMethodReferenceInspection" />
773     <localInspection groupPath="Java" language="JAVA" shortName="InvalidComparatorMethodReference" displayName="Invalid method reference used for Comparator"
774                      groupKey="group.names.probable.bugs" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
775                      implementationClass="com.intellij.codeInspection.InvalidComparatorMethodReferenceInspection"/>
776     <localInspection groupPath="Java" language="JAVA" shortName="TrivialMethodReference" displayName="Method reference can be replaced with its qualifier"
777                      groupKey="group.names.declaration.redundancy" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
778                      implementationClass="com.intellij.codeInspection.TrivialMethodReferenceInspection"/>
779     <localInspection groupPath="Java" language="JAVA" shortName="TrivialFunctionalExpressionUsage" displayName="Trivial usage of functional expression"
780                      groupKey="group.names.declaration.redundancy" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
781                      implementationClass="com.intellij.codeInspection.TrivialFunctionalExpressionUsageInspection"/>
782     <localInspection groupPath="Java" language="JAVA" shortName="CodeBlock2Expr" displayName="Statement lambda can be replaced with expression lambda"
783                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
784                      implementationClass="com.intellij.codeInspection.RedundantLambdaCodeBlockInspection" />
785     <localInspection groupPath="Java" language="JAVA" suppressId="unchecked" shortName="SafeVarargsDetector"
786                      displayName="Possible heap pollution from parameterized vararg type" groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle"
787                      enabledByDefault="true" level="WARNING"
788                      implementationClass="com.intellij.codeInspection.PossibleHeapPollutionVarargsInspection" />
789     <localInspection groupPath="Java" language="JAVA" shortName="JavacQuirks" bundle="messages.InspectionsBundle" key="inspection.compiler.javac.quirks.name"
790                      groupKey="group.names.compiler.issues" enabledByDefault="true" level="WARNING"
791                      implementationClass="com.intellij.codeInspection.compiler.JavacQuirksInspection" />
792     <localInspection groupPath="Java" language="JAVA" shortName="MagicConstant" displayName="Magic Constant"
793                      groupKey="group.names.probable.bugs" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
794                      implementationClass="com.intellij.codeInspection.magicConstant.MagicConstantInspection" />
795     <localInspection groupPath="Java" language="JAVA" shortName="SuperClassHasFrequentlyUsedInheritors"
796                      groupBundle="messages.InspectionsBundle"
797                      groupKey="group.names.inheritance.issues" enabledByDefault="false" level="WARNING"
798                      implementationClass="com.intellij.codeInspection.inheritance.SuperClassHasFrequentlyUsedInheritorsInspection"
799                      displayName="Class may extend a commonly used base class instead of implementing interface"/>
800     <localInspection groupPath="Java" language="JAVA" shortName="BlockMarkerComments"
801                      groupBundle="messages.InspectionsBundle"
802                      groupKey="group.names.code.style.issues" enabledByDefault="false" level="WARNING"
803                      implementationClass="com.intellij.codeInspection.BlockMarkerCommentsInspection"
804                      displayName="Block marker comment"/>
805     <localInspection groupPath="Java" language="JAVA" shortName="StaticPseudoFunctionalStyleMethod"
806                      groupBundle="messages.InspectionsBundle"
807                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
808                      implementationClass="com.intellij.codeInspection.java18StreamApi.StaticPseudoFunctionalStyleMethodInspection"
809                      displayName="Pseudo functional expression using static class"/>
810     <localInspection groupPath="Java" language="JAVA" shortName="StringTokenizerDelimiter"
811                      groupBundle="messages.InspectionsBundle"
812                      groupKey="group.names.probable.bugs" enabledByDefault="true" level="WARNING"
813                      implementationClass="com.intellij.codeInspection.StringTokenizerDelimiterInspection"
814                      displayName="Duplicated delimiters in java.util.StringTokenizer"/>
815     <localInspection groupPath="Java" language="JAVA" shortName="CollectionAddAllCanBeReplacedWithConstructor"
816                      groupBundle="messages.InspectionsBundle"
817                      groupKey="group.names.performance.issues" enabledByDefault="false" level="WARNING"
818                      implementationClass="com.intellij.codeInspection.CollectionAddAllCanBeReplacedWithConstructorInspection"
819                      displayName="Collection.addAll() can be replaced with parametrized constructor"/>
820     <localInspection groupPath="Java" language="JAVA" shortName="AnonymousHasLambdaAlternative" displayName="Anonymous type can be replaced with lambda using factory method or special constructor"
821                      groupKey="group.names.language.level.specific.issues.and.migration.aids" groupBundle="messages.InspectionsBundle" enabledByDefault="true" level="WARNING"
822                      implementationClass="com.intellij.codeInspection.AnonymousHasLambdaAlternativeInspection" />
823     <localInspection groupPath="Java" language="JAVA" shortName="Java8CollectionsApi"
824                      groupBundle="messages.InspectionsBundle"
825                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
826                      implementationClass="com.intellij.codeInspection.java18api.Java8CollectionsApiInspection"
827                      displayName="Map.putIfAbsent() can be used"/>
828     <localInspection groupPath="Java" language="JAVA" shortName="Java8ListSort"
829                      groupBundle="messages.InspectionsBundle"
830                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
831                      implementationClass="com.intellij.codeInspection.java18api.Java8ListSortInspection"
832                      displayName="Collections.sort() can be replaced with List.sort()"/>
833     <localInspection groupPath="Java" language="JAVA" shortName="Java8CollectionRemoveIf"
834                      groupBundle="messages.InspectionsBundle"
835                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
836                      implementationClass="com.intellij.codeInspection.java18api.Java8CollectionRemoveIfInspection"
837                      displayName="Loop can be replaced with Collection.removeIf()"/>
838     <localInspection groupPath="Java" language="JAVA" shortName="Java8ReplaceMapGet"
839                      groupBundle="messages.InspectionsBundle"
840                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
841                      implementationClass="com.intellij.codeInspection.java18api.Java8ReplaceMapGetInspection"
842                      displayName="Simplifiable conditional usage of Map.get()"/>
843     <localInspection groupPath="Java" language="JAVA" shortName="SimplifyStreamApiCallChains"
844                      groupBundle="messages.InspectionsBundle"
845                      groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="WARNING"
846                      implementationClass="com.intellij.codeInspection.SimplifyStreamApiCallChainsInspection"
847                      displayName="Simplify stream API call chains"/>
848     <localInspection groupPath="Java" language="JAVA" shortName="ComparatorCombinators"
849                      groupBundle="messages.InspectionsBundle"
850                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
851                      implementationClass="com.intellij.codeInspection.ComparatorCombinatorsInspection"
852                      displayName="Use Comparator combinators"/>
853     <localInspection groupPath="Java" language="JAVA" shortName="ReplaceInefficientStreamCount"
854                      groupBundle="messages.InspectionsBundle"
855                      groupKey="group.names.performance.issues" enabledByDefault="true" level="WARNING"
856                      implementationClass="com.intellij.codeInspection.ReplaceInefficientStreamCountInspection"
857                      displayName="Replace inefficient Stream API call chains ending with count()"/>
858     <localInspection groupPath="Java" language="JAVA" shortName="RedundantLambdaParameterType"
859                      groupBundle="messages.InspectionsBundle"
860                      groupKey="group.names.declaration.redundancy" enabledByDefault="true" level="INFORMATION"
861                      implementationClass="com.intellij.codeInspection.lambda.RedundantLambdaParameterTypeInspection"
862                      displayName="Remove redundant lambda parameter types"/>
863     <localInspection groupPath="Java" language="JAVA" shortName="OptionalIsPresent"
864                      groupBundle="messages.InspectionsBundle"
865                      groupKey="group.names.language.level.specific.issues.and.migration.aids" enabledByDefault="true" level="WARNING"
866                      implementationClass="com.intellij.codeInspection.OptionalIsPresentInspection"
867                      displayName="Replace Optional.isPresent() checks with functional-style expressions"/>
868
869     <intentionAction>
870       <className>com.intellij.codeInsight.intention.impl.SplitIfAction</className>
871       <category>Java/Control Flow</category>
872     </intentionAction>
873     <intentionAction>
874       <className>com.intellij.codeInsight.intention.impl.SplitFilterAction</className>
875       <category>Java/Streams</category>
876     </intentionAction>
877     <intentionAction>
878       <className>com.intellij.codeInsight.intention.impl.MergeFilterChainAction</className>
879       <category>Java/Streams</category>
880     </intentionAction>
881     <intentionAction>
882       <className>com.intellij.codeInsight.intention.impl.InvertIfConditionAction</className>
883       <category>Java/Control Flow</category>
884     </intentionAction>
885     <intentionAction>
886       <className>com.intellij.codeInsight.intention.impl.ExtractIfConditionAction</className>
887       <category>Java/Control Flow</category>
888     </intentionAction>
889     <intentionAction>
890       <className>com.intellij.codeInsight.daemon.impl.quickfix.RemoveRedundantElseAction</className>
891       <category>Java/Control Flow</category>
892     </intentionAction>
893     <intentionAction>
894       <className>com.intellij.codeInsight.intention.impl.AddNotNullAnnotationIntention</className>
895       <category>Java/Annotations</category>
896       <descriptionDirectoryName>AddAnnotationFix</descriptionDirectoryName>
897     </intentionAction>
898     <intentionAction>
899       <className>com.intellij.codeInsight.intention.impl.AddDeprecationAnnotationIntention</className>
900       <category>Java/Annotations</category>
901       <descriptionDirectoryName>AddAnnotationFix</descriptionDirectoryName>
902     </intentionAction>
903     <intentionAction>
904       <className>com.intellij.codeInsight.intention.impl.AddNullableAnnotationIntention</className>
905       <category>Java/Annotations</category>
906       <descriptionDirectoryName>AddAnnotationFix</descriptionDirectoryName>
907     </intentionAction>
908     <intentionAction>
909       <className>com.intellij.codeInspection.dataFlow.EditContractIntention</className>
910       <category>Java/Annotations</category>
911       <descriptionDirectoryName>EditContractIntention</descriptionDirectoryName>
912     </intentionAction>
913     <intentionAction>
914       <className>com.intellij.codeInsight.MakeInferredAnnotationExplicit</className>
915       <category>Java/Annotations</category>
916       <descriptionDirectoryName>MakeInferredAnnotationExplicit</descriptionDirectoryName>
917     </intentionAction>
918     <intentionAction>
919       <className>com.intellij.codeInsight.ToggleSourceInferredAnnotations</className>
920       <category>Java/Annotations</category>
921       <descriptionDirectoryName>ToggleSourceInferredAnnotations</descriptionDirectoryName>
922     </intentionAction>
923     <intentionAction>
924       <className>com.intellij.codeInsight.daemon.impl.quickfix.IterateOverIterableIntention</className>
925       <category>Java/Control Flow</category>
926     </intentionAction>
927     <intentionAction>
928       <className>com.intellij.codeInsight.intention.impl.DeannotateIntentionAction</className>
929       <category>Java/Annotations</category>
930     </intentionAction>
931     <intentionAction>
932       <className>com.intellij.codeInsight.intention.impl.CreateSwitchIntention</className>
933       <category>Java/Control Flow</category>
934     </intentionAction>
935     <intentionAction>
936       <className>com.intellij.codeInsight.intention.impl.SwapIfStatementsIntentionAction</className>
937       <category>Java/Control Flow</category>
938     </intentionAction>
939     <intentionAction>
940       <className>com.intellij.codeInsight.intention.impl.ConvertCompareToToEqualsIntention</className>
941       <category>Java/Control Flow</category>
942     </intentionAction>
943
944     <intentionAction>
945       <className>com.intellij.codeInsight.intention.impl.CreateFieldFromParameterAction</className>
946       <category>Java/Declaration</category>
947     </intentionAction>
948     <intentionAction>
949       <className>com.intellij.codeInsight.intention.impl.AssignFieldFromParameterAction</className>
950       <category>Java/Declaration</category>
951     </intentionAction>
952     <intentionAction>
953       <className>com.intellij.codeInsight.intention.impl.BindFieldsFromParametersAction</className>
954       <category>Java/Declaration</category>
955     </intentionAction>
956     <intentionAction>
957       <className>com.intellij.codeInsight.daemon.impl.quickfix.CreateLocalVarFromInstanceofAction</className>
958       <category>Java/Declaration</category>
959     </intentionAction>
960     <intentionAction>
961       <className>com.intellij.codeInsight.daemon.impl.quickfix.CreateCastExpressionFromInstanceofAction</className>
962       <category>Java/Declaration</category>
963     </intentionAction>
964     <intentionAction>
965       <className>com.intellij.testIntegration.createTest.CreateTestAction</className>
966       <category>Java/Declaration</category>
967     </intentionAction>
968     <intentionAction>
969       <className>com.intellij.testIntegration.createTest.GenerateMissedTestsAction</className>
970       <category>Java/Declaration</category>
971     </intentionAction>
972     <intentionAction>
973       <className>com.intellij.codeInsight.intention.impl.CreateSubclassAction</className>
974       <category>Java/Declaration</category>
975     </intentionAction>
976     <intentionAction>
977       <className>com.intellij.codeInsight.intention.impl.ImplementAbstractMethodAction</className>
978       <category>Java/Declaration</category>
979     </intentionAction>
980     <intentionAction>
981       <className>com.intellij.codeInsight.intention.impl.CopyAbstractMethodImplementationAction</className>
982       <category>Java/Declaration</category>
983     </intentionAction>
984     <intentionAction>
985       <className>com.intellij.codeInsight.intention.impl.SplitDeclarationAction</className>
986       <category>Java/Declaration</category>
987     </intentionAction>
988     <intentionAction>
989       <className>com.intellij.codeInsight.intention.impl.JoinDeclarationAndAssignmentAction</className>
990       <category>Java/Declaration</category>
991     </intentionAction>
992     <intentionAction>
993       <className>com.intellij.codeInsight.intention.impl.PushConditionInCallAction</className>
994       <category>Java/Declaration</category>
995     </intentionAction>
996     <intentionAction>
997       <className>com.intellij.codeInsight.intention.impl.MoveInitializerToConstructorAction</className>
998       <category>Java/Declaration</category>
999     </intentionAction>
1000     <intentionAction>
1001       <className>com.intellij.testIntegration.intention.MoveInitializerToSetUpMethodAction</className>
1002       <category>Java/Declaration</category>
1003     </intentionAction>
1004     <intentionAction>
1005       <className>com.intellij.codeInsight.intention.impl.MoveFieldAssignmentToInitializerAction</className>
1006       <category>Java/Declaration</category>
1007     </intentionAction>
1008     <intentionAction>
1009       <className>com.intellij.codeInsight.daemon.impl.quickfix.AddRuntimeExceptionToThrowsAction</className>
1010       <category>Java/Declaration</category>
1011     </intentionAction>
1012     <intentionAction>
1013       <className>com.intellij.codeInsight.daemon.impl.quickfix.DefineParamsDefaultValueAction</className>
1014       <category>Java/Declaration</category>
1015     </intentionAction>
1016
1017     <intentionAction>
1018       <className>com.intellij.codeInsight.intention.impl.IntroduceVariableIntentionAction</className>
1019       <category>Java/Refactorings</category>
1020     </intentionAction>
1021     <intentionAction>
1022       <className>com.intellij.codeInsight.intention.impl.EncapsulateFieldAction</className>
1023       <category>Java/Refactorings</category>
1024     </intentionAction>
1025
1026     <intentionAction>
1027       <className>com.intellij.codeInsight.intention.impl.SimplifyBooleanExpressionAction</className>
1028       <category>Java/Boolean</category>
1029     </intentionAction>
1030
1031     <intentionAction>
1032       <className>com.intellij.codeInsight.intention.impl.ConcatenationToMessageFormatAction</className>
1033       <category>Java/I18N</category>
1034     </intentionAction>
1035
1036     <intentionAction>
1037       <className>com.intellij.codeInsight.intention.impl.ConvertToBasicLatinAction</className>
1038       <category>Java/I18N</category>
1039     </intentionAction>
1040
1041     <intentionAction>
1042       <className>com.intellij.codeInsight.intention.impl.AddOnDemandStaticImportAction</className>
1043       <category>Java/Imports</category>
1044     </intentionAction>
1045     <intentionAction>
1046       <className>com.intellij.codeInsight.intention.impl.AddSingleMemberStaticImportAction</className>
1047       <category>Java/Imports</category>
1048     </intentionAction>
1049     <intentionAction>
1050       <className>com.intellij.codeInsight.intention.impl.ExpandStaticImportAction</className>
1051       <category>Java/Imports</category>
1052     </intentionAction>
1053
1054     <intentionAction>
1055       <className>com.intellij.codeInspection.actions.UnimplementInterfaceAction</className>
1056       <category>Java/Declaration</category>
1057     </intentionAction>
1058
1059     <intentionAction>
1060       <className>com.intellij.codeInspection.actions.ReplaceImplementsWithStaticImportAction</className>
1061       <category>Java/Declaration</category>
1062     </intentionAction>
1063
1064     <intentionAction>
1065       <className>com.intellij.codeInsight.intention.impl.ConvertColorRepresentationIntentionAction</className>
1066       <category>Java/Declaration</category>
1067     </intentionAction>
1068
1069     <intentionAction>
1070       <className>com.intellij.codeInsight.intention.impl.AddJavadocIntention</className>
1071       <category>Java/Declaration</category>
1072     </intentionAction>
1073
1074     <intentionAction>
1075       <className>com.intellij.codeInsight.intention.impl.ConvertAbsolutePathToRelativeIntentionAction</className>
1076       <category>Other</category>
1077     </intentionAction>
1078
1079     <intentionAction>
1080       <className>com.intellij.codeInsight.intention.impl.ConvertRelativePathToAbsoluteIntentionAction</className>
1081       <category>Other</category>
1082     </intentionAction>
1083
1084     <intentionAction>
1085       <className>com.intellij.codeInsight.intention.impl.ReplaceCastWithVariableAction</className>
1086       <category>Java/Imports</category>
1087     </intentionAction>
1088
1089     <intentionAction>
1090       <className>com.intellij.codeInsight.intention.impl.BreakStringOnLineBreaksIntentionAction</className>
1091       <category>Java/Strings</category>
1092     </intentionAction>
1093
1094     <intentionAction>
1095       <className>com.intellij.codeInsight.intention.impl.RemoveLiteralUnderscoresAction</className>
1096       <category>Java/Numbers</category>
1097     </intentionAction>
1098     <intentionAction>
1099       <className>com.intellij.codeInsight.intention.impl.InsertLiteralUnderscoresAction</className>
1100       <category>Java/Numbers</category>
1101     </intentionAction>
1102
1103     <intentionAction>
1104       <className>com.intellij.codeInsight.daemon.impl.quickfix.ConvertToStringLiteralAction</className>
1105       <category>Java/Strings</category>
1106     </intentionAction>
1107
1108     <intentionAction>
1109       <className>com.intellij.codeInsight.intention.impl.SurroundAutoCloseableAction</className>
1110       <category>Java/Try Statements</category>
1111     </intentionAction>
1112
1113     <lang.parserDefinition language="JAVA" implementationClass="com.intellij.lang.java.JavaParserDefinition"/>
1114
1115     <lang.refactoringSupport language="JAVA" implementationClass="com.intellij.lang.java.JavaRefactoringSupportProvider"/>
1116     <lang.refactoringSupport.classMembersRefactoringSupport language="JAVA" implementationClass="com.intellij.lang.java.JavaClassMembersRefactoringSupport"/>
1117
1118     <encapsulateFields.Helper implementationClass="com.intellij.refactoring.encapsulateFields.JavaEncapsulateFieldHelper" language="JAVA"/>
1119
1120     <lang.formatter language="JAVA" implementationClass="com.intellij.lang.java.JavaFormattingModelBuilder"/>
1121     <lang.whiteSpaceFormattingStrategy language="JAVA"
1122                                        implementationClass="com.intellij.psi.formatter.JavadocWhiteSpaceFormattingStrategy"/>
1123     <lang.rearranger language="JAVA" implementationClass="com.intellij.psi.codeStyle.arrangement.JavaRearranger"/>
1124     <lang.formatting.extractor language="JAVA" implementationClass="com.intellij.psi.codeStyle.extractor.differ.JavaExtractor"/>
1125
1126     <lang.documentationProvider language="JAVA" implementationClass="com.intellij.lang.java.JavaDocumentationProvider"/>
1127     <documentationProvider implementation="com.intellij.lang.java.FileDocumentationProvider" order="last"/>
1128     <lang.documentationFixer language="JAVA" implementationClass="com.intellij.codeInsight.documentation.JavaDocCommentFixer"/>
1129
1130     <lang.importOptimizer language="JAVA" implementationClass="com.intellij.lang.java.JavaImportOptimizer"/>
1131
1132     <lang.psiElementExternalizer language="JAVA" implementationClass="com.intellij.lang.java.JavaPsiElementExternalizer"/>
1133
1134     <lang.surroundDescriptor language="JAVA"
1135                              implementationClass="com.intellij.codeInsight.generation.surroundWith.JavaExpressionSurroundDescriptor"/>
1136     <lang.surroundDescriptor language="JAVA"
1137                              implementationClass="com.intellij.codeInsight.generation.surroundWith.JavaStatementsSurroundDescriptor"/>
1138     <lang.surroundDescriptor language="JAVA"
1139                              implementationClass="com.intellij.codeInsight.intention.impl.SurroundAutoCloseableAction$Template"/>
1140     <codeInsight.surroundWithRangeAdjuster
1141         implementation="com.intellij.codeInsight.generation.surroundWith.JavaSurroundWithStatementRangeAdjuster"/>
1142
1143     <lang.unwrapDescriptor language="JAVA" implementationClass="com.intellij.codeInsight.unwrap.JavaUnwrapDescriptor"/>
1144
1145     <lang.namesValidator language="JAVA" implementationClass="com.intellij.lang.refactoring.JavaNamesValidator"/>
1146
1147     <lang.findUsagesProvider language="JAVA" implementationClass="com.intellij.lang.java.JavaFindUsagesProvider"/>
1148     <usageToPsiElementProvider implementation="com.intellij.lang.java.JavaUsageToPsiElementProvider" />
1149     <anonymousElementProvider implementation="com.intellij.lang.java.JavaAnonymousClassesProvider" />
1150
1151     <lang.commenter language="JAVA" implementationClass="com.intellij.lang.java.JavaCommenter"/>
1152
1153     <lang.braceMatcher language="JAVA" implementationClass="com.intellij.codeInsight.highlighting.JavaPairedBraceMatcher"/>
1154
1155     <lang.foldingBuilder language="JAVA" implementationClass="com.intellij.codeInsight.folding.impl.JavaFoldingBuilder"/>
1156
1157     <parameterHintsProvider language="JAVA" implementationClass="com.intellij.codeInsight.hints.JavaInlayParameterHintsProvider"/>
1158     <codeInsight.parameterInfo language="JAVA" implementationClass="com.intellij.codeInsight.hint.api.impls.MethodParameterInfoHandler"/>
1159     <codeInsight.parameterInfo language="JAVA" implementationClass="com.intellij.codeInsight.hint.api.impls.ReferenceParameterInfoHandler"/>
1160     <codeInsight.parameterInfo language="JAVA"
1161                                implementationClass="com.intellij.codeInsight.hint.api.impls.AnnotationParameterInfoHandler"/>
1162     <codeInsight.typeInfo language="JAVA" implementationClass="com.intellij.codeInsight.hint.JavaTypeProvider"/>
1163
1164     <codeInsight.overrideMethod language="JAVA" implementationClass="com.intellij.codeInsight.generation.JavaOverrideMethodsHandler"/>
1165     <codeInsight.implementMethod language="JAVA" implementationClass="com.intellij.codeInsight.generation.JavaImplementMethodsHandler"/>
1166     <codeInsight.delegateMethods language="JAVA" implementationClass="com.intellij.codeInsight.generation.GenerateDelegateHandler"/>
1167     <codeInsight.gotoSuper language="JAVA" implementationClass="com.intellij.codeInsight.navigation.JavaGotoSuperHandler"/>
1168     <codeInsight.gotoSuper language="SPI" implementationClass="com.intellij.spi.SPIGotoSuperHandler"/>
1169     <codeInsight.lineMarkerProvider language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.JavaLineMarkerProvider"/>
1170     <codeInsight.linkHandler prefix="#javaClass/" handlerClass="com.intellij.codeInsight.daemon.impl.JavaClassTooltipLinkHandler"/>
1171     <codeInsight.lineMarkerProvider language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.RecursiveCallLineMarkerProvider"/>
1172     <colorProvider implementation="com.intellij.codeInsight.daemon.impl.JavaColorProvider" />
1173     <regExpModifierProvider language="JAVA" implementationClass="com.intellij.codeInsight.JavaRegExpModifierProvider" />
1174
1175     <codeInsight.lineMarkerProvider language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.IconLineMarkerProvider"/>
1176     <projectService serviceImplementation="com.intellij.psi.util.ProjectIconsAccessor"/>
1177
1178     <annotator language="JAVA" implementationClass="com.intellij.codeInsight.daemon.impl.JavaDocAnnotator"/>
1179     <statementUpDownMover implementation="com.intellij.codeInsight.editorActions.moveUpDown.StatementMover" id="statement"
1180                           order="before declaration"/>
1181     <statementUpDownMover implementation="com.intellij.codeInsight.editorActions.moveUpDown.DeclarationMover" id="declaration"
1182                           order="before xml"/>
1183     <statementUpDownMover implementation="com.intellij.codeInsight.editorActions.moveUpDown.CaseBlockMover" id="caseBlock"
1184                           order="before statement"/>
1185     <moveLeftRightHandler language="JAVA" implementationClass="com.intellij.codeInsight.editorActions.moveLeftRight.JavaMoveLeftRightHandler"/>
1186     <flipCommaIntention.flipper language="JAVA" implementationClass="com.intellij.codeInsight.intention.impl.JavaFlipper"/>
1187
1188     <fileType.fileViewProviderFactory filetype="CLASS" implementationClass="com.intellij.psi.ClassFileViewProviderFactory"/>
1189
1190     <editorFileSwapper implementation="com.intellij.codeEditor.JavaEditorFileSwapper"/>
1191
1192     <lang.psiStructureViewFactory language="JAVA" implementationClass="com.intellij.lang.java.JavaStructureViewBuilderFactory"/>
1193     <breadcrumbsInfoProvider implementation="com.intellij.lang.java.JavaBreadcrumbsInfoProvider"/>
1194
1195     <lang.ast.factory language="JAVA" implementationClass="com.intellij.psi.impl.source.tree.JavaASTFactory"/>
1196
1197     <lang.smartEnterProcessor language="JAVA"
1198                               implementationClass="com.intellij.codeInsight.editorActions.smartEnter.JavaSmartEnterProcessor"/>
1199     <lang.smartEnterProcessor language="JSPX" implementationClass="com.intellij.codeInsight.completion.XmlSmartEnterProcessor"/>
1200     <enterHandlerDelegate implementation="com.intellij.codeInsight.editorActions.JavaEnterAfterUnmatchedBraceHandler" order="before afterUnmatchedBrace"/>
1201
1202     <codeStyle.ReferenceAdjuster language="JAVA" implementationClass="com.intellij.psi.impl.source.codeStyle.JavaReferenceAdjuster"/>
1203
1204     <iconProvider implementation="com.intellij.psi.impl.JavaDirectoryIconProvider" id="javaDirectory"/>
1205     <iconProvider implementation="com.intellij.execution.testframework.TestIconProvider" id="testIcons"/>
1206
1207     <codeStyleSettingsProvider implementation="com.intellij.application.options.JavaCodeStyleSettingsProvider"/>
1208     <codeStyleSettingsProvider implementation="com.intellij.application.options.GenerationSettingsProvider"/>
1209
1210     <langCodeStyleSettingsProvider implementation="com.intellij.ide.JavaLanguageCodeStyleSettingsProvider"/>
1211     <lang.lineWrapStrategy language="JAVA" implementationClass="com.intellij.psi.formatter.java.JavaLineWrapPositionStrategy"/>
1212
1213     <lang.sliceProvider language="JAVA" implementationClass="com.intellij.slicer.JavaSliceProvider"/>
1214
1215     <stacktrace.fold substring="at java.awt.EventDispatchThread"/>
1216     <stacktrace.fold substring="at java.awt.Window.dispatchEventImpl("/>
1217     <stacktrace.fold substring="at java.awt.Container.dispatchEventImpl("/>
1218     <stacktrace.fold substring="at java.awt.LightweightDispatcher."/>
1219     <stacktrace.fold substring="at java.awt.Component.dispatchEvent("/>
1220     <stacktrace.fold substring="at java.awt.event.InvocationEvent.dispatch("/>
1221     <stacktrace.fold substring="at java.awt.EventQueue"/>
1222     <stacktrace.fold substring="at java.awt.Component.dispatchEventImpl("/>
1223     <stacktrace.fold substring="at java.awt.Container.processEvent("/>
1224     <stacktrace.fold substring="at javax.swing.JComponent.processMouseEvent("/>
1225     <stacktrace.fold substring="at javax.swing.plaf.basic.BasicMenuItemUI"/>
1226     <stacktrace.fold substring="at java.awt.Component.processMouseEvent("/>
1227     <stacktrace.fold substring="at javax.swing.AbstractButton.doClick("/>
1228     <stacktrace.fold substring="at java.awt.Component.processEvent("/>
1229     <stacktrace.fold substring="at java.awt.Container.dispatchEventImpl("/>
1230     <stacktrace.fold substring="at javax.swing.DefaultButtonModel.fireActionPerformed("/>
1231     <stacktrace.fold substring="at javax.swing.DefaultButtonModel.setPressed("/>
1232     <stacktrace.fold substring="at javax.swing.AbstractButton.fireActionPerformed("/>
1233     <stacktrace.fold substring="at javax.swing.AbstractButton$Handler.actionPerformed("/>
1234     <stacktrace.fold substring="at java.security.AccessControlContext$1.doIntersectionPrivilege("/>
1235     <stacktrace.fold substring="at java.awt.EventQueue.dispatchEventImpl("/>
1236     <stacktrace.fold substring="at java.security.AccessController.doPrivileged(Native Method)"/>
1237     <stacktrace.fold substring="at java.security.ProtectionDomain$1.doIntersectionPrivilege("/>
1238     <stacktrace.fold substring="at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege("/>
1239     <stacktrace.fold substring="at com.jgoodies.binding.beans.ExtendedPropertyChangeSupport.firePropertyChange0("/>
1240     <stacktrace.fold substring="at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased("/>
1241
1242     <stacktrace.fold substring="at java.util.stream.ReferencePipeline$"/>
1243     <stacktrace.fold substring="at java.util.Spliterators$"/>
1244     <stacktrace.fold substring="at java.util.stream.AbstractPipeline.evaluate("/>
1245     <stacktrace.fold substring="at java.util.stream.AbstractPipeline.copyInto("/>
1246     <stacktrace.fold substring="at java.util.stream.AbstractPipeline.wrapAndCopyInto("/>
1247     <stacktrace.fold substring="at java.util.stream.ReduceOps$"/>
1248
1249     <stacktrace.fold substring="at java.lang.reflect.Method.invoke("/>
1250     <stacktrace.fold substring="at java.lang.reflect.Constructor.newInstance("/>
1251     <stacktrace.fold substring="at sun.reflect."/>
1252     <stacktrace.fold substring="at java.rmi."/>
1253     <stacktrace.fold substring="at sun.rmi."/>
1254     <stacktrace.fold substring="at com.sun.proxy.$Proxy"/>
1255     <stacktrace.fold substring="at com.intellij.rt.execution."/>
1256     <console.folding implementation="com.intellij.testFramework.FailedTestDebugLogConsoleFolding"/>
1257
1258     <debuggerEditorTextProvider language="JAVA" implementationClass="com.intellij.debugger.impl.JavaEditorTextProviderImpl"/>
1259
1260     <constructorBodyGenerator language="JAVA" implementationClass="com.intellij.codeInsight.generation.NewJavaConstructorBodyWithSuperCallGenerator"/>
1261
1262     <quoteHandler fileType="JAVA" className="com.intellij.codeInsight.editorActions.JavaQuoteHandler"/>
1263     <typedHandler implementation="com.intellij.codeInsight.editorActions.JavaTypedHandler" id="java"/>
1264     <typedHandler implementation="com.intellij.codeInsight.editorActions.JavadocTypedHandler" id="javadoc"/>
1265
1266     <editorTypedHandler implementationClass="com.intellij.codeInsight.editorActions.AutoFormatTypedHandler"/>
1267
1268     <editorSmartKeysConfigurable instance="com.intellij.application.options.JavadocOptionsProvider"
1269                                  id="editor.preferences.javadocOptions"
1270                                  key="javadoc.generate.message.title"
1271                                  bundle="messages.JavadocBundle"/>
1272
1273     <joinLinesHandler implementation="com.intellij.codeInsight.editorActions.LiteralJoinLinesHandler"/>
1274     <joinLinesHandler implementation="com.intellij.codeInsight.editorActions.DeclarationJoinLinesHandler"/>
1275     <joinLinesHandler implementation="com.intellij.codeInsight.editorActions.BlockJoinLinesHandler"/>
1276
1277     <filetype.decompiler filetype="CLASS" implementationClass="com.intellij.psi.impl.compiled.ClassFileDecompiler"/>
1278     <filetype.stubBuilder filetype="CLASS" implementationClass="com.intellij.psi.impl.compiled.ClassFileStubBuilder"/>
1279
1280     <weigher key="proximity" implementationClass="com.intellij.psi.util.proximity.ReferenceListWeigher" id="referenceList"
1281              order="before samePsiMember"/>
1282     <weigher key="proximity" implementationClass="com.intellij.psi.util.proximity.SamePsiMemberWeigher" id="samePsiMember"
1283              order="before explicitlyImported"/>
1284     <weigher key="proximity" implementationClass="com.intellij.psi.util.proximity.ExplicitlyImportedWeigher" id="explicitlyImported"
1285              order="before openedInEditor"/>
1286     <weigher key="proximity" implementationClass="com.intellij.psi.util.proximity.JavaInheritanceWeigher" id="javaInheritance"
1287              order="after explicitlyImported, before sameLogicalRoot"/>
1288     <weigher key="proximity" implementationClass="com.intellij.psi.util.proximity.KnownElementWeigher" id="knownElement"
1289              order="after sameModule, before inResolveScope"/>
1290
1291     <statistician key="proximity" implementationClass="com.intellij.codeInsight.completion.JavaProximityStatistician"/>
1292     <statistician key="completion" implementationClass="com.intellij.codeInsight.completion.JavaCompletionStatistician"/>
1293
1294     <completion.skip implementation="com.intellij.codeInsight.completion.AbstractExpectedTypeSkipper" id="skipAbstract"/>
1295
1296
1297     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.LiteralSelectioner"/>
1298     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.DocCommentSelectioner"/>
1299     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.ListSelectioner"/>
1300     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.VarargsSelectioner"/>
1301     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.CodeBlockOrInitializerSelectioner"/>
1302     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.FinallyBlockSelectioner"/>
1303     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.MethodOrClassSelectioner"/>
1304     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.FieldSelectioner"/>
1305     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.ReferenceSelectioner"/>
1306     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.DocTagSelectioner"/>
1307     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.ForStatementHeaderSelectioner"/>
1308     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.IfStatementSelectioner"/>
1309     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.TypeCastSelectioner"/>
1310     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.JavaTokenSelectioner"/>
1311     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.StatementGroupSelectioner"/>
1312     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.CaseStatementsSelectioner"/>
1313     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.AntLikePropertySelectionHandler"/>
1314     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.MethodCallSelectioner"/>
1315
1316     <structureViewBuilder key="CLASS" factoryClass="com.intellij.ide.highlighter.JavaClsStructureViewBuilderProvider"/>
1317
1318     <getDataRule key="analysisScope" implementationClass="com.intellij.analysis.AnalysisScopeRule"/>
1319
1320     <vcsSelectionProvider implementation="com.intellij.vcsUtil.JavaVcsSelectionProvider"/>
1321
1322     <smartPointer.anchorProvider implementation="com.intellij.psi.impl.smartPointers.JavaAnchorProvider"/>
1323
1324     <elementSignatureProvider implementation="com.intellij.codeInsight.folding.impl.JavaElementSignatureProvider"/>
1325
1326     <preFormatProcessor implementation="com.intellij.psi.impl.source.codeStyle.FormatCommentsProcessor"/>
1327     <postFormatProcessor implementation="com.intellij.psi.impl.source.codeStyle.BracePostFormatProcessor"/>
1328     <postFormatProcessor implementation="com.intellij.psi.impl.source.codeStyle.ImportPostFormatProcessor"/>
1329     <postFormatProcessor implementation="com.intellij.psi.impl.source.codeStyle.TabPostFormatProcessor"/>
1330     <codeInspection.InspectionExtension implementation="com.intellij.codeInspection.ex.JavaInspectionExtensionsFactory"/>
1331
1332     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ArrayVariableMacro"/>
1333     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.VariableOfTypeMacro"/>
1334     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ComponentTypeOfMacro"/>
1335     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SuggestVariableNameMacro"/>
1336     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SuggestFirstVariableNameMacro"/>
1337
1338     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SuggestIndexNameMacro"/>
1339     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.GuessElementTypeMacro"/>
1340     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ExpectedTypeMacro"/>
1341     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ExpressionTypeMacro"/>
1342
1343     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.AnnotatedMacro"/>
1344     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.MethodNameMacro"/>
1345     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.MethodParametersMacro"/>
1346     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.MethodReturnTypeMacro"/>
1347
1348     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.ClassNameMacro"/>
1349     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.QualifiedClassNameMacro"/>
1350
1351     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.CurrentPackageMacro"/>
1352     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.RightSideTypeMacro"/>
1353     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.CastToLeftSideTypeMacro"/>
1354
1355     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.IterableVariableMacro"/>
1356     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.IterableComponentTypeMacro"/>
1357     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.DescendantClassesEnumMacro"/>
1358     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.SubtypesMacro"/>
1359     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.TypeOfVariableMacro"/>
1360
1361     <liveTemplateMacro implementation="com.intellij.codeInsight.template.macro.GroovyScriptMacro"/>
1362
1363     <copyPastePreProcessor implementation="com.intellij.codeInsight.editorActions.StringLiteralCopyPasteProcessor"/>
1364     <copyPastePostProcessor implementation="com.intellij.codeInsight.editorActions.JavaCopyPasteReferenceProcessor"/>
1365
1366
1367     <applicationService serviceInterface="com.intellij.codeInspection.SuppressManager"
1368                         serviceImplementation="com.intellij.codeInspection.SuppressManagerImpl"/>
1369     <applicationService serviceInterface="com.intellij.codeInspection.BatchSuppressManager"
1370                         serviceImplementation="com.intellij.codeInspection.BatchSuppressManagerImpl"/>
1371
1372     <declarationRangeHandler key="com.intellij.psi.PsiMethod"
1373                              implementationClass="com.intellij.codeInsight.hint.MethodDeclarationRangeHandler"/>
1374     <declarationRangeHandler key="com.intellij.psi.PsiLambdaExpression"
1375                              implementationClass="com.intellij.codeInsight.hint.LambdaDeclarationRangeHandler"/>
1376     <declarationRangeHandler key="com.intellij.psi.PsiClass"
1377                              implementationClass="com.intellij.codeInsight.hint.ClassDeclarationRangeHandler"/>
1378     <declarationRangeHandler key="com.intellij.psi.PsiClassInitializer"
1379                              implementationClass="com.intellij.codeInsight.hint.ClassInitializerDeclarationRangeHandler"/>
1380
1381     <backspaceHandlerDelegate implementation="com.intellij.codeInsight.editorActions.JavaBackspaceHandler"/>
1382     <lineIndentProvider implementation="com.intellij.codeInsight.editorActions.JavaLineIndentProvider"/>
1383
1384     <usageTargetProvider implementation="com.intellij.find.findUsages.ThrowsUsageTargetProvider"/>
1385
1386     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaCodeContextType$Generic"/>
1387     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaCodeContextType$Statement"/>
1388     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaCodeContextType$Expression"/>
1389     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaCodeContextType$Declaration"/>
1390     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaCommentContextType"/>
1391     <liveTemplateContext implementation="com.intellij.codeInsight.template.JavaStringContextType"/>
1392     <liveTemplateContext implementation="com.intellij.codeInsight.template.SmartCompletionContextType"/>
1393     <projectExtension implementation="com.intellij.openapi.roots.impl.LanguageLevelProjectExtensionImpl$MyProjectExtension"/>
1394     <statistics.usagesCollector  implementation="com.intellij.openapi.roots.impl.LanguageLevelUsagesCollector"/>
1395
1396     <moduleExtension implementation="com.intellij.openapi.roots.impl.CompilerModuleExtensionImpl"/>
1397
1398     <highlightUsagesHandlerFactory implementation="com.intellij.codeInsight.highlighting.HighlightExceptionsHandlerFactory"/>
1399     <highlightUsagesHandlerFactory implementation="com.intellij.codeInsight.highlighting.HighlightSuppressedWarningsFactory"/>
1400     <highlightUsagesHandlerFactory implementation="com.intellij.codeInsight.highlighting.HighlightExitPointsHandlerFactory"/>
1401     <highlightUsagesHandlerFactory implementation="com.intellij.codeInsight.highlighting.HighlightOverridingMethodsHandlerFactory"/>
1402     <highlightUsagesHandlerFactory implementation="com.intellij.codeInsight.highlighting.HighlightImportedElementsHandlerFactory"/>
1403
1404     <directoryIndexExcludePolicy implementation="com.intellij.openapi.roots.impl.ExcludeCompilerOutputPolicy"/>
1405
1406     <patternDialectProvider implementation="com.intellij.packageDependencies.ui.PackagePatternProvider" id="package" order="before file" />
1407     <scopeDescriptorProvider implementation="com.intellij.ide.util.scopeChooser.HierarchyScopeDescriptorProvider"/>
1408
1409     <patterns.patternClass className="com.intellij.patterns.PsiJavaPatterns" alias="java"/>
1410
1411     <customScopesProvider implementation="com.intellij.analysis.PackagesScopesProvider"/>
1412
1413     <highlightErrorFilter implementation="com.intellij.codeInsight.daemon.impl.analysis.JavadocErrorFilter"/>
1414     <daemon.changeLocalityDetector implementation="com.intellij.codeInsight.daemon.impl.JavaChangeLocalityDetector"/>
1415
1416     <liveTemplateOptionalProcessor implementation="com.intellij.codeInsight.template.impl.ShortenToStaticImportProcessor"/>
1417     <liveTemplateOptionalProcessor implementation="com.intellij.codeInsight.template.impl.ShortenFQNamesProcessor"/>
1418     <liveTemplateOptionalProcessor implementation="com.intellij.codeInsight.template.impl.CodeBlockReformattingProcessor"/>
1419     <projectService serviceInterface="com.intellij.ide.todo.nodes.TodoTreeHelper"
1420                     serviceImplementation="com.intellij.ide.todo.nodes.TodoJavaTreeHelper"/>
1421
1422     <createFromTemplateHandler implementation="com.intellij.ide.fileTemplates.JavaInternalTemplatesHandler"/>
1423     <createFromTemplateHandler implementation="com.intellij.ide.fileTemplates.JavaCreateFromTemplateHandler"/>
1424
1425     <defaultTemplatePropertiesProvider implementation="com.intellij.ide.fileTemplates.TemplatePackagePropertyProvider"/>
1426     <favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.PsiClassFavoriteNodeProvider"/>
1427     <favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.PsiFieldFavoriteNodeProvider"/>
1428     <favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.PsiMethodFavoriteNodeProvider"/>
1429     <favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.PsiPackageFavoriteNodeProvider"/>
1430     <favoriteNodeProvider implementation="com.intellij.ide.favoritesTreeView.UsageFavoriteNodeProvider"/>
1431
1432     <configurationType implementation="com.intellij.execution.applet.AppletConfigurationType"/>
1433     <configurationProducer implementation="com.intellij.execution.applet.AppletConfigurationProducer"/>
1434     <configurationType implementation="com.intellij.execution.application.ApplicationConfigurationType"/>
1435     <configurationType implementation="com.intellij.execution.jar.JarApplicationConfigurationType"/>
1436     <configurationType implementation="com.intellij.execution.scratch.JavaScratchConfigurationType"/>
1437     <runConfigurationProducer implementation="com.intellij.execution.jar.JarApplicationConfigurationProducer"/>
1438     <runConfigurationProducer implementation="com.intellij.execution.application.ApplicationConfigurationProducer"/>
1439     <runConfigurationProducer implementation="com.intellij.execution.scratch.JavaScratchConfigurationProducer"/>
1440     <configurationType implementation="com.intellij.execution.remote.RemoteConfigurationType"/>
1441
1442     <runLineMarkerContributor language="JAVA" implementationClass="com.intellij.execution.application.ApplicationRunLineMarkerProvider"/>
1443     <pathMacroFilter implementation="com.intellij.execution.configuration.JavaRunConfigurationPathMacroFilter"/>
1444
1445     <javaExpressionSurrounder implementation="com.intellij.debugger.codeinsight.JavaWithRuntimeCastSurrounder"/>
1446
1447     <applicationService serviceInterface="com.intellij.packageDependencies.DependenciesVisitorFactory"
1448                         serviceImplementation="com.intellij.packageDependencies.JavaDependenciesVisitorFactory"/>
1449     <packageDependencies.visitor language="JAVA" implementationClass="com.intellij.packageDependencies.JavaDependencyVisitorFactory"/>
1450
1451     <exceptionFilter implementation="com.intellij.execution.filters.ExceptionBaseFilterFactory"/>
1452     <exceptionFilter implementation="com.intellij.execution.filters.ExceptionExFilterFactory"/>
1453     <exceptionFilter implementation="com.intellij.openapi.vcs.contentAnnotation.VcsContentAnnotationExceptionFilterFactory"/>
1454
1455     <internalFileTemplate name="Class"/>
1456     <internalFileTemplate name="Interface"/>
1457     <internalFileTemplate name="Enum"/>
1458     <internalFileTemplate name="AnnotationType" subject="@interface"/>
1459     <internalFileTemplate name="package-info"/>
1460     <internalFileTemplate name="module-info"/>
1461
1462     <saveFileAsTemplateHandler implementation="com.intellij.ide.fileTemplates.SaveJavaAsTemplateHandler"/>
1463
1464     <refactoring.copyHandler implementation="com.intellij.refactoring.copy.CopyClassesHandler" order="before copyJavaFilesOrPackages"/>
1465     <refactoring.copyHandler implementation="com.intellij.refactoring.copy.CopyFilesOrDirectoriesHandler" id="copyJavaFilesOrPackages"/>
1466
1467     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveClassesOrPackages.JavaMoveClassesOrPackagesHandler" order="before moveJavaFileOrDir"/>
1468     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveFilesOrDirectories.JavaMoveFilesOrDirectoriesHandler" id="moveJavaFileOrDir"/>
1469     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveMembers.MoveMembersHandler"/>
1470     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveInstanceMethod.MoveInstanceMethodHandlerDelegate"/>
1471     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveInner.MoveInnerToUpperHandler"/>
1472     <refactoring.moveHandler implementation="com.intellij.refactoring.move.moveInner.MoveInnerToUpperOrMembersHandler"/>
1473     <refactoring.moveHandler implementation="com.intellij.refactoring.anonymousToInner.MoveAnonymousToInnerHandler"/>
1474
1475     <refactoring.moveDirectoryWithClassesHelper implementation="com.intellij.refactoring.move.moveClassesOrPackages.JavaMoveDirectoryWithClassesHelper"/>
1476
1477     <moveFileHandler implementation="com.intellij.refactoring.move.moveClassesOrPackages.MoveJavaFileHandler" id="java"/>
1478     <refactoring.moveAllClassesInFileHandler implementation="com.intellij.refactoring.move.moveClassesOrPackages.MoveJavaClassesInFileHandler" id="java"/>
1479
1480     <refactoring.moveClassHandler implementation="com.intellij.refactoring.move.moveClassesOrPackages.MoveJavaClassHandler" id="java"/>
1481     <refactoring.moveClassToInnerHandler implementation="com.intellij.refactoring.move.moveClassesOrPackages.JavaMoveClassToInnerHandler" id="java"/>
1482     <refactoring.moveMemberHandler language="JAVA" implementationClass="com.intellij.refactoring.move.moveMembers.MoveJavaMemberHandler" id="java"/>
1483     <refactoring.moveInnerHandler language="JAVA" implementationClass="com.intellij.refactoring.move.moveInner.MoveJavaInnerHandler" id="java"/>
1484
1485     <refactoring.safeDeleteProcessor implementation="com.intellij.refactoring.safeDelete.JavaSafeDeleteProcessor" id="javaProcessor"/>
1486     <refactoring.safeDelete.JavaSafeDeleteDelegate implementationClass="com.intellij.refactoring.safeDelete.JavaSafeDeleteDelegateImpl" language="JAVA"/>
1487     <safeDelete.importSearcher implementation="com.intellij.refactoring.safeDelete.JavaImportSearcher"/>
1488
1489     <refactoring.introduceParameterMethodUsagesProcessor implementation="com.intellij.refactoring.introduceParameter.JavaIntroduceParameterMethodUsagesProcessor"/>
1490     <refactoring.changeSignatureUsageProcessor implementation="com.intellij.refactoring.changeSignature.JavaChangeSignatureUsageProcessor" id="javaProcessor"/>
1491
1492     <refactoring.helper implementation="com.intellij.refactoring.OptimizeImportsRefactoringHelper"/>
1493
1494     <projectService serviceInterface="com.intellij.ide.projectView.impl.nodes.ProjectViewDirectoryHelper"
1495                     serviceImplementation="com.intellij.ide.projectView.impl.JavaProjectViewDirectoryHelper"/>
1496
1497     <elementDescriptionProvider implementation="com.intellij.refactoring.util.JavaRefactoringElementDescriptionProvider"/>
1498     <elementDescriptionProvider implementation="com.intellij.refactoring.util.JavaNonCodeSearchElementDescriptionProvider"/>
1499
1500     <colorSettingsPage implementation="com.intellij.openapi.options.colors.pages.JavaColorSettingsPage"/>
1501
1502     <scopeParserExtension implementation="com.intellij.psi.search.scope.packageSet.PatternPackageSetParserExtension"/>
1503
1504     <macro implementation="com.intellij.ide.macro.ClasspathEntryMacro"/>
1505     <macro implementation="com.intellij.ide.macro.ClasspathMacro"/>
1506     <macro implementation="com.intellij.ide.macro.FileClassMacro"/>
1507     <macro implementation="com.intellij.ide.macro.FileFQPackage"/>
1508     <macro implementation="com.intellij.ide.macro.FilePackageMacro"/>
1509     <macro implementation="com.intellij.ide.macro.JavaDocPathMacro"/>
1510     <macro implementation="com.intellij.ide.macro.OutputPathMacro"/>
1511
1512     <printOption implementation="com.intellij.codeEditor.printing.HyperlinksToClassesOption"/>
1513
1514     <indexPatternBuilder implementation="com.intellij.psi.impl.search.JavaIndexPatternBuilder"/>
1515     <indexPatternBuilder implementation="com.intellij.psi.impl.search.JspIndexPatternBuilder"/>
1516
1517     <applicationService serviceInterface="com.intellij.codeInsight.TargetElementUtil"
1518                         serviceImplementation="com.intellij.codeInsight.TargetElementUtil"/>
1519     <targetElementUtilExtender implementation="com.intellij.codeInsight.JavaTargetElementEvaluator"/>
1520     <targetElementEvaluator language="JAVA" implementationClass="com.intellij.codeInsight.JavaTargetElementEvaluator"/>
1521
1522     <gotoClassContributor implementation="com.intellij.ide.util.gotoByName.DefaultClassNavigationContributor"/>
1523     <gotoSymbolContributor implementation="com.intellij.ide.util.gotoByName.DefaultSymbolNavigationContributor"/>
1524     <gotoSymbolContributor implementation="com.intellij.ide.util.gotoByName.JavaModuleNavigationContributor"/>
1525     <scopeTreeExpander implementation="com.intellij.ide.scopeView.ClassesScopeTreeStructureExpander"/>
1526     <lang.implementationTextSelectioner language="JAVA"
1527                                         implementationClass="com.intellij.codeInsight.hint.JavaImplementationTextSelectioner"/>
1528     <gotoDeclarationHandler implementation="com.intellij.codeInsight.navigation.actions.GotoBreakContinueHandler"/>
1529     <navbar implementation="com.intellij.ide.navigationToolbar.JavaNavBarExtension"/>
1530     <typeDeclarationProvider implementation="com.intellij.codeInsight.navigation.actions.JavaTypeDeclarationProvider"/>
1531     <gotoTargetRendererProvider implementation="com.intellij.codeInsight.navigation.JavaGotoTargetRendererProvider"/>
1532
1533     <renameHandler implementation="com.intellij.refactoring.rename.DirectoryAsPackageRenameHandler"/>
1534     <renameHandler implementation="com.intellij.refactoring.rename.RenameWrongRefHandler"/>
1535     <rename.inplace.resolveSnapshotProvider language="JAVA"
1536                                             implementationClass="com.intellij.refactoring.rename.inplace.JavaResolveSnapshotProvider"/>
1537     <updateAddedFileProcessor implementation="com.intellij.psi.impl.file.JavaUpdateAddedFileProcessor"/>
1538
1539     <findUsagesHandlerFactory implementation="com.intellij.find.findUsages.JavaFindUsagesHandlerFactory" id="java"
1540                               order="last, before default"/>
1541     <referenceProviderType key="Class Reference Provider"
1542                            implementationClass="com.intellij.psi.impl.source.resolve.reference.impl.providers.JavaClassReferenceProvider"/>
1543
1544     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenamePsiPackageProcessor"/>
1545     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenamePsiDirectoryProcessor"/>
1546     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenameJavaClassProcessor"/>
1547     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenameJavaMethodProcessor" id="javamethod"/>
1548     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenameJavaVariableProcessor" id="javaVariable"/>
1549     <renamePsiElementProcessor implementation="com.intellij.refactoring.rename.RenameAliasingPomTargetProcessor"/>
1550
1551     <renameInputValidator implementation="com.intellij.refactoring.rename.PsiPackageRenameValidator"/>
1552     <renameInputValidator implementation="com.intellij.refactoring.rename.JavaModuleRenameValidator"/>
1553
1554     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.AutomaticVariableRenamerFactory"/>
1555     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.AutomaticParametersRenamerFactory"/>
1556     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.AutomaticInheritorRenamerFactory"/>
1557     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.AutomaticTestRenamerFactory"/>
1558     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.ConstructorParameterOnFieldRenameRenamerFactory"/>
1559     <automaticRenamerFactory implementation="com.intellij.refactoring.rename.naming.AutomaticOverloadsRenamerFactory"/>
1560
1561     <nameSuggestionProvider implementation="com.intellij.refactoring.rename.JavaNameSuggestionProvider" id="java"/>
1562
1563     <vetoRenameCondition implementation="com.intellij.refactoring.rename.JavaVetoRenameCondition"/>
1564
1565     <readWriteAccessDetector implementation="com.intellij.codeInsight.highlighting.JavaReadWriteAccessDetector" id="java"/>
1566     <elementDescriptionProvider implementation="com.intellij.codeInsight.highlighting.JavaHighlightUsagesDescriptionProvider"/>
1567
1568     <elementDescriptionProvider implementation="com.intellij.usageView.JavaUsageViewDescriptionProvider"/>
1569
1570     <elementDescriptionProvider implementation="com.intellij.ide.util.JavaDeleteTypeDescriptionProvider"/>
1571
1572     <referenceImporter implementation="com.intellij.codeInsight.daemon.impl.JavaReferenceImporter"/>
1573
1574     <elementLookupRenderer implementation="com.intellij.codeInsight.lookup.impl.JavaElementLookupRenderer"/>
1575
1576     <qualifiedNameProvider implementation="com.intellij.ide.actions.JavaQualifiedNameProvider"/>
1577
1578     <fileStructureGroupRuleProvider implementation="com.intellij.usages.impl.rules.NonJavaFileGroupRuleProvider"/>
1579     <fileStructureGroupRuleProvider implementation="com.intellij.usages.impl.rules.JavaClassGroupRuleProvider"/>
1580     <fileStructureGroupRuleProvider implementation="com.intellij.usages.impl.rules.JavaMethodGroupRuleProvider"/>
1581     <usageTypeProvider implementation="com.intellij.usages.impl.rules.JavaUsageTypeProvider"/>
1582     <usageContextPanelProvider implementation="com.intellij.usageView.UsageContextDataflowToPanel$Provider"/>
1583     <usageContextPanelProvider implementation="com.intellij.usageView.UsageContextDataflowFromPanel$Provider"/>
1584     <importFilteringRule implementation="com.intellij.usages.impl.rules.ImportFilteringRule"/>
1585
1586     <treeStructureProvider implementation="com.intellij.ide.projectView.impl.ClassesTreeStructureProvider" order="last"/>
1587
1588     <defaultLiveTemplatesProvider implementation="com.intellij.codeInsight.template.impl.JavaDefaultLiveTemplatesProvider"/>
1589     <liveTemplateSubstitutor implementation="com.intellij.codeInsight.template.impl.JavaTemplateSubstitutor"/>
1590
1591     <codeInsight.surroundWithRangeAdjuster implementation="com.intellij.codeInsight.generation.surroundWith.XmlSurroundWithRangeAdjuster"/>
1592
1593     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaAnnotationIndex"/>
1594     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaAnonymousClassBaseRefOccurenceIndex"/>
1595     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaFieldNameIndex"/>
1596     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaFullClassNameIndex"/>
1597     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaMethodNameIndex"/>
1598     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaStaticMemberNameIndex"/>
1599     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaStaticMemberTypeIndex"/>
1600     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaShortClassNameIndex"/>
1601     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaSuperClassNameOccurenceIndex"/>
1602     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaMethodParameterTypesIndex"/>
1603     <stubIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaModuleNameIndex"/>
1604
1605     <fileBasedIndex implementation="com.intellij.psi.impl.java.JavaFunctionalExpressionIndex"/>
1606     <fileBasedIndex implementation="com.intellij.codeInspection.bytecodeAnalysis.BytecodeAnalysisIndex"/>
1607     <fileBasedIndex implementation="com.intellij.psi.RefQueueIndex"/>
1608     <fileBasedIndex implementation="com.intellij.psi.impl.java.stubs.index.JavaAutoModuleNameIndex"/>
1609
1610     <stubElementTypeHolder class="com.intellij.psi.impl.java.stubs.JavaStubElementTypes"/>
1611
1612     <dom.customAnnotationChecker implementation="com.intellij.util.xml.impl.ExtendsClassChecker"/>
1613
1614     <methodNavigationOffsetProvider implementation="com.intellij.codeInsight.navigation.JavaMethodNavigationOffsetProvider"/>
1615
1616     <editorNavigation implementation="com.intellij.javadoc.JavadocNavigationDelegate"/>
1617     <enterHandlerDelegate implementation="com.intellij.javadoc.EnterInJavadocParamDescriptionHandler"/>
1618
1619     <filePasteProvider implementation="com.intellij.ide.JavaFilePasteProvider" order="before fileList"/>
1620
1621     <testFinder implementation="com.intellij.testIntegration.JavaTestFinder"/>
1622     <testCreator language="JAVA" implementationClass="com.intellij.testIntegration.JavaTestCreator"/>
1623     <testGenerator language="JAVA" implementationClass="com.intellij.testIntegration.createTest.JavaTestGenerator" />
1624     <runLineMarkerContributor language="JAVA" implementationClass="com.intellij.testIntegration.TestRunLineMarkerProvider"/>
1625
1626     <callHierarchyProvider language="JAVA" implementationClass="com.intellij.ide.hierarchy.call.JavaCallHierarchyProvider"/>
1627     <methodHierarchyProvider language="JAVA" implementationClass="com.intellij.ide.hierarchy.method.JavaMethodHierarchyProvider"/>
1628     <typeHierarchyProvider language="JAVA" implementationClass="com.intellij.ide.hierarchy.type.JavaTypeHierarchyProvider"/>
1629
1630     <optionsApplicabilityFilter implementation="com.intellij.application.options.JavaOptionsApplicabilityFilter"/>
1631
1632     <templateCompletionProcessor implementation="com.intellij.codeInsight.template.macro.JavaTemplateCompletionProcessor"/>
1633
1634     <extendWordSelectionHandler implementation="com.intellij.codeInsight.editorActions.wordSelection.JavaWordSelectioner"/>
1635     <basicWordSelectionFilter implementation="com.intellij.codeInsight.editorActions.wordSelection.JavaBasicWordSelectionFilter"/>
1636
1637     <fileIconPatcher implementation="com.intellij.ide.JavaFileIconPatcher"/>
1638
1639     <idIndexer filetype="JAVA" implementationClass="com.intellij.psi.impl.cache.impl.idCache.JavaIdIndexer"/>
1640     <todoIndexer filetype="JAVA" implementationClass="com.intellij.psi.impl.cache.impl.idCache.JavaTodoIndexer"/>
1641
1642     <bundledKeymapProvider implementation="com.intellij.openapi.keymap.JBuilderKeymapProvider"/>
1643
1644     <problemFileHighlightFilter implementation="com.intellij.codeInsight.problems.DefaultProblemFileHighlightFilter"/>
1645
1646     <problemHighlightFilter implementation="com.intellij.codeInsight.daemon.JavaProblemHighlightFilter"/>
1647     <highlightVisitor implementation="com.intellij.codeInsight.daemon.JavaRainbowVisitor"/>
1648
1649     <projectViewPane implementation="com.intellij.ide.projectView.impl.PackageViewPane"/>
1650
1651     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineParameterHandler"/>
1652     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineToAnonymousClassHandler"/>
1653     <inlineActionHandler implementation="com.intellij.refactoring.inlineSuperClass.InlineSuperClassRefactoringHandler"/>
1654     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineMethodHandler"/>
1655     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineLocalHandler"/>
1656     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineConstantFieldHandler"/>
1657     <inlineActionHandler implementation="com.intellij.refactoring.inline.InlineStaticImportHandler"/>
1658
1659     <previewHintProvider implementation="com.intellij.codeInsight.preview.JavaPreviewHintProvider"/>
1660     <filePropertyPusher implementation="com.intellij.openapi.roots.impl.JavaLanguageLevelPusher"/>
1661
1662     <psiViewerExtension implementation="com.intellij.internal.psiView.PsiViewerMethodExtension"/>
1663     <psiViewerExtension implementation="com.intellij.internal.psiView.PsiViewerCodeFragmentExtension"/>
1664     <psiViewerExtension implementation="com.intellij.internal.psiView.PsiViewerExpressionExtension"/>
1665
1666     <applicationService serviceInterface="com.intellij.profile.codeInspection.InspectionProfileManager"
1667                         serviceImplementation="com.intellij.profile.codeInspection.JavaAwareInspectionProfileManager"/>
1668
1669     <resolveScopeProvider implementation="com.intellij.psi.impl.file.impl.JavaOutOfSourcesResolveScopeProvider"/>
1670     <resolveScopeEnlarger implementation="com.intellij.psi.NonClasspathResolveScopeEnlarger"/>
1671     <resolveScopeEnlarger implementation="com.intellij.ide.scratch.ScratchResolveScopeEnlarger"/>
1672
1673     <xdebugger.debuggerSupport implementation="com.intellij.debugger.ui.JavaDebuggerSupport"/>
1674     <xdebugger.settings implementation="com.intellij.debugger.settings.JavaDebuggerSettings"/>
1675     <xdebugger.localAttachDebuggerProvider implementation="com.intellij.debugger.engine.JavaAttachDebuggerProvider"/>
1676
1677     <xdebugger.breakpointType implementation="com.intellij.debugger.ui.breakpoints.JavaMethodBreakpointType"/>
1678     <xdebugger.breakpointType implementation="com.intellij.debugger.ui.breakpoints.JavaWildcardMethodBreakpointType"/>
1679     <xdebugger.breakpointType implementation="com.intellij.debugger.ui.breakpoints.JavaFieldBreakpointType"/>
1680     <xdebugger.breakpointType implementation="com.intellij.debugger.ui.breakpoints.JavaExceptionBreakpointType"/>
1681     <xdebugger.breakpointType implementation="com.intellij.debugger.ui.breakpoints.JavaLineBreakpointType"/>
1682     <debugger.jvmSmartStepIntoHandler implementation="com.intellij.debugger.actions.JavaSmartStepIntoHandler" order="last"/>
1683     <debugger.simplePropertyGetterProvider implementation="com.intellij.debugger.engine.JavaSimpleGetterProvider"/>
1684     <debugger.syntheticProvider implementation="com.intellij.debugger.engine.DefaultSyntheticProvider"/>
1685     <debugger.sourcePositionProvider implementation="com.intellij.debugger.engine.DefaultSourcePositionProvider" order="last"/>
1686     <debugger.sourcePositionHighlighter implementation="com.intellij.debugger.engine.JavaSourcePositionHighlighter"/>
1687     <java.elementFinder implementation="com.intellij.debugger.impl.AlternativeJreClassFinder" order="last"/>
1688
1689     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.ColorObjectRenderer"/>
1690     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.ImageObjectRenderer"/>
1691     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.IconObjectRenderer"/>
1692     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.GraphicsObjectRenderer"/>
1693     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.BinaryRenderer"/>
1694     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.TimestampRenderer"/>
1695     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.ByteArrayAsStringRenderer"/>
1696     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.FileObjectRenderer"/>
1697     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.StackTraceElementObjectRenderer"/>
1698     <debugger.nodeRenderer implementation="com.intellij.debugger.ui.tree.render.ClassObjectRenderer"/>
1699
1700     <debugger.nodeNameAdjuster implementation="com.intellij.debugger.ui.impl.watch.FieldOuterLocalNameAdjuster"/>
1701
1702     <dom.uiControlsProvider implementation="com.intellij.util.xml.impl.JavaDomApplicationComponent"/>
1703
1704     <programRunner id="defaultDebugRunner" implementation="com.intellij.debugger.impl.GenericDebuggerRunner" order="last"/>
1705     <programRunner implementation="com.intellij.execution.jar.JarApplicationDebuggerRunner"/>
1706
1707     <generation.topLevelFactory language="JAVA" implementationClass="com.intellij.psi.impl.JavaFactoryProvider"/>
1708
1709     <itemPresentationProvider forClass="com.intellij.psi.PsiPackage"
1710                               implementationClass="com.intellij.psi.presentation.java.PackagePresentationProvider"/>
1711     <itemPresentationProvider forClass="com.intellij.psi.PsiClass"
1712                               implementationClass="com.intellij.psi.presentation.java.ClassPresentationProvider"/>
1713     <itemPresentationProvider forClass="com.intellij.psi.PsiMethod"
1714                               implementationClass="com.intellij.psi.presentation.java.MethodPresentationProvider"/>
1715     <itemPresentationProvider forClass="com.intellij.psi.PsiField"
1716                               implementationClass="com.intellij.psi.presentation.java.FieldPresentationProvider"/>
1717     <itemPresentationProvider forClass="com.intellij.psi.PsiLocalVariable"
1718                               implementationClass="com.intellij.psi.presentation.java.VariablePresentationProvider"/>
1719     <itemPresentationProvider forClass="com.intellij.psi.PsiParameter"
1720                               implementationClass="com.intellij.psi.presentation.java.VariablePresentationProvider"/>
1721     <itemPresentationProvider forClass="com.intellij.psi.PsiJavaModule"
1722                               implementationClass="com.intellij.psi.presentation.java.JavaModulePresentationProvider"/>
1723
1724     <iconLayerProvider implementation="com.intellij.compiler.CompilerIconLayerProvider"/>
1725
1726     <treeCopyHandler implementation="com.intellij.psi.impl.source.tree.JavaTreeCopyHandler"/>
1727     <treeGenerator implementation="com.intellij.psi.impl.source.tree.JavaTreeGenerator"/>
1728
1729     <java.elementFinder implementation="com.intellij.psi.impl.PsiElementFinderImpl" id="java" order="first"/>
1730     <java.elementFinder implementation="com.intellij.psi.impl.PackagePrefixElementFinder"/>
1731     <java.elementFinder implementation="com.intellij.psi.impl.migration.MigrationElementFinder"/>
1732
1733     <projectService serviceImplementation="com.intellij.openapi.roots.ui.configuration.ProjectStructureConfigurable"/>
1734     <projectService serviceInterface="com.intellij.openapi.roots.ui.configuration.ProjectSettingsService"
1735                     serviceImplementation="com.intellij.openapi.roots.ui.configuration.IdeaProjectSettingsService"/>
1736
1737     <projectTemplateParameterFactory implementation="com.intellij.openapi.module.BasePackageParameterFactory"/>
1738     <projectWizard.projectCategory implementation="com.intellij.ide.projectWizard.ModuleTypeCategory$JavaSE"/>
1739     <statistics.usagesCollector implementation="com.intellij.ide.projectWizard.ProjectCategoryUsagesCollector"/>
1740     <applicationService serviceImplementation="com.intellij.ide.projectWizard.ProjectCategoryUsagesCollector"/>
1741
1742     <projectStructureDetector implementation="com.intellij.ide.util.projectWizard.importSources.impl.JavaProjectStructureDetector" order="first"/>
1743
1744     <applicationService serviceImplementation="com.intellij.execution.JavaRunConfigurationExtensionManager"/>
1745     <runConfigurationExtension implementation="com.intellij.execution.testDiscovery.TestDiscoveryExtension"/>
1746
1747     <regExpLanguageHost forClass="com.intellij.psi.impl.source.tree.java.PsiLiteralExpressionImpl"
1748                         implementationClass="com.intellij.psi.impl.JavaRegExpHost"/>
1749
1750     <psi.referenceContributor language="JAVA" implementation="com.intellij.psi.impl.source.resolve.reference.impl.JavaReflectionReferenceContributor"/>
1751
1752     <writingAccessProvider implementation="com.intellij.refactoring.util.ClsElementWritingAccessProvider"/>
1753
1754     <fileTypeFactory implementation="com.intellij.spi.SPIFileTypeFactory"/>
1755     <lang.parserDefinition language="SPI" implementationClass="com.intellij.spi.parsing.SPIParserDefinition"/>
1756     <lang.commenter language="SPI" implementationClass="com.intellij.spi.SPICommenter"/>
1757     <annotator language="SPI" implementationClass="com.intellij.spi.SPIAnnotator"/>
1758
1759     <gotoDeclarationHandler implementation="com.intellij.codeInsight.navigation.actions.GotoLambdaParameterHandler"/>
1760
1761     <completion.contributor language="JAVA" id="methodsChainsCompletionContributor" order="first"
1762                             implementationClass="com.intellij.compiler.classFilesIndex.chainsSearch.completion.MethodsChainsCompletionContributor"/>
1763     <weigher order="first" key="completion" id="methodsChains"
1764              implementationClass="com.intellij.compiler.classFilesIndex.chainsSearch.completion.MethodsChainsWeigher"/>
1765
1766     <applicationService serviceInterface="org.jetbrains.java.generate.template.toString.ToStringTemplatesManager"
1767                         serviceImplementation="org.jetbrains.java.generate.template.toString.ToStringTemplatesManager"/>
1768     <applicationService serviceInterface="com.intellij.codeInsight.generation.EqualsHashCodeTemplatesManager"
1769                         serviceImplementation="com.intellij.codeInsight.generation.EqualsHashCodeTemplatesManager"/>
1770     <applicationService serviceInterface="com.intellij.codeInsight.generation.GetterTemplatesManager"
1771                         serviceImplementation="com.intellij.codeInsight.generation.GetterTemplatesManager"/>
1772     <applicationService serviceInterface="com.intellij.codeInsight.generation.SetterTemplatesManager"
1773                         serviceImplementation="com.intellij.codeInsight.generation.SetterTemplatesManager"/>
1774     <applicationService serviceInterface="org.jetbrains.java.generate.GenerateToStringActionHandler"
1775                         serviceImplementation="org.jetbrains.java.generate.GenerateToStringActionHandlerImpl"/>
1776     <applicationService serviceInterface="org.jetbrains.java.generate.GenerateToStringContext"
1777                         serviceImplementation="org.jetbrains.java.generate.GenerateToStringContext"/>
1778
1779     <localInspection groupPath="Java" language="JAVA" shortName="ClassHasNoToStringMethod" displayName="Class does not override 'toString()' method"
1780                      groupKey="group.names.toString.issues" groupBundle="messages.InspectionsBundle" enabledByDefault="false" level="WARNING"
1781                      implementationClass="org.jetbrains.java.generate.inspection.ClassHasNoToStringMethodInspection"/>
1782     <localInspection groupPath="Java" language="JAVA" shortName="FieldNotUsedInToString" displayName="Field not used in 'toString()' method" groupKey="group.names.toString.issues" groupBundle="messages.InspectionsBundle"
1783                      enabledByDefault="false" level="WARNING" runForWholeFile="true"
1784                      implementationClass="org.jetbrains.java.generate.inspection.FieldNotUsedInToStringInspection"/>
1785     <generation.toStringClassFilter implementation="org.jetbrains.generate.tostring.GenerateToStringInterfaceFilter" order="last"/>
1786
1787     <codeInsight.unresolvedReferenceQuickFixProvider implementation="com.intellij.jarFinder.FindJarQuickFixProvider"/>
1788     <codeInsight.externalLibraryResolver
1789         implementation="com.intellij.codeInsight.daemon.impl.quickfix.JetBrainsAnnotationsExternalLibraryResolver"/>
1790     <codeInsight.externalLibraryResolver implementation="com.intellij.codeInspection.concurrencyAnnotations.JCiPExternalLibraryResolver"/>
1791
1792     <refactoring.pullUpHelperFactory language="JAVA" implementationClass="com.intellij.refactoring.memberPullUp.JavaPullUpHelperFactory"/>
1793     <hierarchy.referenceProcessor implementation="com.intellij.ide.hierarchy.call.JavaCallReferenceProcessor"/>
1794     <projectTemplate projectType="JAVA_MODULE" templatePath="resources/projectTemplates/Java/Command_Line_App.zip"/>
1795     <generatedSourcesFilter implementation="com.intellij.openapi.roots.JavaGeneratedSourcesFilter"/>
1796     <outOfSourcesChecker implementation="com.intellij.openapi.projectRoots.JavaOutOfSourcesChecker"/>
1797     <refactoring.elementListenerProvider implementation="com.intellij.codeInspection.ex.AdditionalAnnotationsRefactoringElementListener"/>
1798     <projectOpenProcessor implementation="com.intellij.platform.PlatformProjectOpenProcessor" order="last"/>
1799     <projectService serviceInterface="com.intellij.platform.ProjectBaseDirectory"
1800                     serviceImplementation="com.intellij.platform.ProjectBaseDirectory"/>
1801     <projectService serviceInterface="com.intellij.codeInspection.bytecodeAnalysis.ProjectBytecodeAnalysis"
1802                     serviceImplementation="com.intellij.codeInspection.bytecodeAnalysis.ProjectBytecodeAnalysis"/>
1803     <projectService serviceInterface="com.intellij.psi.stubsHierarchy.HierarchyService"
1804                     serviceImplementation="com.intellij.psi.stubsHierarchy.impl.HierarchyServiceImpl"/>
1805     <fileBasedIndex implementation="com.intellij.psi.stubsHierarchy.impl.StubHierarchyIndex"/>
1806     <hierarchy.indexer implementation="com.intellij.psi.stubsHierarchy.impl.JavaStubIndexer"/>
1807
1808     <spellchecker.support language="JAVA" implementationClass="com.intellij.spellchecker.JavaSpellcheckingStrategy"/>
1809
1810     <codeInsight.template.postfixTemplateProvider language="JAVA"
1811                                                   implementationClass="com.intellij.codeInsight.template.postfix.templates.JavaPostfixTemplateProvider"/>
1812     <codeInsight.lineMarkerProvider language="JAVA" implementationClass="com.intellij.codeInsight.ExternalAnnotationsLineMarkerProvider"/>
1813     <codeInsight.linkHandler prefix="#assignment/" handlerClass="com.intellij.codeInsight.intention.impl.config.AssignmentTooltipLinkHandler"/>
1814     <nonProjectFileWritingAccessExtension
1815         implementation="com.intellij.codeInsight.ExternalAnnotationsNonProjectFileWritingAccessExtension"/>
1816     <lang.inspectionSuppressor language="JAVA" implementationClass="com.intellij.codeInspection.SuppressManagerImpl"/>
1817     <refactoring.moveInnerClassUsagesHandler language="JAVA" implementationClass="com.intellij.refactoring.move.moveInner.MoveInnerClassJavaUsagesHandler" id="java"/>
1818     <actionPromoter implementation="com.intellij.execution.testframework.TestTreeViewActionsPromoter"/>
1819     <refactoring.invertBoolean implementation="com.intellij.refactoring.invertBoolean.JavaInvertBooleanDelegate"/>
1820     <refactoring.introduceParameterObject language="JAVA"
1821                                           implementationClass="com.intellij.refactoring.introduceparameterobject.JavaIntroduceParameterObjectDelegate"/>
1822     <refactoring.pushDown language="JAVA" implementationClass="com.intellij.refactoring.memberPushDown.JavaPushDownDelegate" id="java"/>
1823     <library.javaSourceRootDetector implementation="com.intellij.openapi.roots.ui.configuration.LibraryJavaSourceRootDetector"/>
1824
1825     <fileBasedIndex implementation="com.intellij.psi.impl.search.JavaNullMethodArgumentIndex"/>
1826
1827     <codeUsageScopeOptimizer implementation="com.intellij.compiler.JavaCompilerReferencesCodeUsageScopeOptimizer"/>
1828   </extensions>
1829
1830   <actions>
1831     <action id="ShowProjectStructureSettings" class="com.intellij.ide.actions.ShowStructureSettingsAction"
1832             icon="AllIcons.General.ProjectStructure">
1833       <add-to-group group-id="FileMainSettingsGroup" anchor="after" relative-to-action="ShowSettings"/>
1834       <add-to-group group-id="MainToolBarSettings" anchor="after" relative-to-action="ShowSettings"/>
1835       <add-to-group group-id="NavBarToolBar" anchor="last"/>
1836     </action>
1837     <action id="TemplateProjectStructure" class="com.intellij.ide.actions.TemplateProjectStructureAction">
1838       <add-to-group group-id="FileSettingsGroup" anchor="last"/>
1839     </action>
1840     <action id="ShowSiblings" class="com.intellij.codeInsight.hint.actions.ShowSiblingsAction">
1841       <add-to-group group-id="QuickActions" anchor="after" relative-to-action="QuickImplementations"/>
1842     </action>
1843     <action id="ShowRecentTests" class="com.intellij.testIntegration.ShowRecentTests">
1844       <keyboard-shortcut first-keystroke="control shift SEMICOLON" keymap="$default"/>
1845     </action>
1846     <action class="com.intellij.execution.testDiscovery.ConfigureTestDiscoveryAction" internal="true" id="TestDiscoveryIndexChooser" text="Choose external test discovery indices">
1847       <add-to-group group-id="Internal" anchor="last"/>
1848     </action>
1849   </actions>
1850
1851 </idea-plugin>