<?xml version='1.0' encoding='UTF-8'?> | |
<!-- Schema file written by PDE --> | |
<schema targetNamespace="org.eclipse.jdt.ui"> | |
<annotation> | |
<appInfo> | |
<meta.schema plugin="org.eclipse.jdt.ui" id="quickFixProcessors" name="Quick Fix Processor"/> | |
</appInfo> | |
<documentation> | |
This extension point allows to add a Quick Fix processor to offer new Quick Fixes on Java problems. | |
<p> | |
Since 3.2 an extension can specify which problem marker types it can handle. It will only get problems of these types to process. | |
If no handled marker type are specified, the processor will only get problems of types org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem and org.eclipse.jdt.core.task (compatible to the behaviour prior to 3.2). | |
</p> | |
<p> | |
This extension point supports the <code>enablement</code> tag. Properties to test on are: | |
<dl> | |
<li>compilationUnit: type ICompilationUnit; the compilation unit the quick assist is applied on</li> | |
<li>projectNatures: type Collection; all project natures of the current project</li> | |
<li>sourceLevel: type String; the source compliance of the current project</li> | |
</dl> | |
</p> | |
</documentation> | |
</annotation> | |
<include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/> | |
<element name="extension"> | |
<complexType> | |
<sequence> | |
<element ref="quickFixProcessor" minOccurs="0" maxOccurs="unbounded"/> | |
</sequence> | |
<attribute name="point" type="string" use="required"> | |
<annotation> | |
<documentation> | |
a fully qualified identifier of the target extension point | |
</documentation> | |
</annotation> | |
</attribute> | |
<attribute name="id" type="string"> | |
<annotation> | |
<documentation> | |
an optional identifier of the extension instance | |
</documentation> | |
</annotation> | |
</attribute> | |
<attribute name="name" type="string"> | |
<annotation> | |
<documentation> | |
an optional name of the extension instance | |
</documentation> | |
<appInfo> | |
<meta.attribute translatable="true"/> | |
</appInfo> | |
</annotation> | |
</attribute> | |
</complexType> | |
</element> | |
<element name="quickFixProcessor"> | |
<complexType> | |
<sequence> | |
<element ref="enablement"/> | |
<element ref="handledMarkerTypes" minOccurs="0" maxOccurs="unbounded"/> | |
</sequence> | |
<attribute name="id" type="string" use="required"> | |
<annotation> | |
<documentation> | |
Unique identifier for the Quick Fix processor | |
</documentation> | |
</annotation> | |
</attribute> | |
<attribute name="name" type="string"> | |
<annotation> | |
<documentation> | |
Localized name of the Quick Fix processor. | |
</documentation> | |
<appInfo> | |
<meta.attribute translatable="true"/> | |
</appInfo> | |
</annotation> | |
</attribute> | |
<attribute name="class" type="string" use="required"> | |
<annotation> | |
<documentation> | |
the name of the class that implements this Quick Fix processor. The | |
class must be public and implement | |
<samp>org.eclipse.jdt.ui.text.java.IQuickFixProcessor</samp> | |
with a public 0-argument constructor. | |
</documentation> | |
<appInfo> | |
<meta.attribute kind="java" basedOn="org.eclipse.jdt.ui.text.java.IQuickFixProcessor"/> | |
</appInfo> | |
</annotation> | |
</attribute> | |
<attribute name="requiredSourceLevel" type="string"> | |
<annotation> | |
<documentation> | |
Optional attribute to specify the minimal source compliance this processor requires. | |
</documentation> | |
</annotation> | |
</attribute> | |
</complexType> | |
</element> | |
<element name="handledMarkerTypes"> | |
<annotation> | |
<documentation> | |
Specifies the marker types of the problems this quick fix processor can handle. | |
If no handled marker type are specified, the processor will get problems of types org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem and org.eclipse.jdt.core.task. | |
</documentation> | |
</annotation> | |
<complexType> | |
<sequence> | |
<element ref="markerType" minOccurs="1" maxOccurs="unbounded"/> | |
</sequence> | |
</complexType> | |
</element> | |
<element name="markerType"> | |
<complexType> | |
<attribute name="id" type="string" use="required"> | |
<annotation> | |
<documentation> | |
The marker type id of the marker that can be handled by this processor | |
</documentation> | |
</annotation> | |
</attribute> | |
</complexType> | |
</element> | |
<annotation> | |
<appInfo> | |
<meta.section type="examples"/> | |
</appInfo> | |
<documentation> | |
The following is an example of a Quick Fix processor contribution: | |
<p> | |
<pre> | |
<extension point="org.eclipse.jdt.ui.quickFixProcessors"> | |
<quickFixProcessor | |
id="AdvancedQuickFixProcessor" | |
name="Advanced Quick Fix Processor" | |
requiredSourceLevel="1.5" | |
class="com.example.AdvancedQuickFixProcessor"> | |
<handledMarkerTypes> | |
<markerType id="org.eclipse.myplugin.audits"/> | |
</handledMarkerTypes> | |
<enablement> | |
<with variable="projectNatures"> | |
<iterate operator="or"> | |
<equals value="org.eclipse.jdt.core.javanature"/> | |
</iterate> | |
</with> | |
</enablement> | |
</quickFixProcessor> | |
</extension> | |
</pre> | |
</p> | |
</documentation> | |
</annotation> | |
<annotation> | |
<appInfo> | |
<meta.section type="since"/> | |
</appInfo> | |
<documentation> | |
Extension point since 3.0. Element <code>handledMarkerTypes</code> since 3.2. | |
</documentation> | |
</annotation> | |
<annotation> | |
<appInfo> | |
<meta.section type="apiInfo"/> | |
</appInfo> | |
<documentation> | |
The contributed class must implement <code>org.eclipse.jdt.ui.text.java.IQuickFixProcessor</code> | |
</documentation> | |
</annotation> | |
<annotation> | |
<appInfo> | |
<meta.section type="implementation"/> | |
</appInfo> | |
<documentation> | |
</documentation> | |
</annotation> | |
<annotation> | |
<appInfo> | |
<meta.section type="copyright"/> | |
</appInfo> | |
<documentation> | |
Copyright (c) 2001, 2006 IBM Corporation and others.<br> | |
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a> | |
</documentation> | |
</annotation> | |
</schema> |