blob: 4a104c9fdbe3b1463b432c737085864ca717eb7b [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.wst.service.policy.ui" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appinfo>
<meta.schema plugin="org.eclipse.wst.service.policy.ui" id="servicepolicyui" name="Service policy UI"/>
</appinfo>
<documentation>
This extension allows extenders to add service policy UI operations for the
service policies that they have added.
</documentation>
</annotation>
<element name="extension">
<annotation>
<appinfo>
<meta.element />
</appinfo>
</annotation>
<complexType>
<sequence>
<element ref="servicePolicyUI" minOccurs="1" 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="servicePolicyUI">
<annotation>
<documentation>
This extension is intended for extenders who want to add UI operations to the Service policies that they have defined.
</documentation>
</annotation>
<complexType>
<choice>
<element ref="operation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="quickFix" minOccurs="0" maxOccurs="unbounded"/>
</choice>
</complexType>
</element>
<element name="descriptor">
<annotation>
<documentation>
A descriptor for this Service policy operation or action.
</documentation>
</annotation>
<complexType>
<attribute name="description" type="string">
<annotation>
<documentation>
A description of this service operation.
</documentation>
</annotation>
</attribute>
<attribute name="shortName" type="string">
<annotation>
<documentation>
The short name of this service operation. Note: if a short name is not specified it is defaulted to the value of the long name.
</documentation>
</annotation>
</attribute>
<attribute name="longName" type="string">
<annotation>
<documentation>
The long name of this service operation. Note: if a long name attribute is not specified it is defaulted to the shortName value.
</documentation>
</annotation>
</attribute>
<attribute name="contextHelpId" type="string">
<annotation>
<documentation>
The context help id for this service operation if it is required.
</documentation>
</annotation>
</attribute>
<attribute name="iconpath" type="string">
<annotation>
<documentation>
A plugin relative path to some icon file for this service operation.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="operation">
<annotation>
<documentation>
Defines a Service policy operation.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="descriptor"/>
<element ref="enabled" minOccurs="0" maxOccurs="1"/>
<choice>
<element ref="enumeration"/>
<element ref="selection"/>
<element ref="complex"/>
</choice>
</sequence>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
This unique id of this service operation.
</documentation>
</annotation>
</attribute>
<attribute name="policyPattern" type="string" use="required">
<annotation>
<documentation>
The attribute specifies which service polices this operation is associated with. Any Java regular expression may be specified. This expression will be used to match the ids of all known service policy ids.
</documentation>
</annotation>
</attribute>
<attribute name="workspaceOnly" type="boolean">
<annotation>
<documentation>
This attribute indicates if this operation is only to be used in the workspace preference page. If this attribute is not specified it is defaulted to false.
</documentation>
</annotation>
</attribute>
<attribute name="defaultdata" type="boolean" use="default" value="true">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="enumeration">
<annotation>
<documentation>
This element defines the enumeration that this operation is associated with.
</documentation>
</annotation>
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The id of this enumeration.
</documentation>
</annotation>
</attribute>
<attribute name="defaultItem" type="string">
<annotation>
<documentation>
Overrides the default set by the enumeration.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="selection">
<annotation>
<documentation>
This element indicates that the service policy operation is associated with a some kind of UI boolean selection. All service policies that are associated with this operation should use the org.eclipse.wst.service.policy.booleanEnum enumeration.
</documentation>
</annotation>
<complexType>
<attribute name="icon" type="boolean">
<annotation>
<documentation>
This boolean attribute indicates that the boolean selection should be rendered via an icon.
</documentation>
</annotation>
</attribute>
<attribute name="defaultItem" type="string">
<annotation>
<documentation>
Sets the default for this boolean selection the values can be either org.eclipse.wst.true or org.eclipse.wst.false.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="complex">
<annotation>
<documentation>
This element indicates that this operation is complex to render and persist. The launchClass attribute can be used to launch a dialog to set more complex data. The extender will need to call the service policy platform API to persist data on each policy as required.
</documentation>
</annotation>
<complexType>
<attribute name="launchClass" type="string" use="required">
<annotation>
<documentation>
A class that can be used to launch a dialog. The class specified must implement the ILaunchOperation interface.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="enabled">
<annotation>
<documentation>
Indicates if this operation is enabled/grayed out or not in the UI.
</documentation>
</annotation>
<complexType>
<attribute name="enabledClass" type="string">
<annotation>
<documentation>
The class specified in the attribute much implement the IEnableOperation interface. This class allows extenders to provide a more complex logic for when the operation should be enabled or not.
</documentation>
</annotation>
</attribute>
<attribute name="multiselect" type="string">
<annotation>
<documentation>
Indicates if this operation allows multiple selection of policy objects or not.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="quickFix">
<annotation>
<documentation>
This element allows extenders to add quick fixes to the Service policy UI frameworks.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="action" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="pluginId" type="string" use="required">
<annotation>
<documentation>
The plugin id that the enclosed quick fix actions apply to. This is the id that will match the plugin id from the IStatus of a ServicePolicy object.
</documentation>
</annotation>
</attribute>
<attribute name="code" type="string" use="required">
<annotation>
<documentation>
The code that the enclosed quick fix actions apply to. This is the code that will match the code from the IStatus of a ServicePolicy object.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="action">
<annotation>
<documentation>
The element is used to add a quick fix action.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="descriptor"/>
</sequence>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
The class that the framework will call for a particular quick fix action. This class must implement the IQuickFixAction interface.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appinfo>
<meta.section type="since"/>
</appinfo>
<documentation>
1.0
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="examples"/>
</appinfo>
<documentation>
[Enter extension point usage example here.]
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="apiInfo"/>
</appinfo>
<documentation>
[Enter API information here.]
</documentation>
</annotation>
<annotation>
<appinfo>
<meta.section type="implementation"/>
</appinfo>
<documentation>
[Enter information about supplied implementation of this extension point.]
</documentation>
</annotation>
</schema>