blob: c0b79e9353eff0edd48ac5393360f24f3847ea13 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.jdt.ui" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<meta.schema plugin="org.eclipse.jdt.ui" id="classpathFixProcessors" name="Classpath Fix Processor"/>
</appinfo>
<documentation>
This extension point allows to add a processor to offer fixes for incomplete class paths when types cannot be resolved.
&lt;p&gt;
This extension point supports the &lt;code&gt;enablement&lt;/code&gt; tag. Properties to test on are:
&lt;dl&gt;
&lt;li&gt;project: type IJavaProject; the current project&lt;/li&gt;
&lt;li&gt;sourceLevel: type String; the source compliance of the current project&lt;/li&gt;
&lt;/dl&gt;
A processor can specify to override another processor. An overridden processor is only asked to provide proposals when the overriding processor returns &lt;code&gt;null&lt;/code&gt; as proposals.
&lt;/p&gt;
</documentation>
</annotation>
<include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
<element name="extension">
<complexType>
<sequence>
<element ref="classpathFixProcessor" minOccurs="1" 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="classpathFixProcessor">
<complexType>
<sequence>
<element ref="enablement" minOccurs="0" maxOccurs="1"/>
<element ref="overrides" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
a unique identifier for the Classpath Fix processor
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
a localized name of the Classpath 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 Classpath Fix processor. The
class must be public and extend
&lt;samp&gt;org.eclipse.jdt.ui.text.java.ClasspathFixProcessor&lt;/samp&gt;
with a public 0-argument constructor.
</documentation>
<appinfo>
<meta.attribute kind="java" basedOn="org.eclipse.jdt.ui.text.java.ClasspathFixProcessor:"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="overrides">
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The id of the classspath fix processor that is overridden by the current processor. The current processor can choose to replace proposals of extended processor.
</documentation>
<appinfo>
<meta.attribute kind="identifier" basedOn="org.eclipse.jdt.ui.classpathFixProcessors/classpathFixProcessor/@id"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appinfo>
<meta.section type="since"/>
</appinfo>
<documentation>
3.4
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="examples"/>
</appinfo>
<documentation>
The following is an example of a Classpath Fix processor contribution:
&lt;p&gt;
&lt;pre&gt;
&lt;extension point=&quot;org.eclipse.jdt.ui.classpathFixProcessors&quot;&gt;
&lt;classpathFixProcessor
id=&quot;MyClasspathFixProcessor&quot;
name=&quot;My Classpath Fix Processor&quot;
class=&quot;com.example.MyClasspathFixProcessor&quot;&gt;
&lt;enablement&gt;
&lt;with variable=&quot;project&quot;&gt;
&lt;test property=&quot;org.eclipse.jdt.core.isInJavaProjectWithNature&quot;
value=&quot;org.eclipse.pde.PluginNature&quot;/&gt;
&lt;/with&gt;
&lt;/enablement&gt;
&lt;overrides
id=&quot;org.eclipse.jdt.ui.text.correction.DefaultClasspathFixProcessor&quot;&gt;
&lt;/overrides&gt;
&lt;/classpathFixProcessor&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="apiInfo"/>
</appinfo>
<documentation>
The contributed class must extend &lt;code&gt;org.eclipse.jdt.ui.text.java.ClasspathFixProcessor&lt;/code&gt;
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="copyright"/>
</appinfo>
<documentation>
Copyright (c) 2007, 2008 IBM Corporation and others.&lt;br&gt;
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 &lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
</documentation>
</annotation>
</schema>