blob: 2c646df9fec7db0203a05471d27b89c1dca38f20 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.objectteams.otequinox" xmlns="http://www.w3.org/2001/XMLSchema">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.objectteams.otequinox" id="aspectBindingNegotiators" name="OT/Equinox negotiators for aspect binding requests"/>
</appInfo>
<documentation>
Allow client plugins to participate in negotiation whether aspect binding requests
(incl. forced exports) should be denied or granted.
&lt;p&gt;
All extensions will be asked whenever an aspect plugin requests an aspect binding
or a forced export for which no permission could be found in persistent storage
of neither the eclipse installation nor the workspace.
&lt;ul&gt;
&lt;li&gt;As soon as any extension DENYs a given request this aspect plugin is blocked.&lt;/li&gt;
&lt;li&gt;If no extension GRANTs the request the aspect plugin is blocked, too.&lt;/li&gt;
&lt;li&gt;Only if at least one extension GRANTs the request and no extension DENYs
the aspect may proceed and will be woven into its base entities.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
</documentation>
</annotation>
<element name="extension">
<annotation>
<appInfo>
<meta.element />
</appInfo>
</annotation>
<complexType>
<sequence>
<element ref="negotiator" 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="negotiator">
<annotation>
<documentation>
A participant in the protocol for aspect binding negotiation,
which is able to grant or deny a request by an aspect bundle.
</documentation>
</annotation>
<complexType>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
Fully qualified name of the class that shall participate in the negotiation protocol.
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn=":org.eclipse.objectteams.otequinox.IAspectRequestNegotiator"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
OTDT 1.2.6
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
Example of a declaration of a &lt;code&gt;negotiator&lt;/code&gt;:&lt;pre&gt;
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;?eclipse version=&quot;3.2&quot;?&gt;
&lt;plugin&gt;
&lt;extension
point=&quot;org.eclipse.objectteams.otequinox.aspectBindingNegotiators&quot;&gt;
&lt;negotiator
class=&quot;yesser.AspectRequestGranter&quot;&gt;
&lt;/negotiator&gt;
&lt;/extension&gt;
&lt;/plugin&gt;
&lt;/pre&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
The class named in the &lt;code&gt;class&lt;/code&gt; property must implement the &lt;code&gt;org.eclipse.objectteams.otequinox.IAspectRequestNegotiator&lt;/code&gt; interface.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
&lt;em&gt;
&lt;p&gt;
This file is part of &quot;Object Teams Development Tooling&quot;-Software
&lt;/p&gt;&lt;p&gt;
Copyright 2009 Technical University Berlin, Germany.
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;
&lt;/p&gt;&lt;p&gt;
Please visit &lt;a href=&quot;http://www.eclipse.org/objectteams&quot;&gt;www.eclipse.org/objectteams&lt;/a&gt; for updates and contact.
&lt;/p&gt;&lt;p&gt;
Contributors:&lt;br&gt;
Technical University Berlin - Initial API and implementation
&lt;/p&gt;
&lt;/em&gt;
</documentation>
</annotation>
</schema>