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