mock filetype manager if no application allows running lexer suites.
[fedora-idea.git] / platform-api / src / com / intellij / ExtensionPoints.java
blob1108c4de40b2e0f5891e1b890986b968df5aa9d3
1 /*
2 * Copyright 2000-2007 JetBrains s.r.o.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
16 package com.intellij;
18 import com.intellij.openapi.diagnostic.ErrorReportSubmitter;
19 import com.intellij.openapi.extensions.ExtensionPointName;
20 import org.jetbrains.annotations.NonNls;
22 /**
23 * Extension points provided by IDEA core are listed here.
25 public interface ExtensionPoints {
26 /**
27 * This extension point should be used instead of former application-components, project-components, module-components.
28 * Extension declaration sample is as follows:
29 * <pre>
30 * &lt;extensions xmlns="com.intellij"&gt;
31 * &lt;component area="IDEA_PROJECT"&gt;
32 * &lt;implementation&gt;my.plugin.pagckage.MyProjectComponent&lt;/implementation&gt;
33 * &lt;/component&gt;
34 * &lt;/extensions&gt;
35 * </pre>
36 * <p/>
37 * Possible registration areas are IDEA_PROJECT, MODULE_PROJECT which stand for ProjectComponent and ModuleComponent correspondingly.
38 * If area attribute is ommited the component will be registered in root area which corresponds to ApplicationComponent.
40 @NonNls String COMPONENT = "com.intellij.component";
42 /**
43 * This extension point allows a plugin vendor to provide the user ability to report fatal errors (aka exceptions) that happened in
44 * their plugin code.
45 * Extension declaration sample is as follows:
46 * <pre>
47 * &lt;extensions xmlns="com.intellij"&gt;
48 * &lt;errorHandler implementation="my.plugin.package.MyErrorHandler"/&gt;
49 * &lt;/extensions&gt;
50 * </pre>
51 * my.plugin.package.MyErrorHandler class must implement {@link com.intellij.openapi.diagnostic.ErrorReportSubmitter} abstract class.
53 @NonNls String ERROR_HANDLER = "com.intellij.errorHandler";
55 ExtensionPointName<ErrorReportSubmitter> ERROR_HANDLER_EP = ExtensionPointName.create(ERROR_HANDLER);
57 /**
58 * This extension point allows a plugin vendor to provide patches to junit run/debug configurations
59 * Extension declaration sample is as follows:
60 * <pre>
61 * &lt;extensions xmlns="com.intellij"&gt;
62 * &lt;junitPatcher implementation="my.plugin.package.MyJUnitPatcher"/&gt;
63 * &lt;/extensions&gt;
64 * </pre>
65 * my.plugin.package.MyJUnitPatcher class must implement {@link com.intellij.execution.JUnitPatcher} abstract class.
68 @NonNls String JUNIT_PATCHER = "com.intellij.junitPatcher";
70 /**
71 * This extensions allows to run custom [command-line] application based on IDEA platform
72 * <pre>
73 * &lt;extensions xmlns="com.intellij"&gt;
74 * &lt;applicationStarter implementation="my.plugin.package.MyApplicationStarter"/&gt;
75 * &lt;/extensions&gt;
76 * </pre>
77 * my.plugin.package.MyApplicationStarter class must implement {@link com.intellij.openapi.application.ApplicationStarter} interface.
79 @NonNls String APPLICATION_STARTER = "com.intellij.appStarter";
81 @NonNls String INVALID_PROPERTY_KEY_INSPECTION_TOOL = "com.intellij.invalidPropertyKeyInspectionTool";
82 @NonNls String I18N_INSPECTION_TOOL = "com.intellij.i18nInspectionTool";
83 @NonNls String FORM_INSPECTION_TOOL = "com.intellij.formInspectionTool";
84 @NonNls String JAVA15_INSPECTION_TOOL = "com.intellij.java15InspectionTool";
86 /**
87 * This extension allows to index occurrences of arbitrary regular expression patterns in the
88 * text of comments.
90 * @see com.intellij.psi.search.IndexPatternProvider
91 * @since 5.1
93 @NonNls String INDEX_PATTERN_PROVIDER = "com.intellij.indexPatternProvider";
95 @NonNls String INSPECTIONS_GRAPH_ANNOTATOR = "com.intellij.refGraphAnnotator";
97 @NonNls String INSPECTION_ENRTY_POINT = "com.intellij.entryPoint";
99 @NonNls String DEAD_CODE_TOOL = "com.intellij.deadCode";
101 @NonNls String JAVADOC_LOCAL = "com.intellij.javaDocNotNecessary";
103 @NonNls String VISIBLITY_TOOL = "com.intellij.visibility";
105 @NonNls String EMPTY_METHOD_TOOL = "com.intellij.canBeEmpty";
107 @NonNls String ANT_BUILD_GEN = "com.intellij.antBuildGen";
110 * Ant custom compiler extenstion point
112 @NonNls String ANT_CUSTOM_COMPILER = "com.intellij.antCustomCompiler";