blob: 0f7ae6a32e980c9c7c3d4a1c1850bae1bf5e162a [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta
http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<title>Checking WTP out</title>
<link
rel="stylesheet"
type="text/css"
href="../sources/formate.css">
</head>
<body>
<p class="ueberschrift">What's New for 2.0?</p>
<p>This document describes the API changes that have been made in the Faceted
Project Framework for WTP 2.0 release. Both Java API and extension point
changes are covered. Note that the Faceted Project Framework API remains
provisional for the 2.0 release. This means it will continue undergoing
further significant changes in future release(s).</p>
<ol>
<li><a href="#comparable">IProjectFacetVersion and IRuntimeComponentVersion Extend Comparable</a></li>
<li><a href="#requires-group">Requires Constraint Supports Groups</a></li>
<li><a href="#group-labels">Labels and Descriptions for Groups</a></li>
</ol>
<!-- ********************************************************************** -->
<p><font size="+1"><a name="#comparable">1. IProjectFacetVersion and IRuntimeComponentVersion Extend Comparable</a></font></p>
<!-- ********************************************************************** -->
<p>The IProjectFacetVersion and IRuntimeComponentVersion interfaces now extend
Comparable. Using the compareTo methods will yield significantly better performance
than calling the version comparator directly on the version strings as the
compareTo methods use pre-computed results and do not need to parse the version
strings.</p>
<p>As part of this change, IVersionExpr.evaluate( String ) method has been
replaced with IVersionExpr.check( Comparable ) method.</p>
<!-- ********************************************************************** -->
<p><font size="+1"><a name="#requires-group">2. Requires Constraint Supports Groups</a></font></p>
<!-- ********************************************************************** -->
<p>The requires constraint can now be declared using facet groups instead of
individual facets. Any member of the group will satisfy the constraint. This
allows a level of indirection so that a facet does not need to know about all of
the group members.</p>
<p><u>Extension Point Changes</u></p>
<table cellpadding="10"><tr><td width="10">&nbsp;</td><td bgcolor="#E2E2E2">
<pre>
<font color="#7B7B7B">&lt;extension point="org.eclipse.wst.common.project.facet.core.facets"&gt;
&lt;project-facet-version&gt;
&lt;constraint&gt;</font>
&lt;requires group="group.id"/&gt;
<font color="#7B7B7B">&lt;/constraint&gt;
&lt;/project-facet-version&gt;
&lt;extension&gt;</font>
</pre>
</td></tr></table>
<!-- ********************************************************************** -->
<p><font size="+1"><a name="group-labels">3. Labels and Descriptions for Groups</a></font></p>
<!-- ********************************************************************** -->
<p>It is now possible to associate labels and description with groups. Note that
groups are still automatically created on first use, so the use of the new group
element is only necessary in order to specify the label and the description.</p>
<p><u>Extension Points Changes</u></p>
<table cellpadding="10"><tr><td width="10">&nbsp;</td><td bgcolor="#E2E2E2">
<pre>
<font color="#7B7B7B">&lt;extension point="org.eclipse.wst.common.project.facet.core.facets"&gt;</font>
&lt;group id="..."&gt; <i>(0 or more)</i>
&lt;label&gt;...&lt/label&gt;
&lt;description&gt;...&lt/description&gt; <i>(0 or 1)</i>
&lt/group&gt;
<font color="#7B7B7B">&lt;extension&gt;</font>
</pre>
</td></tr></table>
<p><u>Java API Changes</u></p>
<table cellpadding="10"><tr><td width="10">&nbsp;</td><td bgcolor="#E2E2E2">
<pre>
<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IGroup
{</font>
String getLabel();
String getDescription();
<font color="#7B7B7B">}</font>
</pre>
</td></tr></table>
<p></p>
</body>
</html>