blob: d8667e691fe06bb90dc7c904e2f00c6eb0f87488 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.ui" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<meta.schema plugin="org.eclipse.ui" id="statusHandlers" name="Status handlers"/>
</appinfo>
<documentation>
&lt;p&gt;
This extension point is used to register implementations of status handlers in the workbench. A handler can be associated with a product and this association is also contributed via this extension point.
&lt;/p&gt;
&lt;p&gt;
Status handlers are part of the status handling facility. The facility is responsible for handling errors and other important issues in Eclipse based applications. The handlers are responsible for presenting this errors by logging or showing error dialogs.
&lt;/p&gt;
&lt;p&gt;
If there is no status handler associated with a product, the status handling facility uses the application handler defined in a workbench advisor.
&lt;/p&gt;
</documentation>
</annotation>
<element name="extension">
<annotation>
<appinfo>
<meta.element />
</appinfo>
</annotation>
<complexType>
<sequence>
<element ref="statusHandler" minOccurs="0" maxOccurs="unbounded"/>
<element ref="statusHandlerProductBinding" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
</documentation>
<appinfo>
<meta.attribute translatable="true"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="statusHandler">
<annotation>
<documentation>
This element is used to define a status handler.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="parameter" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
&lt;p&gt;
A unique identifier for this error handler. The id is used for setting default
error handler in a product.
If an error handler is to be the default one its id has to be set
in a product preference file in org.eclipse.ui/ERROR_HANDLER_ID property.
The name of the preference file is set in product extension
&quot;preferenceCustomization&quot; property.
&lt;/p&gt;
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
&lt;p&gt;
A fully qualified name of a class which extends &lt;code&gt;org.eclipse.ui.statushandlers.AbstractStatusHandler&lt;/code&gt;.
&lt;/p&gt;
</documentation>
<appinfo>
<meta.attribute kind="java" basedOn="org.eclipse.ui.statushandlers.AbstractStatusHandler"/>
</appinfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="parameter">
<annotation>
<appinfo>
<meta.element labelAttribute="name"/>
</appinfo>
<documentation>
&lt;p&gt;
This element defines parameters for instances of specified status handler class.
Instances of specified status handler class should understand this parameter.
&lt;/p&gt;
&lt;p&gt;
Handling policies can use handler parameters. For example default policy
use handlers &quot;prefix&quot; parameter. The default policy looks for the most specific
handler for given status checking status pluginId against these prefixes.
&lt;/p&gt;
</documentation>
</annotation>
<complexType>
<attribute name="name" type="string" use="required">
<annotation>
<documentation>
The name of a parameter.
</documentation>
</annotation>
</attribute>
<attribute name="value" type="string" use="required">
<annotation>
<documentation>
The value of a parameter.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="statusHandlerProductBinding">
<annotation>
<documentation>
&lt;p&gt;
Specifies a binding between a product and a status handler.
These bindings determine which handler is appropriate for the current product (as defined by &lt;code&gt;org.eclipse.core.runtime.Platform.getProduct()&lt;/code&gt;).
&lt;/p&gt;
</documentation>
</annotation>
<complexType>
<attribute name="productId" type="string" use="required">
<annotation>
<documentation>
The unique id of a product.
</documentation>
</annotation>
</attribute>
<attribute name="handlerId" type="string" use="required">
<annotation>
<documentation>
The unique id of a status handler.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appinfo>
<meta.section type="since"/>
</appinfo>
<documentation>
3.3
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="examples"/>
</appinfo>
<documentation>
&lt;p&gt;
The following is an example of the definition for handler with prefix parameter.
&lt;/p&gt;
&lt;p&gt;
&lt;pre&gt;
&lt;extension
point=&quot;org.eclipse.ui.statusHandlers&quot;&gt;
&lt;statusHandler
class=&quot;org.eclipse.ui.statushanders.SampleStatusHandler&quot;
id=&quot;sampleStatusHandler&quot;&gt;
&lt;parameter
name=&quot;prefix&quot;
value=&quot;org.eclipse.ui.ide&quot;&gt;
&lt;/parameter&gt;
&lt;/statusHandler&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
&lt;p&gt;
The following is an example of the definition for default (product) handler. The handler defined in the example will be default for product with id &quot;productId&quot;.
&lt;/p&gt;
&lt;p&gt;
&lt;pre&gt;
&lt;extension
point=&quot;org.eclipse.ui.statusHandlers&quot;&gt;
&lt;statusHandler
class=&quot;org.eclipse.ui.statushandlers.SampleStatusHandler&quot;
id=&quot;sampleStatusHandler&quot;&gt;
&lt;/statusHandler&gt;
&lt;statusHandlerProductBinding
handlerId=&quot;sampleStatusHandler&quot;
productId=&quot;productId&quot;&gt;
&lt;/statusHandlerProductBinding&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
&lt;p&gt;
Of course we can define only the binding (for instance in a product plugin).
The handler can be defined in other plugin.
&lt;/p&gt;
&lt;p&gt;
&lt;pre&gt;
&lt;extension
point=&quot;org.eclipse.ui.statusHandlers&quot;&gt;
&lt;statusHandlerProductBinding
handlerId=&quot;sampleStatusHandler&quot;
productId=&quot;productId&quot;&gt;
&lt;/statusHandlerProductBinding&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="apiInfo"/>
</appinfo>
<documentation>
&lt;/p&gt;
The value of the &lt;code&gt;class&lt;/code&gt; attribute in &lt;code&gt;statusHandler&lt;/code&gt; element must be the fully qualified name of a class that extends &lt;code&gt;org.eclipse.ui.statushandlers.AbstractStatusHandler&lt;/code&gt;.
&lt;/p&gt;
&lt;p&gt;
The &lt;code&gt;parameter&lt;/code&gt; elements in &lt;code&gt;statusHandler&lt;/code&gt; element adds parameters which can be used during handling in the status handler defined in &lt;code&gt;class&lt;/code&gt; attribute.
&lt;/p&gt;
&lt;p&gt;
The value of the &lt;code&gt;productId&lt;/code&gt; attribute in &lt;code&gt;statusHandlerProductBinding&lt;/code&gt; is full name of the product to which the handler with id defined in &lt;code&gt;handlerId&lt;/code&gt; attribute in &lt;code&gt;statusHandlerProductBinding&lt;/code&gt; will be associated.
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="implementation"/>
</appinfo>
<documentation>
&lt;p&gt;
The platform supplies basic implementation of &lt;code&gt;org.eclipse.ui.statushandlers.AbstractStatusHandler&lt;/code&gt;.
It is &lt;code&gt;org.eclipse.ui.statushandlers.WorkbenchErrorHandler&lt;/code&gt; which is the default workbench status handler.
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="copyright"/>
</appinfo>
<documentation>
Copyright (c) 2006, 2007 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>