This commit was manufactured by cvs2svn to create tag 'v200803312319'.
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.classpath b/plugins/org.eclipse.jst.common.project.facet.core/.classpath
deleted file mode 100644
index 304e861..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.cvsignore b/plugins/org.eclipse.jst.common.project.facet.core/.cvsignore
deleted file mode 100644
index 0f57cf1..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-bin
-@dot
-build.xml
-temp.folder
-src.zip
-javaCompiler...args
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.project b/plugins/org.eclipse.jst.common.project.facet.core/.project
deleted file mode 100644
index 9729cc8..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.jst.common.project.facet.core</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.core.resources.prefs b/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index bd20e56..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,3 +0,0 @@
-#Sun Apr 16 17:56:05 EDT 2006
-eclipse.preferences.version=1
-encoding/<project>=ISO-8859-1
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 11ff5cb..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,57 +0,0 @@
-#Sun Jun 03 01:19:49 EDT 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=error
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 4a66d5a..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,13 +0,0 @@
-#Sun Apr 16 17:55:02 EDT 2006
-compilers.p.build=0
-compilers.p.deprecated=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=0
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.use-project=true
-eclipse.preferences.version=1
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.common.project.facet.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 88d7d17..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Vendor: %providerName
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.common.project.facet.core; singleton:=true
-Bundle-Version: 1.3.0.qualifier
-Bundle-ClassPath: .
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.common.project.facet.core,
- org.eclipse.jst.common.project.facet.core.internal;x-internal:=true
-Require-Bundle: org.eclipse.core.resources;bundle-version="[3.2.0,4.0)",
- org.eclipse.core.runtime;bundle-version="[3.2.0,4.0)",
- org.eclipse.jdt.core;bundle-version="[3.2.0,4.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.jdt.launching;bundle-version="[3.4.0,4.0.0)",
- org.eclipse.wst.common.project.facet.ui;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.ui.ide;bundle-version="[3.4.0,4.0.0)"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/about.html b/plugins/org.eclipse.jst.common.project.facet.core/about.html
deleted file mode 100644
index 73db36e..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributors license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/build.properties b/plugins/org.eclipse.jst.common.project.facet.core/build.properties
deleted file mode 100644
index c4aeebe..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/build.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = .,\
- plugin.xml,\
- META-INF/,\
- plugin.properties,\
- component.xml,\
- about.html,\
- images/
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/component.xml b/plugins/org.eclipse.jst.common.project.facet.core/component.xml
deleted file mode 100644
index cdb37d8..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/component.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jst.common.project.facet">
- <description url=""></description>
- <component-depends unrestricted="true"></component-depends>
- <plugin id="org.eclipse.jst.common.project.facet.core" fragment="false"/>
-</component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/images/java-facet.gif b/plugins/org.eclipse.jst.common.project.facet.core/images/java-facet.gif
deleted file mode 100644
index 37cb4e7..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/images/java-facet.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/images/standard-jre-component.gif b/plugins/org.eclipse.jst.common.project.facet.core/images/standard-jre-component.gif
deleted file mode 100644
index cb55e33..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/images/standard-jre-component.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/plugin.properties b/plugins/org.eclipse.jst.common.project.facet.core/plugin.properties
deleted file mode 100644
index adb5dfe..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/plugin.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-pluginName = Project Facet Core (Java Support)
-providerName = Eclipse.org
-jstJavaFacetLabel = Java
-jstJavaFacetDescription = Adds support for writing applications using Java programming language.
-javaVersionMismatchMarkerName = Faceted Project Problem (Java Version Mismatch)
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/plugin.xml b/plugins/org.eclipse.jst.common.project.facet.core/plugin.xml
deleted file mode 100644
index d5362fb..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/plugin.xml
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
- <extension point="org.eclipse.core.runtime.adapters">
- <factory
- class="org.eclipse.jst.common.project.facet.core.internal.RuntimeClasspathProvider$Factory"
- adaptableType="org.eclipse.wst.common.project.facet.core.runtime.IRuntime">
- <adapter type="org.eclipse.jst.common.project.facet.core.IClasspathProvider"/>
- </factory>
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.runtimeBridges">
- <bridge
- id="org.eclipse.jst.common.project.facet.core.JavaRuntimeBridge"
- class="org.eclipse.jst.common.project.facet.core.internal.JavaRuntimeBridge"/>
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.runtimes">
-
- <runtime-component-type id="standard.jre"/>
- <runtime-component-version type="standard.jre" version="1.3"/>
- <runtime-component-version type="standard.jre" version="1.4"/>
- <runtime-component-version type="standard.jre" version="5.0"/>
- <runtime-component-version type="standard.jre" version="6.0"/>
-
- <supported>
- <facet id="jst.java" version="1.3"/>
- <runtime-component id="standard.jre" version="[1.3"/>
- </supported>
-
- <supported>
- <facet id="jst.java" version="1.4"/>
- <runtime-component id="standard.jre" version="[1.4"/>
- </supported>
-
- <supported>
- <facet id="jst.java" version="5.0"/>
- <runtime-component id="standard.jre" version="[5.0"/>
- </supported>
-
- <supported>
- <facet id="jst.java" version="6.0"/>
- <runtime-component id="standard.jre" version="[6.0"/>
- </supported>
-
- <adapter>
- <runtime-component id="standard.jre"/>
- <factory class="org.eclipse.jst.common.project.facet.core.internal.StandardJreClasspathProvider$Factory"/>
- <type class="org.eclipse.jst.common.project.facet.core.IClasspathProvider"/>
- </adapter>
-
- <adapter>
- <runtime-component id="standard.jre"/>
- <factory class="org.eclipse.jst.common.project.facet.core.internal.StandardJreComponentLabelProvider$Factory"/>
- <type class="org.eclipse.wst.common.project.facet.ui.IRuntimeComponentLabelProvider"/>
- </adapter>
-
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.ui.images">
- <image runtime-component-type="standard.jre"
- path="images/standard-jre-component.gif"/>
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="jst.java">
- <label>%jstJavaFacetLabel</label>
- <description>%jstJavaFacetDescription</description>
- <default-version provider="org.eclipse.jst.common.project.facet.core.internal.JavaFacetDefaultVersionProvider"/>
- </project-facet>
-
- <project-facet-version facet="jst.java" version="1.3">
- <constraint>
- <conflicts facet="wst.web"/>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="jst.java" version="1.4">
- <constraint>
- <conflicts facet="wst.web"/>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="jst.java" version="5.0">
- <constraint>
- <conflicts facet="wst.web"/>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="jst.java" version="6.0">
- <constraint>
- <conflicts facet="wst.web"/>
- </constraint>
- </project-facet-version>
-
- <action facet="jst.java" type="install">
- <delegate class="org.eclipse.jst.common.project.facet.core.internal.JavaFacetInstallDelegate"/>
- <config-factory class="org.eclipse.jst.common.project.facet.core.internal.JavaFacetInstallConfigFactory"/>
- </action>
-
- <action facet="jst.java" type="version-change">
- <delegate class="org.eclipse.jst.common.project.facet.core.internal.JavaFacetVersionChangeDelegate"/>
- </action>
-
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.ui.images">
- <image facet="jst.java" path="images/java-facet.gif"/>
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.listeners">
- <listener
- class="org.eclipse.jst.common.project.facet.core.internal.JavaFacetRuntimeChangedListener"
- eventTypes="PRIMARY_RUNTIME_CHANGED"/>
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.validators">
- <validator class="org.eclipse.jst.common.project.facet.core.internal.JavaFacetValidator">
- <facet id="jst.java"/>
- </validator>
- </extension>
-
- <extension
- point="org.eclipse.core.resources.markers"
- id="javaVersionMismatch"
- name="%javaVersionMismatchMarkerName">
- <super type="org.eclipse.wst.common.project.facet.core.validation.marker"/>
- <attribute name="facetVersion"/>
- <attribute name="compilerLevel"/>
- <persistent value="true"/>
- </extension>
-
- <extension
- point="org.eclipse.ui.ide.markerResolution">
- <markerResolutionGenerator
- markerType="org.eclipse.jst.common.project.facet.core.javaVersionMismatch"
- class="org.eclipse.jst.common.project.facet.core.internal.JavaVersionMismatchMarkerResolutions">
- </markerResolutionGenerator>
- </extension>
-
-
-</plugin>
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.java
deleted file mode 100644
index d186075..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.java
+++ /dev/null
@@ -1,467 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ProjectScope;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
-import org.osgi.service.prefs.BackingStoreException;
-import org.osgi.service.prefs.Preferences;
-
-/**
- * <p>A utility used in conjunction with IClasspathProvider in order to manage
- * the bookkeeping when project facets are installed and uninstalled, and when
- * the bound runtime changes. This utility tracks which classpath entries were
- * added to the project by which facet and stores this information in a project
- * metadata file. This enables the classpath entries to be removed without
- * knowing what they are. It is only necessary to know which facet added them.
- * This utility supports the case where the same classpath entry is added by
- * multiple project facets. In this situation, a classpath entry is only
- * removed when the removal has been requested for all of the facets that added
- * it.</p>
- *
- * <p>Typically the project facet author will write something like this in the
- * install delegate:</p>
- *
- * <pre>
- * if( ! ClasspathHelper.addClasspathEntries( project, fv )
- * {
- * // Handle the case when there is no bound runtime or when the bound
- * // runtime cannot provide classpath entries for this facet.
- *
- * final List alternate = ...;
- * ClasspathHelper.addClasspathEntries( project, fv, alternate );
- * }
- * </pre>
- *
- * <p>And something like this in the uninstall delegate:</p>
- *
- * <pre>
- * ClasspathHelper.removeClasspathEntries( project, fv );
- * </pre>
- *
- * <p>And something like this in the runtime changed delegate:</p>
- *
- * <pre>
- * ClasspathHelper.removeClasspathEntries( project, fv );
- *
- * if( ! ClasspathHelper.addClasspathEntries( project, fv )
- * {
- * // Handle the case when there is no bound runtime or when the bound
- * // runtime cannot provide classpath entries for this facet.
- *
- * final List alternate = ...;
- * ClasspathHelper.addClasspathEntries( project, fv, alternate );
- * }
- * </pre>
- *
- * <p>And something like this in the version change delegate:</p>
- *
- * <pre>
- * final IProjectFacetVersion oldver
- * = fproj.getInstalledVersion( fv.getProjectFacet() );
- *
- * ClasspathHelper.removeClasspathEntries( project, oldver );
- *
- * if( ! ClasspathHelper.addClasspathEntries( project, fv )
- * {
- * // Handle the case when there is no bound runtime or when the bound
- * // runtime cannot provide classpath entries for this facet.
- *
- * final List alternate = ...;
- * ClasspathHelper.addClasspathEntries( project, fv, alternate );
- * }
- * </pre>
- *
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class ClasspathHelper
-{
- private static final String PLUGIN_ID
- = "org.eclipse.jst.common.project.facet.core";
-
- private static final Object SYSTEM_OWNER = new Object();
-
- private ClasspathHelper() {}
-
- /**
- * Convenience method for adding to the project the classpath entries
- * provided for the specified project facet by the runtime bound to the
- * project. The entries are marked as belonging to the specified project
- * facet.
- *
- * @param project the project
- * @param fv the project facet version that will own these entries
- * @return <code>true</code> if classpath entries were added, or
- * <code>false</code> if there is no runtime bound to the project or if
- * it cannot provide classpath entries for the specified facet
- * @throws CoreException if failed while adding the classpath entries
- */
-
- public static boolean addClasspathEntries( final IProject project,
- final IProjectFacetVersion fv )
-
- throws CoreException
-
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( project );
-
- final IRuntime runtime = fproj.getPrimaryRuntime();
-
- if( runtime != null )
- {
- final IClasspathProvider cpprov
- = (IClasspathProvider) runtime.getAdapter( IClasspathProvider.class );
-
- final List cpentries = cpprov.getClasspathEntries( fv );
-
- if( cpentries != null )
- {
- addClasspathEntries( project, fv, cpentries );
- return true;
- }
- }
-
- return false;
- }
-
- /**
- * Add the provided classpath entries to project and marks them as belonging
- * to the specified project facet.
- *
- * @param project the project
- * @param fv the project facet version that will own these entries
- * @param cpentries the classpath entries (element type:
- * {@see IClasspathEntry})
- * @throws CoreException if failed while adding the classpath entries
- */
-
- public static void addClasspathEntries( final IProject project,
- final IProjectFacetVersion fv,
- final List cpentries )
-
- throws CoreException
-
- {
- try
- {
- final IJavaProject jproj = JavaCore.create( project );
- final List cp = getClasspath( jproj );
- boolean cpchanged = false;
-
- final Map prefs = readPreferences( project );
-
- for( Iterator itr = cpentries.iterator(); itr.hasNext(); )
- {
- final IClasspathEntry cpentry = (IClasspathEntry) itr.next();
- final IPath path = cpentry.getPath();
-
- final boolean contains = cp.contains( cpentry );
-
- Set owners = (Set) prefs.get( path );
-
- if( owners == null )
- {
- owners = new HashSet();
-
- if( contains )
- {
- owners.add( SYSTEM_OWNER );
- }
-
- prefs.put( path, owners );
- }
-
- owners.add( fv );
-
- if( ! contains )
- {
- cp.add( cpentry );
- cpchanged = true;
- }
- }
-
- if( cpchanged )
- {
- setClasspath( jproj, cp );
- }
-
- writePreferences( project, prefs );
- }
- catch( BackingStoreException e )
- {
- final IStatus st
- = new Status( IStatus.ERROR, PLUGIN_ID, 0,
- Resources.failedWritingPreferences, e );
-
- throw new CoreException( st );
- }
- }
-
- /**
- * Removes the classpath entries belonging to the specified project facet.
- * Any entries that also belong to another facet are left in place.
- *
- * @param project the project
- * @param fv the project facet that owns the entries that should be removed
- * @throws CoreException if failed while removing classpath entries
- */
-
- public static void removeClasspathEntries( final IProject project,
- final IProjectFacetVersion fv )
-
- throws CoreException
-
- {
- try
- {
- final IJavaProject jproj = JavaCore.create( project );
- final List cp = getClasspath( jproj );
- boolean cpchanged = false;
-
- final Map prefs = readPreferences( project );
-
- for( Iterator itr1 = prefs.entrySet().iterator(); itr1.hasNext(); )
- {
- final Map.Entry entry = (Map.Entry) itr1.next();
- final IPath path = (IPath) entry.getKey();
- final Set owners = (Set) entry.getValue();
-
- if( owners.contains( fv ) )
- {
- owners.remove( fv );
-
- if( owners.size() == 0 )
- {
- itr1.remove();
-
- for( Iterator itr2 = cp.iterator(); itr2.hasNext(); )
- {
- final IClasspathEntry cpentry
- = (IClasspathEntry) itr2.next();
-
- if( cpentry.getPath().equals( path ) )
- {
- itr2.remove();
- cpchanged = true;
- break;
- }
- }
- }
- }
- }
-
- if( cpchanged )
- {
- setClasspath( jproj, cp );
- }
-
- writePreferences( project, prefs );
- }
- catch( BackingStoreException e )
- {
- final IStatus st
- = new Status( IStatus.ERROR, PLUGIN_ID, 0,
- Resources.failedWritingPreferences, e );
-
- throw new CoreException( st );
- }
- }
-
- private static List getClasspath( final IJavaProject jproj )
-
- throws CoreException
-
- {
- final ArrayList list = new ArrayList();
- final IClasspathEntry[] cp = jproj.getRawClasspath();
-
- for( int i = 0; i < cp.length; i++ )
- {
- list.add( cp[ i ] );
- }
-
- return list;
- }
-
- private static void setClasspath( final IJavaProject jproj,
- final List cp )
-
- throws CoreException
-
- {
- final IClasspathEntry[] newcp
- = (IClasspathEntry[]) cp.toArray( new IClasspathEntry[ cp.size() ] );
-
- jproj.setRawClasspath( newcp, null );
- }
-
- private static Map readPreferences( final IProject project )
-
- throws BackingStoreException
-
- {
- final Preferences root = getPreferencesNode( project );
- final Map result = new HashMap();
-
- final String[] keys = root.childrenNames();
-
- for( int i = 0; i < keys.length; i++ )
- {
- final String key = keys[ i ];
- final Preferences node = root.node( key );
-
- final String owners = node.get( "owners", null );
- final String[] split = owners.split( ";" );
- final Set set = new HashSet();
-
- for( int j = 0; j < split.length; j++ )
- {
- final String segment = split[ j ];
-
- if( segment.equals( "#system#" ) )
- {
- set.add( SYSTEM_OWNER );
- }
- else
- {
- final IProjectFacetVersion fv
- = parseFeatureVersion( segment );
-
- set.add( fv );
- }
- }
-
- result.put( decode( key ), set );
- }
-
- return result;
- }
-
- private static void writePreferences( final IProject project,
- final Map prefs )
-
- throws BackingStoreException
-
- {
- final Preferences root = getPreferencesNode( project );
- final String[] children = root.childrenNames();
-
- for( int i = 0; i < children.length; i++ )
- {
- root.node( children[ i ] ).removeNode();
- }
-
- for( Iterator itr1 = prefs.entrySet().iterator(); itr1.hasNext(); )
- {
- final Map.Entry entry = (Map.Entry) itr1.next();
- final IPath path = (IPath) entry.getKey();
- final Set owners = (Set) entry.getValue();
-
- final StringBuffer buf = new StringBuffer();
-
- for( Iterator itr2 = owners.iterator(); itr2.hasNext(); )
- {
- final Object owner = itr2.next();
-
- if( buf.length() > 0 )
- {
- buf.append( ';' );
- }
-
- if( owner == SYSTEM_OWNER )
- {
- buf.append( "#system#" );
- }
- else
- {
- final IProjectFacetVersion fv
- = (IProjectFacetVersion) owner;
-
- buf.append( fv.getProjectFacet().getId() );
- buf.append( ':' );
- buf.append( fv.getVersionString() );
- }
- }
-
- final Preferences node = root.node( encode( path ) );
- node.put( "owners", buf.toString() );
- }
-
- root.flush();
- }
-
-
- private static Preferences getPreferencesNode( final IProject project )
- {
- final ProjectScope scope = new ProjectScope( project );
- final IEclipsePreferences pluginRoot = scope.getNode( PLUGIN_ID );
- return pluginRoot.node( "classpath.helper" );
- }
-
- private static IProjectFacetVersion parseFeatureVersion( final String str )
- {
- final int colon = str.indexOf( ':' );
- final String id = str.substring( 0, colon );
- final String ver = str.substring( colon + 1 );
-
- return ProjectFacetsManager.getProjectFacet( id ).getVersion( ver );
- }
-
- private static String encode( final IPath path )
- {
- return path.toString().replaceAll( "/", "::" );
- }
-
- private static IPath decode( final String path )
- {
- return new Path( path.replaceAll( "::", "/" ) );
- }
-
- private static final class Resources
-
- extends NLS
-
- {
- public static String failedWritingPreferences;
-
- static
- {
- initializeMessages( ClasspathHelper.class.getName(),
- Resources.class );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.properties b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.properties
deleted file mode 100644
index cb5aee1..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/ClasspathHelper.properties
+++ /dev/null
@@ -1 +0,0 @@
-failedWritingPreferences = Failed while writing preferences.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/IClasspathProvider.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/IClasspathProvider.java
deleted file mode 100644
index 8802dda..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/IClasspathProvider.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core;
-
-import java.util.List;
-
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * The interface implemented by a runtime component adapter in order to provide
- * classpath entries for project facets. For convenience, the runtime can also
- * be adapted to this interface. That adapter will delegate to the runtime
- * components in the order that they are listed in the runtime. The first one
- * that can provide classpath entries for the specified project facet wins.
- *
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public interface IClasspathProvider
-{
- /**
- * Returns the classpath entries for the specified project facet.
- *
- * @param fv the project facet version
- * @return returns the classpath entries for the specified project facet, or
- * <code>null</code> if this provider does not provide classpath entries
- * for the given project facet
- */
-
- List<IClasspathEntry> getClasspathEntries( IProjectFacetVersion fv );
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacet.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacet.java
deleted file mode 100644
index c842dfe..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacet.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jst.common.project.facet.core.internal.FacetedProjectFrameworkJavaPlugin;
-import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacet
-{
- public static final String ID = "jst.java"; //$NON-NLS-1$
-
- public static final IProjectFacet FACET
- = ProjectFacetsManager.getProjectFacet( ID );
-
- public static final IProjectFacetVersion JAVA_13
- = FACET.getVersion( "1.3" ); //$NON-NLS-1$
-
- public static final IProjectFacetVersion JAVA_14
- = FACET.getVersion( "1.4" ); //$NON-NLS-1$
-
- public static final IProjectFacetVersion JAVA_50
- = FACET.getVersion( "5.0" ); //$NON-NLS-1$
-
- public static final IProjectFacetVersion JAVA_60
- = FACET.getVersion( "6.0" ); //$NON-NLS-1$
-
- public static boolean isInstalled( final IProject project )
- {
- try
- {
- return FacetedProjectFramework.hasProjectFacet( project, ID );
- }
- catch( CoreException e )
- {
- FacetedProjectFrameworkJavaPlugin.log( e );
- return false;
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacetInstallConfig.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacetInstallConfig.java
deleted file mode 100644
index 3d51d0c..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/JavaFacetInstallConfig.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.CopyOnWriteArrayList;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.common.project.facet.core.util.EventListenerRegistry;
-import org.eclipse.wst.common.project.facet.core.util.IEventListener;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class JavaFacetInstallConfig
-{
- private static final String PROD_PROP_SOURCE_FOLDER = "defaultJavaSourceFolder"; //$NON-NLS-1$
- private static final String PROD_PROP_SOURCE_FOLDER_LEGACY = "defaultSource"; //$NON-NLS-1$
- private static final String DEFAULT_SOURCE_FOLDER = "src"; //$NON-NLS-1$
-
- private static final String PROD_PROP_OUTPUT_FOLDER = "defaultJavaOutputFolder"; //$NON-NLS-1$
- private static final String PROD_PROP_OUTPUT_FOLDER_LEGACY = "outputFolder"; //$NON-NLS-1$
- private static final String DEFAULT_OUTPUT_FOLDER = "build/classes"; //$NON-NLS-1$
-
- public static class ChangeEvent
- {
- public enum Type
- {
- SOURCE_FOLDERS_CHANGED,
- DEFAULT_OUTPUT_FOLDER_CHANGED
- }
-
- private final Type type;
- private final JavaFacetInstallConfig installConfig;
-
- ChangeEvent( final Type type,
- final JavaFacetInstallConfig installConfig )
- {
- this.type = type;
- this.installConfig = installConfig;
- }
-
- public final Type getType()
- {
- return this.type;
- }
-
- public final JavaFacetInstallConfig getJavaFacetInstallConfig()
- {
- return this.installConfig;
- }
- }
-
- private EventListenerRegistry<ChangeEvent.Type,ChangeEvent> listeners;
- private List<IPath> sourceFolders;
- private List<IPath> sourceFoldersReadOnly;
- private IPath defaultOutputFolder;
-
- public JavaFacetInstallConfig()
- {
- this.listeners = new EventListenerRegistry<ChangeEvent.Type,ChangeEvent>( ChangeEvent.Type.class );
-
- this.sourceFolders = new CopyOnWriteArrayList<IPath>();
- this.sourceFoldersReadOnly = Collections.unmodifiableList( this.sourceFolders );
- this.defaultOutputFolder = null;
-
- String sourceFolder = getProductProperty( PROD_PROP_SOURCE_FOLDER );
-
- if( sourceFolder == null )
- {
- sourceFolder = getProductProperty( PROD_PROP_SOURCE_FOLDER_LEGACY );
- }
-
- if( sourceFolder == null )
- {
- sourceFolder = DEFAULT_SOURCE_FOLDER;
- }
-
- this.sourceFolders.add( new Path( sourceFolder ) );
-
- String outputFolder = getProductProperty( PROD_PROP_OUTPUT_FOLDER );
-
- if( outputFolder == null )
- {
- outputFolder = getProductProperty( PROD_PROP_OUTPUT_FOLDER_LEGACY );
- }
-
- if( outputFolder == null )
- {
- outputFolder = DEFAULT_OUTPUT_FOLDER;
- }
-
- this.defaultOutputFolder = new Path( outputFolder );
- }
-
- public List<IPath> getSourceFolders()
- {
- return this.sourceFoldersReadOnly;
- }
-
- public void setSourceFolders( final List<IPath> paths )
- {
- if( ! this.sourceFolders.equals( paths ) )
- {
- this.sourceFolders.clear();
- this.sourceFolders.addAll( paths );
-
- final ChangeEvent event = new ChangeEvent( ChangeEvent.Type.SOURCE_FOLDERS_CHANGED, this );
- this.listeners.notifyListeners( ChangeEvent.Type.SOURCE_FOLDERS_CHANGED, event );
- }
- }
-
- public void setSourceFolder( final IPath path )
- {
- final List<IPath> newSourceFolders;
-
- if( path == null )
- {
- newSourceFolders = Collections.emptyList();
- }
- else
- {
- newSourceFolders = Collections.singletonList( path );
- }
-
- setSourceFolders( newSourceFolders );
- }
-
- public void addSourceFolder( final IPath path )
- {
- final List<IPath> newSourceFolders = new ArrayList<IPath>( getSourceFolders() );
- newSourceFolders.add( path );
- setSourceFolders( newSourceFolders );
- }
-
- public void removeSourceFolder( final IPath path )
- {
- final List<IPath> newSourceFolders = new ArrayList<IPath>( getSourceFolders() );
- newSourceFolders.remove( path );
- setSourceFolders( newSourceFolders );
- }
-
- public IPath getDefaultOutputFolder()
- {
- return this.defaultOutputFolder;
- }
-
- public void setDefaultOutputFolder( final IPath defaultOutputFolder )
- {
- if( ! equal( this.defaultOutputFolder, defaultOutputFolder ) )
- {
- this.defaultOutputFolder = defaultOutputFolder;
-
- final ChangeEvent event = new ChangeEvent( ChangeEvent.Type.DEFAULT_OUTPUT_FOLDER_CHANGED, this );
- this.listeners.notifyListeners( ChangeEvent.Type.DEFAULT_OUTPUT_FOLDER_CHANGED, event );
- }
- }
-
- public void addListener( final IEventListener<ChangeEvent> listener,
- final ChangeEvent.Type... types )
- {
- this.listeners.addListener( listener, types );
- }
-
- public void removeListener( final IEventListener<ChangeEvent> listener )
- {
- this.listeners.removeListener( listener );
- }
-
- private static boolean equal( final Object obj1,
- final Object obj2 )
- {
- if( obj1 == null || obj2 == null )
- {
- return false;
- }
- else
- {
- return obj1.equals( obj2 );
- }
- }
-
- private static String getProductProperty( final String propName )
- {
- String value = null;
-
- if( Platform.getProduct() != null )
- {
- value = Platform.getProduct().getProperty( propName );
- }
-
- return value;
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/StandardJreRuntimeComponent.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/StandardJreRuntimeComponent.java
deleted file mode 100644
index 4dfa365..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/StandardJreRuntimeComponent.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstall2;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponentType;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponentVersion;
-import org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class StandardJreRuntimeComponent
-{
- public static final String TYPE_ID = "standard.jre"; //$NON-NLS-1$
-
- public static final IRuntimeComponentType TYPE
- = RuntimeManager.getRuntimeComponentType( TYPE_ID );
-
- public static final IRuntimeComponentVersion VERSION_1_3
- = TYPE.getVersion( "1.3" ); //$NON-NLS-1$
-
- public static final IRuntimeComponentVersion VERSION_1_4
- = TYPE.getVersion( "1.4" ); //$NON-NLS-1$
-
- public static final IRuntimeComponentVersion VERSION_5_0
- = TYPE.getVersion( "5.0" ); //$NON-NLS-1$
-
- public static final IRuntimeComponentVersion VERSION_6_0
- = TYPE.getVersion( "6.0" ); //$NON-NLS-1$
-
- public static final String PROP_VM_INSTALL_TYPE = "vm-install-type"; //$NON-NLS-1$
- public static final String PROP_VM_INSTALL_ID = "vm-install-id"; //$NON-NLS-1$
-
- public static IRuntimeComponent create( final IVMInstall vmInstall )
- {
- String jvmver = null;
-
- if( vmInstall instanceof IVMInstall2 )
- {
- final IVMInstall2 vmInstall2 = (IVMInstall2) vmInstall;
- jvmver = vmInstall2.getJavaVersion();
- }
-
- final IRuntimeComponentVersion rcv;
-
- if( jvmver == null )
- {
- rcv = StandardJreRuntimeComponent.VERSION_6_0;
- }
- else if( jvmver.startsWith( "1.3" ) )
- {
- rcv = StandardJreRuntimeComponent.VERSION_1_3;
- }
- else if( jvmver.startsWith( "1.4" ) )
- {
- rcv = StandardJreRuntimeComponent.VERSION_1_4;
- }
- else if( jvmver.startsWith( "1.5" ) || jvmver.startsWith( "5.0" ) )
- {
- rcv = StandardJreRuntimeComponent.VERSION_5_0;
- }
- else if( jvmver.startsWith( "1.6" ) || jvmver.startsWith( "6.0" ) )
- {
- rcv = StandardJreRuntimeComponent.VERSION_6_0;
- }
- else
- {
- rcv = StandardJreRuntimeComponent.VERSION_6_0;
- }
-
- final Map<String,String> properties = new HashMap<String,String>();
-
- if( vmInstall != null )
- {
- properties.put( StandardJreRuntimeComponent.PROP_VM_INSTALL_TYPE,
- vmInstall.getVMInstallType().getId() );
-
- properties.put( StandardJreRuntimeComponent.PROP_VM_INSTALL_ID,
- vmInstall.getId() );
- }
-
- return RuntimeManager.createRuntimeComponent( rcv, properties );
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/FacetedProjectFrameworkJavaPlugin.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/FacetedProjectFrameworkJavaPlugin.java
deleted file mode 100644
index 20e167d..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/FacetedProjectFrameworkJavaPlugin.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class FacetedProjectFrameworkJavaPlugin
-{
- public static final String PLUGIN_ID = "org.eclipse.jst.common.project.facet.core";
-
- private static final ILog platformLog
- = Platform.getLog( Platform.getBundle( PLUGIN_ID ) );
-
- public static void log( final Exception e )
- {
- final String msg = e.getMessage() + ""; //$NON-NLS-1$
- log( new Status( IStatus.ERROR, PLUGIN_ID, IStatus.OK, msg, e ) );
- }
-
- public static void log( final IStatus status )
- {
- platformLog.log( status );
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetDefaultVersionProvider.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetDefaultVersionProvider.java
deleted file mode 100644
index 4b80a91..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetDefaultVersionProvider.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.wst.common.project.facet.core.IDefaultVersionProvider;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * Defaults the java facet version to align with workspace java compiler
- * level settings.
- *
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetDefaultVersionProvider
-
- implements IDefaultVersionProvider
-
-{
- public IProjectFacetVersion getDefaultVersion()
- {
- final String compilerLevel = JavaFacetUtil.getCompilerLevel();
- return JavaFacetUtil.compilerLevelToFacet( compilerLevel );
- }
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallConfigFactory.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallConfigFactory.java
deleted file mode 100644
index 7cad6ff..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallConfigFactory.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig;
-import org.eclipse.wst.common.project.facet.core.IActionConfigFactory;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetInstallConfigFactory
-
- implements IActionConfigFactory
-
-{
- public Object create()
- {
- return new JavaFacetInstallConfig();
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallDelegate.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallDelegate.java
deleted file mode 100644
index c78cb13..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetInstallDelegate.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetInstallDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object cfg,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
-
- final JavaFacetInstallConfig config = castToConfig( cfg );
-
- // Create the source and the output directories.
-
- IJavaProject jproject = null;
-
- if( project.exists() )
- {
- jproject = JavaCore.create( project );
- }
-
- if( ! jproject.exists() )
- {
- final List<IClasspathEntry> cp = new ArrayList<IClasspathEntry>();
-
- for( IPath srcFolderPath : config.getSourceFolders() )
- {
- final IFolder folder = project.getFolder( srcFolderPath );
- mkdirs( folder );
-
- cp.add( JavaCore.newSourceEntry( folder.getFullPath() ) );
- }
-
- final IFolder defOutputFolder = project.getFolder( config.getDefaultOutputFolder() );
- mkdirs( defOutputFolder );
-
- // Add the java nature. This will automatically add the builder.
-
- final IProjectDescription desc = project.getDescription();
- final String[] current = desc.getNatureIds();
- final String[] replacement = new String[ current.length + 1 ];
- System.arraycopy( current, 0, replacement, 0, current.length );
- replacement[ current.length ] = JavaCore.NATURE_ID;
- desc.setNatureIds( replacement );
- project.setDescription( desc, null );
-
- // Setup the classpath.
-
- jproject.setRawClasspath( cp.toArray( new IClasspathEntry[ cp.size() ] ),
- defOutputFolder.getFullPath(), null );
-
- JavaFacetUtil.resetClasspath( project, null, fv );
- JavaFacetUtil.setCompilerLevel( project, fv );
- }
- else
- {
- // Set the compiler compliance level for the project. Ignore whether
- // this might already be set so at the workspace level in case
- // workspace settings change later or the project is included in a
- // different workspace.
-
- String oldCompilerLevel = JavaFacetUtil.getCompilerLevel( project );
- JavaFacetUtil.setCompilerLevel( project, fv );
-
- String newCompilerLevel = JavaFacetUtil.getCompilerLevel( project );
-
- // Schedule a full build of the project if the compiler level changed
- // because we want classes in the project to be recompiled.
-
- if( newCompilerLevel != null && ! newCompilerLevel.equals( oldCompilerLevel ) )
- {
- JavaFacetUtil.scheduleFullBuild( project );
- }
- }
- }
-
- private static JavaFacetInstallConfig castToConfig( final Object cfg )
- {
- if( cfg instanceof JavaFacetInstallConfig )
- {
- return (JavaFacetInstallConfig) cfg;
- }
- else
- {
- final IAdapterManager manager = Platform.getAdapterManager();
- return (JavaFacetInstallConfig) manager.getAdapter( cfg, JavaFacetInstallConfig.class );
- }
- }
-
- private static void mkdirs( final IFolder folder )
-
- throws CoreException
-
- {
- if( ! folder.exists() )
- {
- final IContainer parent = folder.getParent();
-
- if( parent instanceof IFolder )
- {
- mkdirs( (IFolder) parent );
- }
-
- folder.create( true, true, null );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetRuntimeChangedListener.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetRuntimeChangedListener.java
deleted file mode 100644
index 782b155..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetRuntimeChangedListener.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetRuntimeChangedListener
-
- implements IFacetedProjectListener
-
-{
- public void handleEvent( final IFacetedProjectEvent event )
- {
- final IFacetedProject fproj = event.getProject();
-
- if( fproj.hasProjectFacet( JavaFacet.FACET ) )
- {
- final IProjectFacetVersion fv = fproj.getInstalledVersion( JavaFacet.FACET );
-
- try
- {
- JavaFacetUtil.resetClasspath( fproj.getProject(), fv, fv );
- }
- catch( CoreException e )
- {
- FacetedProjectFrameworkJavaPlugin.log( e );
- }
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.java
deleted file mode 100644
index e9d92b8..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.java
+++ /dev/null
@@ -1,314 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.Collections;
-import java.util.Hashtable;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ProjectScope;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubProgressMonitor;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.common.project.facet.core.ClasspathHelper;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetUtil
-{
- public static String getCompilerLevel()
- {
- final IScopeContext context = new InstanceScope();
- final IEclipsePreferences prefs = context.getNode( JavaCore.PLUGIN_ID );
- String level = prefs.get( JavaCore.COMPILER_COMPLIANCE, null );
-
- if( level == null )
- {
- final Hashtable defaults = JavaCore.getDefaultOptions();
- level = (String) defaults.get( JavaCore.COMPILER_COMPLIANCE );
- }
-
- return level;
- }
-
- public static String getCompilerLevel( final IProject project )
- {
- final IScopeContext context = new ProjectScope( project );
- final IEclipsePreferences prefs = context.getNode( JavaCore.PLUGIN_ID );
- String level = prefs.get( JavaCore.COMPILER_COMPLIANCE, null );
-
- if( level == null )
- {
- level = getCompilerLevel();
- }
-
- return level;
- }
-
- public static void setCompilerLevel( final IProject project,
- final IProjectFacetVersion fv )
-
- throws CoreException
-
- {
- setCompilerLevel( project, facetToCompilerLevel( fv ) );
- }
-
- public static void setCompilerLevel( final IProject project,
- final String level )
-
- throws CoreException
-
- {
- final IScopeContext context = new ProjectScope( project );
-
- final IEclipsePreferences prefs
- = context.getNode( JavaCore.PLUGIN_ID );
-
- if( level.equals( JavaCore.VERSION_1_3 ) )
- {
- prefs.put( JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_3 );
- prefs.put( JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_1 );
- prefs.put( JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_3 );
- prefs.put( JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.IGNORE );
- prefs.put( JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.IGNORE );
- }
- else if( level.equals( JavaCore.VERSION_1_4 ) )
- {
- prefs.put( JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_4 );
- prefs.put( JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_2 );
- prefs.put( JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_3 );
- prefs.put( JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.WARNING );
- prefs.put( JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.WARNING );
- }
- else if( level.equals( JavaCore.VERSION_1_5 ) )
- {
- prefs.put( JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_5 );
- prefs.put( JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_5 );
- prefs.put( JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_5 );
- prefs.put( JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.ERROR );
- prefs.put( JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.ERROR );
- }
- else if( level.equals( JavaCore.VERSION_1_6 ) )
- {
- prefs.put( JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_6 );
- prefs.put( JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_6 );
- prefs.put( JavaCore.COMPILER_SOURCE, JavaCore.VERSION_1_6 );
- prefs.put( JavaCore.COMPILER_PB_ASSERT_IDENTIFIER, JavaCore.ERROR );
- prefs.put( JavaCore.COMPILER_PB_ENUM_IDENTIFIER, JavaCore.ERROR );
- }
- else
- {
- throw new IllegalStateException();
- }
-
- try
- {
- prefs.flush();
- }
- catch( BackingStoreException e )
- {
- // TODO: Handle this.
- }
- }
-
- public static void scheduleFullBuild( final IProject project )
- {
- // This code is modeled after the code in
- // org.eclipse.jdt.internal.ui.util.CoreUtility.getBuildJob() method.
-
- final IWorkspace ws = ResourcesPlugin.getWorkspace();
-
- final String msg
- = NLS.bind( Resources.buildingMsg, project.getName() );
-
- final Job buildJob = new Job( msg )
- {
- public IStatus run( final IProgressMonitor monitor )
- {
- monitor.beginTask( msg, 2 );
-
- try
- {
- project.build( IncrementalProjectBuilder.FULL_BUILD,
- new SubProgressMonitor( monitor, 1 ) );
-
- ws.build( IncrementalProjectBuilder.INCREMENTAL_BUILD,
- new SubProgressMonitor( monitor, 1 ) );
-
- }
- catch( CoreException e )
- {
- return e.getStatus();
- }
- finally
- {
- monitor.done();
- }
-
- return Status.OK_STATUS;
- }
-
- public boolean belongsTo( final Object family )
- {
- return family == ResourcesPlugin.FAMILY_MANUAL_BUILD;
- }
- };
-
- buildJob.setRule( ws.getRuleFactory().buildRule() );
- buildJob.schedule();
- }
-
- public static void resetClasspath( final IProject project,
- final IProjectFacetVersion oldver,
- final IProjectFacetVersion newver )
-
- throws CoreException
-
- {
- if( oldver != null )
- {
- ClasspathHelper.removeClasspathEntries( project, oldver );
- }
-
- // If this was a java project before it became a faceted project or
- // the JRE container has been added manually, the above method will not
- // delete the old JRE container. Do it manually.
-
- removeJreContainer( project );
-
- if( ! ClasspathHelper.addClasspathEntries( project, newver ) )
- {
- final IVMInstall vm = JavaRuntime.getDefaultVMInstall();
-
- if( vm != null )
- {
- IPath path = new Path( JavaRuntime.JRE_CONTAINER );
- path = path.append( vm.getVMInstallType().getId() );
- path = path.append( vm.getName() );
-
- final IClasspathEntry cpe
- = JavaCore.newContainerEntry( path );
-
- final List entries = Collections.singletonList( cpe );
-
- ClasspathHelper.addClasspathEntries( project, newver, entries );
- }
- }
- }
-
- private static void removeJreContainer( final IProject proj )
-
- throws CoreException
-
- {
- final IJavaProject jproj = JavaCore.create( proj );
- final IClasspathEntry[] cp = jproj.getRawClasspath();
-
- int pos = -1;
-
- for( int i = 0; i < cp.length; i++ )
- {
- final IClasspathEntry cpe = cp[ i ];
-
- if( cpe.getEntryKind() == IClasspathEntry.CPE_CONTAINER &&
- cpe.getPath().segment( 0 ).equals( JavaRuntime.JRE_CONTAINER ) )
- {
- pos = i;
- break;
- }
- }
-
- if( pos == -1 )
- {
- return;
- }
-
- final IClasspathEntry[] newcp
- = new IClasspathEntry[ cp.length - 1 ];
-
- System.arraycopy( cp, 0, newcp, 0, pos );
- System.arraycopy( cp, pos + 1, newcp, pos, newcp.length - pos );
-
- jproj.setRawClasspath( newcp, null );
- }
-
- public static IProjectFacetVersion compilerLevelToFacet( final String ver )
- {
- if( ver.equals( "1.5" ) ) //$NON-NLS-1$
- {
- return JavaFacet.JAVA_50;
- }
- else if( ver.equals( "1.6" ) ) //$NON-NLS-1$
- {
- return JavaFacet.JAVA_60;
- }
- else
- {
- return JavaFacet.FACET.getVersion( ver );
- }
- }
-
- public static String facetToCompilerLevel( final IProjectFacetVersion fv )
- {
- if( fv == JavaFacet.JAVA_50 )
- {
- return JavaCore.VERSION_1_5;
- }
- else if( fv == JavaFacet.JAVA_60 )
- {
- return JavaCore.VERSION_1_6;
- }
- else
- {
- return fv.getVersionString();
- }
- }
-
- private static final class Resources
-
- extends NLS
-
- {
- public static String buildingMsg;
-
- static
- {
- initializeMessages( JavaFacetUtil.class.getName(),
- Resources.class );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.properties b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.properties
deleted file mode 100644
index b8e00de..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetUtil.properties
+++ /dev/null
@@ -1 +0,0 @@
-buildingMsg = Building Project {0}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.java
deleted file mode 100644
index e428355..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectValidator;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetValidator
-
- implements IFacetedProjectValidator
-
-{
- public static final String MARKER_ID
- = "org.eclipse.jst.common.project.facet.core.javaVersionMismatch"; //$NON-NLS-1$
-
- public static final String ATTR_FACET_VERSION = "facetVersion"; //$NON-NLS-1$
- public static final String ATTR_COMPILER_LEVEL = "compilerLevel"; //$NON-NLS-1$
-
- public void validate( final IFacetedProject fproj )
-
- throws CoreException
-
- {
- final String level
- = JavaFacetUtil.getCompilerLevel( fproj.getProject() );
-
- final IProjectFacetVersion fv = fproj.getInstalledVersion( JavaFacet.FACET );
-
- if( JavaFacetUtil.compilerLevelToFacet( level ) != fv )
- {
- final IMarker marker
- = fproj.createErrorMarker( MARKER_ID, Resources.versionsDontMatch );
-
- marker.setAttribute( ATTR_FACET_VERSION, fv.getVersionString() );
- marker.setAttribute( ATTR_COMPILER_LEVEL, level );
- }
- }
-
- private static final class Resources
-
- extends NLS
-
- {
- public static String versionsDontMatch;
-
- static
- {
- initializeMessages( JavaFacetValidator.class.getName(),
- Resources.class );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.properties b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.properties
deleted file mode 100644
index 7c1e870..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetValidator.properties
+++ /dev/null
@@ -1 +0,0 @@
-versionsDontMatch = Java compiler level does not match the version of the installed Java project facet.
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetVersionChangeDelegate.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetVersionChangeDelegate.java
deleted file mode 100644
index 89cdd22..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaFacetVersionChangeDelegate.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetVersionChangeDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object cfg,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- if( monitor != null )
- {
- monitor.beginTask( "", 1 ); //$NON-NLS-1$
- }
-
- try
- {
- // Find the version that's currently installed.
-
- final IFacetedProject fproj
- = ProjectFacetsManager.create( project );
-
- final IProjectFacetVersion oldver
- = fproj.getInstalledVersion( fv.getProjectFacet() );
-
- // Reset the classpath.
-
- JavaFacetUtil.resetClasspath( project, oldver, fv );
-
- // Reset the compiler level.
-
- JavaFacetUtil.setCompilerLevel( project, fv );
-
- // Schedule a full build of the project.
-
- JavaFacetUtil.scheduleFullBuild( project );
-
- if( monitor != null )
- {
- monitor.worked( 1 );
- }
- }
- finally
- {
- if( monitor != null )
- {
- monitor.done();
- }
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaRuntimeBridge.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaRuntimeBridge.java
deleted file mode 100644
index 8df7bc4..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaRuntimeBridge.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.common.project.facet.core.StandardJreRuntimeComponent;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeBridge;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaRuntimeBridge
-
- implements IRuntimeBridge
-
-{
- public Set<String> getExportedRuntimeNames() throws CoreException
- {
- final Set<String> result = new HashSet<String>();
-
- for( IVMInstallType vmInstallType : JavaRuntime.getVMInstallTypes() )
- {
- for( IVMInstall vmInstall : vmInstallType.getVMInstalls() )
- {
- result.add( vmInstall.getName() );
- }
- }
-
- return result;
- }
-
-
- public IStub bridge( final String name ) throws CoreException
- {
- IVMInstall vmInstall = null;
-
- for( IVMInstallType vmInstallType : JavaRuntime.getVMInstallTypes() )
- {
- vmInstall = vmInstallType.findVMInstallByName( name );
-
- if( vmInstall != null )
- {
- break;
- }
- }
-
- return new Stub( vmInstall );
- }
-
- private static class Stub
-
- extends IRuntimeBridge.Stub
-
- {
- private final IVMInstall vmInstall;
-
- public Stub( final IVMInstall vmInstall )
- {
- this.vmInstall = vmInstall;
- }
-
- public List<IRuntimeComponent> getRuntimeComponents()
- {
- final IRuntimeComponent rc = StandardJreRuntimeComponent.create( this.vmInstall );
- return Collections.singletonList( rc );
- }
-
- public Map<String,String> getProperties()
- {
- return Collections.emptyMap();
- }
- }
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.java
deleted file mode 100644
index 685964f..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.Collections;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.ui.IMarkerResolution;
-import org.eclipse.ui.IMarkerResolutionGenerator;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaVersionMismatchMarkerResolutions
-
- implements IMarkerResolutionGenerator
-
-{
- public IMarkerResolution[] getResolutions( final IMarker marker )
- {
- return new IMarkerResolution[]
- {
- new Resolution1( marker ),
- new Resolution2( marker )
- };
- }
-
- private static final class Resolution1
-
- implements IMarkerResolution
-
- {
- private final IMarker marker;
-
- public Resolution1( final IMarker marker )
- {
- this.marker = marker;
- }
-
- public String getLabel()
- {
- final IProjectFacetVersion fv = getProjectFacetVersion();
- return NLS.bind( Resources.changeFacetVersion, fv );
- }
-
- public void run( final IMarker marker )
- {
- final Action action
- = new Action( Action.Type.VERSION_CHANGE,
- getProjectFacetVersion(), null );
-
- final IProject proj = this.marker.getResource().getProject();
-
- try
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( proj );
-
- fproj.modify( Collections.singleton( action ), null );
- }
- catch( CoreException e )
- {
- ErrorDialog.openError( null, Resources.errorDialogTitle,
- Resources.errorDialogMessage,
- e.getStatus() );
- }
- }
-
- private IProjectFacetVersion getProjectFacetVersion()
- {
- final String level
- = this.marker.getAttribute( JavaFacetValidator.ATTR_COMPILER_LEVEL, null );
-
- return JavaFacetUtil.compilerLevelToFacet( level );
- }
- }
-
- private static final class Resolution2
-
- implements IMarkerResolution
-
- {
- private final IMarker marker;
-
- public Resolution2( final IMarker marker )
- {
- this.marker = marker;
- }
-
- public String getLabel()
- {
- final String level = getCompilerLevel();
- return NLS.bind( Resources.changeCompilerLevel, level );
- }
-
- public void run( final IMarker marker )
- {
- final IProject project = this.marker.getResource().getProject();
- final String level = getCompilerLevel();
-
- try
- {
- JavaFacetUtil.setCompilerLevel( project, level );
- JavaFacetUtil.scheduleFullBuild( project );
- }
- catch( CoreException e )
- {
- ErrorDialog.openError( null, Resources.errorDialogTitle,
- Resources.errorDialogMessage,
- e.getStatus() );
- }
- }
-
- private String getCompilerLevel()
- {
- final String fvstr
- = this.marker.getAttribute( JavaFacetValidator.ATTR_FACET_VERSION, null);
-
- final IProjectFacetVersion fv = JavaFacet.FACET.getVersion( fvstr );
-
- return JavaFacetUtil.facetToCompilerLevel( fv );
- }
- }
-
- private static final class Resources
-
- extends NLS
-
- {
- public static String changeFacetVersion;
- public static String changeCompilerLevel;
- public static String errorDialogTitle;
- public static String errorDialogMessage;
-
- static
- {
- initializeMessages( JavaVersionMismatchMarkerResolutions.class.getName(),
- Resources.class );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.properties b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.properties
deleted file mode 100644
index 227ca0a..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/JavaVersionMismatchMarkerResolutions.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-changeFacetVersion = Change Java project facet version to {0}
-changeCompilerLevel =Change Java compiler level to {0}
-errorDialogTitle = Error
-errorDialogMessage = Failed while applying the quick fix.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/RuntimeClasspathProvider.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/RuntimeClasspathProvider.java
deleted file mode 100644
index 0d00950..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/RuntimeClasspathProvider.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.jst.common.project.facet.core.IClasspathProvider;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class RuntimeClasspathProvider
-
- implements IClasspathProvider
-
-{
- private final IRuntime r;
-
- public RuntimeClasspathProvider( final IRuntime r )
- {
- this.r = r;
- }
-
- public List getClasspathEntries( final IProjectFacetVersion fv )
- {
- for( Iterator itr = this.r.getRuntimeComponents().iterator();
- itr.hasNext(); )
- {
- final IRuntimeComponent rc = (IRuntimeComponent) itr.next();
-
- final IClasspathProvider cpprov
- = (IClasspathProvider) rc.getAdapter( IClasspathProvider.class );
-
- if( cpprov != null )
- {
- final List cp = cpprov.getClasspathEntries( fv );
-
- if( cp != null )
- {
- return cp;
- }
- }
- }
-
- return null;
- }
-
- public static final class Factory
-
- implements IAdapterFactory
-
- {
- private static final Class[] ADAPTER_TYPES = { IClasspathProvider.class };
-
- public Object getAdapter( final Object adaptable,
- final Class adapterType )
- {
- if( adapterType == IClasspathProvider.class )
- {
- return new RuntimeClasspathProvider( (IRuntime) adaptable );
- }
- else
- {
- return null;
- }
- }
-
- public Class[] getAdapterList()
- {
- return ADAPTER_TYPES;
- }
- }
-
-}
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreClasspathProvider.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreClasspathProvider.java
deleted file mode 100644
index de439e6..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreClasspathProvider.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.common.project.facet.core.IClasspathProvider;
-import org.eclipse.jst.common.project.facet.core.StandardJreRuntimeComponent;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class StandardJreClasspathProvider
-
- implements IClasspathProvider
-
-{
- private static final IProjectFacet JAVA_FACET = ProjectFacetsManager.getProjectFacet("jst.java");
-
- private IRuntimeComponent rc;
-
- public StandardJreClasspathProvider( final IRuntimeComponent rc )
- {
- this.rc = rc;
- }
-
- public List<IClasspathEntry> getClasspathEntries( final IProjectFacetVersion fv )
- {
- if( fv.getProjectFacet() == JAVA_FACET )
- {
- final IVMInstall vmInstall = getVMInstall();
-
- if( vmInstall != null )
- {
- final IPath cpEntryPath = JavaRuntime.newJREContainerPath( vmInstall );
- final IClasspathEntry cpEntry = JavaCore.newContainerEntry( cpEntryPath );
-
- return Collections.singletonList( cpEntry );
- }
- }
-
- return null;
- }
-
- private IVMInstall getVMInstall()
- {
- final String vmInstallTypeId
- = this.rc.getProperty( StandardJreRuntimeComponent.PROP_VM_INSTALL_TYPE );
-
- final String vmInstallId
- = this.rc.getProperty( StandardJreRuntimeComponent.PROP_VM_INSTALL_ID );
-
- if( vmInstallTypeId == null || vmInstallId == null )
- {
- return null;
- }
-
- final IVMInstallType vmInstallType = JavaRuntime.getVMInstallType( vmInstallTypeId );
-
- if( vmInstallType == null )
- {
- return null;
- }
-
- return vmInstallType.findVMInstall( vmInstallId );
- }
-
- public static final class Factory
-
- implements IAdapterFactory
-
- {
- private static final Class[] ADAPTER_TYPES = { IClasspathProvider.class };
-
- public Class[] getAdapterList()
- {
- return ADAPTER_TYPES;
- }
-
- public Object getAdapter( final Object adaptable,
- final Class adapterType )
- {
- IRuntimeComponent rc = (IRuntimeComponent) adaptable;
- return new StandardJreClasspathProvider(rc);
- }
- }
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreComponentLabelProvider.java b/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreComponentLabelProvider.java
deleted file mode 100644
index 8e0685b..0000000
--- a/plugins/org.eclipse.jst.common.project.facet.core/src/org/eclipse/jst/common/project/facet/core/internal/StandardJreComponentLabelProvider.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik - initial implementation and ongoing maintenance
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.core.internal;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponentVersion;
-import org.eclipse.wst.common.project.facet.ui.IRuntimeComponentLabelProvider;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class StandardJreComponentLabelProvider
-
- implements IRuntimeComponentLabelProvider
-
-{
- private final IRuntimeComponent rc;
-
- public StandardJreComponentLabelProvider( final IRuntimeComponent rc )
- {
- this.rc = rc;
- }
-
- public String getLabel()
- {
- final IRuntimeComponentVersion rcv = this.rc.getRuntimeComponentVersion();
- return "Java Runtime Environment v" + rcv.getVersionString();
- }
-
- public static final class Factory
-
- implements IAdapterFactory
-
- {
- private static final Class[] ADAPTER_TYPES = { IRuntimeComponentLabelProvider.class };
-
- public Class[] getAdapterList()
- {
- return ADAPTER_TYPES;
- }
-
- public Object getAdapter( final Object adaptableObject,
- final Class adapterType )
- {
- return new StandardJreComponentLabelProvider( (IRuntimeComponent) adaptableObject );
- }
- }
-
-}
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/.project b/plugins/org.eclipse.wst.common.project.facet.doc.api/.project
deleted file mode 100644
index 6a74c76..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.common.project.facet.doc.api</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- </natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.common.project.facet.doc.api/META-INF/MANIFEST.MF
deleted file mode 100644
index e4b8e32..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,6 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Vendor: %providerName
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.common.project.facet.doc.api;singleton:=true
-Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/build.properties b/plugins/org.eclipse.wst.common.project.facet.doc.api/build.properties
deleted file mode 100644
index 41997e1..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = META-INF/,\
- content/,\
- plugin.properties,\
- plugin.xml,\
- toc.xml
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/description.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/description.html
deleted file mode 100644
index e3c8a66..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/description.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!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="format.css">
-</head>
-
-<body>
-<p class="ueberschrift">Faceted Project Framework</p>
-
-<p>The Faceted Project Framework allows the plugin developer to think of
-projects as composed of units of functionality, otherwise known as facets, that
-can be added and removed by the user.</p>
-
-<p>Project facets are most frequently used for adding natures, builders,
-classpath entries, and resources to a project.</p>
-
-<p>Primary Benefits</p>
-
-<ul>
- <li>Consistent user experience.</li>
- <li>Ability to accurately describe capabilities of the runtime platform.</li>
-</ul>
-
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/downloads/enablement-example.zip b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/downloads/enablement-example.zip
deleted file mode 100644
index 03e7c89..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/downloads/enablement-example.zip
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/enabling-based-on-facets.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/enabling-based-on-facets.html
deleted file mode 100644
index 50ce36a..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/enabling-based-on-facets.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<!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>Enabling UI Elements Based on Project Facets</title>
- <link type="text/css" rel="stylesheet" href="tutorial/tutorial.css"/>
-</head>
-
-<body>
-
-<h1 align="center">Enabling UI Elements Based on Project Facets</h1>
-
-<p>User interface elements often need to be selectively enabled based on the
-presence of a facet in a project. The two most common examples are project
-properties pages and menu actions associated with a facet. The Faceted Project
-Framework provides a way to do that via a property tester that can be used in
-any extension point that supports the Eclipse Platform's common expression
-language.</p>
-
-<p>
- <b>Property Name:</b> <code>org.eclipse.wst.common.project.facet.core.projectFacet</code><br/>
- <b>Property Value:</b> <code>[facet.id](:[version.expr])?</code>
-</p>
-
-<p>As you can see from the format of the property value, you can either test
-using just the project facet id or you can also include a version expression if
-only certain versions should be matched.</p>
-
-<p>The following two examples demonstrate how the facets property tester can be
-used. To explore further, you can also download the
-<a href="downloads/enablement-example.zip">complete runnable source</a> of these
-examples.</p>
-
-<p><b>Example 1</b></p>
-
-<p>Enables a project properties page based on the presence of a facet. Note the
-use of the <code>forcePluginActivation</code> attribute. This attribute makes
-sure that the property tester will be invoked even if the Faceted Project
-Framework plugins have not been activated yet. Omitting this attribute will cause
-the test expression to return false in that situation. Also note the use of the
-<code>adapt</code> operator to adapt the object to <code>IProject</code>. This
-is necessary as some views may represent project entities using other types. For
-instance, in the JDT's Package Explorer the projects are instances of
-<code>org.eclipse.jdt.core.IJavaProject</code>.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="code-text">org.eclipse.ui.propertyPages</span>">
- <page
- id="<span class="code-text">ExampleFacetPropertiesPage</span>"
- objectClass="<span class="code-text">org.eclipse.core.resources.IProject</span>"
- adaptable="<span class="code-text">true</span>"
- name="<span class="code-text">Example Facet Properties</span>"
- class="<span class="code-text">org.eclipse.wst.project.facet.examples.enablement.ExampleFacetPropertiesPage</span>">
- <enabledWhen>
- <adapt type="<span class="code-text">org.eclipse.core.resources.IProject</span>">
- <test
- forcePluginActivation="<span class="code-text">true</span>"
- property="<span class="code-text">org.eclipse.wst.common.project.facet.core.projectFacet</span>"
- value="<span class="code-text">example.facet1</span>"/>
- </adapt>
- </enabledWhen>
- </page>
-</extension></pre>
-</div>
-
-<p><b>Example 2</b></p>
-
-<p>Enables a menu action if either one of the two facets specified is installed
-in a project. Note the use of a version expression to match only certain versions.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="code-text">org.eclipse.ui.popupMenus</span>">
- <objectContribution
- id="<span class="code-text">exampleFacetPopup</span>"
- objectClass="<span class="code-text">org.eclipse.core.resources.IProject</span>"
- adaptable="<span class="code-text">true</span>">
- <action
- id="<span class="code-text">exampleFacetPopupAction</span>"
- label="<span class="code-text">Example Facet Popup</span>"
- class="<span class="code-text">org.eclipse.wst.project.facet.examples.enablement.ExampleFacetPopupAction</span>"
- menubarPath="<span class="code-text">additions</span>"
- enablesFor="<span class="code-text">+</span>">
- </action>
- <enablement>
- <adapt type="<span class="code-text">org.eclipse.core.resources.IProject</span>">
- <or>
- <test
- forcePluginActivation="<span class="code-text">true</span>"
- property="<span class="code-text">org.eclipse.wst.common.project.facet.core.projectFacet</span>"
- value="<span class="code-text">example.facet1:1.0</span>"/>
- <test
- forcePluginActivation="<span class="code-text">true</span>"
- property="<span class="code-text">org.eclipse.wst.common.project.facet.core.projectFacet</span>"
- value="<span class="code-text">example.facet2:[1.1-2.2]</span>"/>
- </or>
- </adapt>
- </enablement>
- </objectContribution>
-</extension></pre>
-</div>
-
-<br/><br/><br/><br/>
-
-</body>
-
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/format.css b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/format.css
deleted file mode 100644
index c02625e..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/format.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/* CSS Document */
-body {
- font-family: Arial, Helvetica, sans-serif
-}
-
-.ueberschrift {
- font-family: Arial, Helvetica, sans-serif;
- font-size: x-large;
- margin-top: 20px;
-}
-
-.code {
- font-family: Courier, "Courier New", Arial, Helvetica, sans-serif;
- font-size: 11px;
- font-weight: normal;
- line-height: 16px;
- color: #0467B4;
- background-color: #CCCCCC;
- padding: 5px 7px 5px 13px;
- border: 1px solid black;
-}
-
-.note {
- font-size: smaller
-}
-
-.description {
- font-family: "Times New Roman", Times, serif;
- font-size: xx-large;
-}
-
-.schema {
- font-style: italic;
- font-size: large
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/listeners.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/listeners.html
deleted file mode 100644
index a9c725c..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/listeners.html
+++ /dev/null
@@ -1,296 +0,0 @@
-<!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>Listening for Changes to Faceted Projects</title>
- <link type="text/css" rel="stylesheet" href="tutorial/tutorial.css"/>
-</head>
-
-<body>
-
-<style type="text/css">
-
- .subHeader
- {
- font-size: 16px;
- font-weight: bold;
- }
-
- .eventsTableHeaderCell
- {
- font-weight: bold;
- border-bottom: 1px solid #000000;
- padding: 2px;
- }
-
- .eventsTableTypeCell
- {
- vertical-align: top;
- padding-top: 2px;
- padding-bottom: 2px;
- padding-left: 2px;
- padding-right: 20px;
- }
-
- .eventsTableInterfaceCell
- {
- vertical-align: top;
- padding-top: 2px;
- padding-bottom: 2px;
- padding-left: 2px;
- padding-right: 20px;
- }
-
- .eventsTableDescriptionCell
- {
- vertical-align: top;
- padding: 2px;
- }
-
-</style>
-
-<h1 align="center">Listening for Changes to Faceted Projects</h1>
-
-<p>The Faceted Project Framework provides a facility that will notify any interested parties when
-a change is made to the model of a faceted project. Listeners can be registered either via a direct
-API call or via an extension point. Listeners can be global or scoped to a specific project.</p>
-
-<p class="subHeader">Events</p>
-
-<table style="border-collapse:collapse">
-
- <tr>
- <td class="eventsTableHeaderCell">Event Type</td>
- <td class="eventsTableHeaderCell">Event Object Interface</td>
- <td class="eventsTableHeaderCell">Description</td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">PROJECT_MODIFIED</td>
- <td class="eventsTableInterfaceCell">IFacetedProjectEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered when faceted project metadata is modified in any way. No detailed information
- about the change is provided. Note that while listening for PROJECT_MODIFIED events is
- guaranteed to catch all other events, the inverse is not true. Listing on all the other
- events is not guaranteed to catch all PROJECT_MODIFIED events. This is because there are
- circumstances when the system does not have the details about the type of the change
- (such as when the faceted project metadata file is modified on disk).
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">PRE_INSTALL</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered right before a facet is installed.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">POST_INSTALL</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td>Gets triggered right after a facet is installed.</td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">PRE_UNINSTALL</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered right before a facet is uninstalled.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">POST_UNINSTALL</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered right after a facet is uninstalled.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">PRE_VERSION_CHANGE</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered right before a facet version is changed.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">POST_VERSION_CHANGE</td>
- <td class="eventsTableInterfaceCell">IProjectFacetActionEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered right after a facet version is changed.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">FIXED_FACETS_CHANGED</td>
- <td class="eventsTableInterfaceCell">IFixedFacetsChangedEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered when project's fixed facets are changed.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">TARGETED_RUNTIMES_CHANGED</td>
- <td class="eventsTableInterfaceCell">ITargetedRuntimesChangedEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered when the set of runtimes that the project targets is changed.
- </td>
- </tr>
-
- <tr>
- <td class="eventsTableTypeCell">PRIMARY_RUNTIME_CHANGED</td>
- <td class="eventsTableInterfaceCell">IPrimaryRuntimeChangedEvent</td>
- <td class="eventsTableDescriptionCell">
- Gets triggered when the primary targeted runtime of the project is changed.
- </td>
- </tr>
-
-</table>
-
-<p class="subHeader">Registering a Listener</p>
-
-<p>All listeners have to implement <code>IFacetedProjectListener</code> interface which looks like
-this:</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> org.eclipse.wst.common.project.facet.core.events;
-
-<span class="java-keyword">public interface</span> IFacetedProjectListener
-{
- <span class="java-keyword">void</span> handleEvent( IFacetedProjectEvent event );
-}
-</pre>
-</div>
-
-<p>Depending on the event type, it may be possible to cast the event object to a more specific
-interface in order to get details about the event. See the event table for information about which
-event object interface corresponds with which event type.</p>
-
-<p>There are three ways to register a listener:</p>
-
-<ol>
- <li>IFacetedProject.addListener()</li>
- <li>FacetedProjectFramework.addListener()</li>
- <li>Extension Point: org.eclipse.wst.common.project.facet.core.listeners</p>
-</ol>
-
-<p>All of these methods allows you to specify which events the listener should be notified about.
-Not specifying event types on registration will cause the listener to be notified about all events.
-This is typically not desired. If a listener needs to react to any change in the project and has no
-need to analyze specific events, it should be registered for the <code>PROJECT_MODIFIED</code>
-event.</p>
-
-<p>The first method registers a listener that is scoped to a specific project. The last two
-register a global listener which will be notified about changes in all faceted projects that are
-present in the workspace. In most circumstances, if a global listener is needed, it should be
-registered via the extension point rather than using <code>FacetedProjectFramework.addListener()</code>
-API. Using the extension point guarantees that the listener will not miss any events due to not
-being registered early enough. It also delays initialization of the plugin bundle containing the
-listener until an event that the listener is interested in is fired.</p>
-
-<p class="subHeader">Extension Point</p>
-
-<p>The extension point that's used for registering listeners is quite simple. Only two pices of
-information need to be supplied: the listener class name and an optional list of event types.</p>
-
-<div class="code">
-<pre class="xml-code"><extension point="<span class="code-text">org.eclipse.wst.common.project.facet.core.listeners</span>">
- <listener
- class="<span class="code-text">{class:org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener}</span>"
- eventTypes="<span class="code-text">{event.types}</span>"/> <i>(1 or more)</i>
-<extension>
-</pre>
-</div>
-
-<p>The <code>eventTypes</code> attribute value should be a comma-separated list of event types.</p>
-
-<p class="subHeader">Examples</p>
-
-<p>This example registers a very simple listener that prints out events received. The listener is
-registered several different ways for the purposes of this example.</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> com.mycorp.myproduct;
-
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-
-<span class="java-keyword">public final class</span> ListenerImpl <span class="java-keyword">implements</span> IFacetedProjectListener
-{
- <span class="java-keyword">public void</span> handleEvent( <span class="java-keyword">final</span> IFacetedProjectEvent event )
- {
- System.out.println( event.toString() );
- }
-}
-</pre>
-</div>
-
-<p>The following code snippet registers the above listener on a specific project to listen for
-changes in the runtimes that the project targets.</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">import</span> org.eclipse.core.resources.IProject;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IFacetedProject;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-
-...
-
-IProject pj;
-
-...
-
-<span class="java-keyword">final</span> IFacetedProject fpj = ProjectFacetsManager.create( pj );
-<span class="java-keyword">final</span> ListenerImpl listener = <span class="java-keyword">new</span> ListenerImpl();
-
-fpj.addListener( listener,
- IFacetedProjectEvent.Type.TARGETED_RUNTIMES_CHANGED,
- IFacetedProjectEvent.Type.PRIMARY_RUNTIME_CHANGED );
-
-...
-
-fpj.removeListener( listener );
-</pre>
-</div>
-
-<p>The following code snippet register the above listener to listen for the PRE_INSTALL and
-PRE_UNINSTALL events in all faceted projects.</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-
-...
-
-<span class="java-keyword">final</span> ListenerImpl listener = <span class="java-keyword">new</span> ListenerImpl();
-
-FacetedProjectFramework.addListener( listener,
- IFacetedProjectEvent.Type.PRE_INSTALL,
- IFacetedProjectEvent.Type.PRE_UNINSTALL );
-
-...
-
-FacetedProjectFramework.removeListener( listener );
-</pre>
-</div>
-
-<p>The following code snippet accomplishes the same thing as the one above, except it does this
-via the extension point.</p>
-
-<div class="code">
-<pre class="xml-code"><extension point="<span class="code-text">org.eclipse.wst.common.project.facet.core.listeners</span>">
- <listener class="<span class="code-text">com.mycorp.myproduct.ListenerImpl</span>" eventTypes="<span class="code-text">PRE_INSTALL,PRE_UNINSTALL</span>"/>
-<extension>
-</pre>
-</div>
-
-<br/><br/><br/><br/>
-
-</body>
-
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/questions.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/questions.html
deleted file mode 100644
index b48b0d9..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/questions.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!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>Questions & Answers</title>
- <link rel="stylesheet" type="text/css" href="tutorial/tutorial.css"/>
-</head>
-</head>
-
-<body>
-
-<h1 align="center">Questions & Answers</h1>
-
-<p><b><a name="configure.facets.button">Question: I'd like to be able to configure my
-facet after it is installed using the Project Facets property page or the
-Add/Remove Facets wizard. Why isn't there a configure button?</b></p>
-
-<p><b>Answer:</b> The Project Facets property page and the Add/Remove Facets wizard
-are intended for managing the set of facets that are installed on a project.
-When configuration of an installed facet needs to be changed, the expectation is
-that the facet author will use existing Eclipse facilities to provide project
-property pages. For example, the <code>jst.java</code> facet is configured using
-the <i>Java Build Path</i>, <i>Java Code Style</i>, and <i>Java Compiler</i>
-property pages.</p>
-
-<br/><br/><br/>
-
-</body>
-
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen01.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen01.gif
deleted file mode 100644
index 6d8bfb7..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen01.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen02.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen02.gif
deleted file mode 100644
index a481aef..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen02.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen03.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen03.gif
deleted file mode 100644
index c61e29e..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen03.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen04.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen04.gif
deleted file mode 100644
index fae4b62..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen04.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen05.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen05.gif
deleted file mode 100644
index b33903e..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen05.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen06.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen06.gif
deleted file mode 100644
index 977690b..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen06.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen07.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen07.gif
deleted file mode 100644
index 3133e18..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen07.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen08.gif b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen08.gif
deleted file mode 100644
index e4040ca..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/images/screen08.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/solution.zip b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/solution.zip
deleted file mode 100644
index 499b7dc..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/solution.zip
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/starter.zip b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/starter.zip
deleted file mode 100644
index bc20cab..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/materials/starter.zip
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.css b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.css
deleted file mode 100644
index 27036ad..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.css
+++ /dev/null
@@ -1,120 +0,0 @@
-p, table, td, th { font-family: arial, helvetica, geneva; font-size: 10pt}
-pre { font-family: "Courier New", Courier, mono; font-size: 10pt}
-h2 { font-family: arial, helvetica, geneva; font-size: 18pt; font-weight: bold; line-height: 14px; margin-top: 30px}
-code { font-family: "Courier New", Courier, mono; font-size: 10pt}
-sup { font-family: arial,helvetica,geneva; font-size: 10px}
-h3 { font-family: arial, helvetica, geneva; font-size: 14pt; font-weight: bold}
-li { font-family: arial, helvetica, geneva; font-size: 10pt}
-h1 { font-family: arial, helvetica, geneva; font-size: 28px; font-weight: bold}
-body { font-family: arial, helvetica, geneva; font-size: 10pt; clip: rect( ); margin-top: 5mm; margin-left: 3mm}
-.indextop { font-size: x-large;; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold}
-.indexsub { font-size: xx-small;; font-family: Arial, Helvetica, sans-serif; color: #8080FF}
-
-pre {
- padding: 0px;
- margin-top: 0px;
- margin-left: 0px;
- margin-bottom: 0px;
- margin-right: 0px;
- text-align: left;
-}
-
-.code {
- border: 1px dashed #3c78b5;
- font-size: 11px;
- font-family: Courier;
- margin: 10px;
- line-height: 13px;
- text-align: left;
- background-color: #f0f0f0;
- padding: 10px;
-}
-
-.code-xml {
- color: #000000;
-}
-
-.schema-type
-{
- color: #009100;
- background-color: inherit;
-}
-
-.schema-type-link a:link
-{
- color: #009100;
- text-decoration: none
-}
-
-.schema-type-link a:visited
-{
- color: #009100;
- text-decoration: none
-}
-
-.schema-control {
- color: #009100;
- font-style: italic;
- background-color: inherit;
-}
-
-.code-text {
- color: #009100;
- background-color: inherit;
-}
-
-.context-code {
- color: #767676;
- background-color: inherit;
-}
-
-.xml-text
-{
- color: #009100;
-}
-
-.java-code
-{
- color: #000000;
-}
-
-.java-comment
-{
- color: #009100;
-}
-
-.java-javadoc-keyword
-{
- font-weight: bold;
-}
-
-.java-keyword
-{
- color: #7f0055;
- font-weight: bold;
-}
-
-.java-literal
-{
- color: #009100;
-}
-
-.java-context
-{
- color: #767676;
-}
-
-.java-context-keyword
-{
- font-weight: bold;
-}
-
-.screen-shot
-{
- margin: 10px;
-}
-
-.block-indent
-{
- margin: 10px;
-}
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.html
deleted file mode 100644
index e2dc7fe..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/tutorial/tutorial.html
+++ /dev/null
@@ -1,1203 +0,0 @@
-<!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>Extending WTP Using Project Facets</title>
- <link type="text/css" rel="stylesheet" href="tutorial.css"/>
-</head>
-
-<body>
-
-<h1 align="center">Extending WTP Using Project Facets</h1>
-
-<blockquote>
-<b>Summary</b><br/>
-The Faceted Project Framework allows the plugin developer to think of Web Tools
-Platform (WTP) projects as composed of units of functionality, otherwise known
-as facets, that can be added and removed by the user. This tutorial walks you
-through an example of creating a couple of basic facets and in the process
-covers the majority of the framework's extension points. This tutorial has been
-written for version 1.5 of the Web Tools Platform.
-<br/><br/>
-
-<b>Konstantin Komissarchik</b><br/>
-BEA Systems, Inc.<br/>
-September 5, 2006
-</blockquote>
-
-<hr width="100%">
-
-<h2>Introduction</h2>
-
-<p>Faceted Project Framework provides a powerful mechanism for extending the
-capabilities of the Web Tools Platform. Project facets are typically used as
-a way of adding functionality to a project. When a facet is added to the
-project it can perform any necessary setup actions such as copying resources,
-installing builders, adding natures, etc. Facets can also be used as markers for
-enabling user interface elements.</p>
-
-<p>Some of the readers may be wondering how
-facets are different from the project natures which are supported by the Eclipse
-platform. Natures are designed to be hidden from user's view. They are
-essentially markers that are set behind the scenes by tooling. Project facets,
-on the other hand, have been designed from the ground up to be manipulated by
-the end users. The Faceted Project Framework provides all the necessary user
-interface elements for managing the facets on a project and since facets
-are self describing the user is prevented from creating invalid configurations.
-Basically, it is no longer necessary to write custom project creation wizards or
-the "Enable Feature X" menu actions. Common way of managing which facets are
-installed on a project means less burden on the plugin writer and better end user
-experience.</p>
-
-<p>This tutorial covers the extension points and Java API that are used for
-creating project facets. The reader is assumed to be already familiar with
-developing plugins for Eclipse and to have user-level knowledge of the Web Tools
-Platform.</p>
-
-<h2>Tutorial Scenario</h2>
-
-<p>You are a developer for a company which develops a product called
-FormGen. FormGen is basically a servlet that generates HTML forms based on XML
-definition files. The product is composed of a jar containing the servlet and
-some basic widgets. There is also an add-on jar with some extra widgets. Users
-have been manually adding the jars into the WEB-INF/lib directories of their
-web projects and setting up the servlet definitions in web.xml by hand. Your
-task is to make this setup easier by writing a couple of project facets that
-will perform these actions automatically.</p>
-
-<h2>Table of Contents</h2>
-
-<div class="block-indent">
-1. <a href="#getting.started">Getting Started</a><br/>
-2. <a href="#creating.basic.facets">Creating Basic Facet Definitions</a><br/>
-3. <a href="#specifying.constraints">Specifying Constraints</a><br/>
-4. <a href="#implementing.actions">Implementing Actions</a><br/>
-5. <a href="#creating.categories">Creating Categories</a><br/>
-6. <a href="#decorating">Decorating</a><br/>
-7. <a href="#adding.wizard.pages">Adding Wizard Pages</a><br/>
-8. <a href="#defining.presets">Defining Presets</a><br/>
-9. <a href="#runtime.mappings">Specifying Runtime Support Mappings</a><br/>
-10. <a href="#summary">Summary</a><br/>
-Appendix A: <a href="#custom.version.comparators">Custom Version Comparators</a><br/>
-Appendix B: <a href="#version.expressions">Version Expressions</a><br/>
-Appendix C: <a href="#property.tester">Property Tester</a><br/>
-Appendix D: <a href="#wizard.context">Wizard Context</a><br/>
-</div>
-
-<h2><a name="getting.started">1. Getting Started</a></h2>
-
-<p>To follow along with this tutorial, you will need to have a working install
-of Web Tools Platform v1.5. The tutorial is not designed to be used with 1.0.x
-version of WTP as there are numerous extension point and API differences. You
-can download the install kits for WTP and its prerequisites, including Eclipse
-Platform v3.2, at the following locations:</p>
-
-<ul>
- <li><a href="http://download.eclipse.org/eclipse/downloads/">Eclipse Platform Download Site</a></li>
- <li><a href="http://download.eclipse.org/webtools/downloads/">Web Tools Platform Download Site</a></li>
-</ul>
-
-<p>Once the required software has been installed you will need to
-create a new workspace and add the <a href="materials/starter.zip">starter project</a>
-to it. The starter project includes the materials and utility code that will
-be used in this tutorial. If you get stuck at any point you can take a peek at
-the <a href="materials/solution.zip">solution project</a>.</p>
-
-<h2><a name="creating.basic.facets">2. Creating Basic Facet Definitions</a></h2>
-
-<p>Project facets are declared via the <code>org.eclipse.wst.common.project.facet.core.facets</code>
-extension point. This is a pretty large extension point with lots of facilities,
-but we will start small and progress incrementally while building the tutorial
-facets. Here is the part of the schema that we will be working with initially:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="<span class="schema-type">{string}</span>"> <span class="schema-control">(0 or more)</span>
- <label><span class="schema-type">{string}</span></label>
- <description><span class="schema-type">{string}</span></description> <span class="schema-control">(optional)</span>
- </project-facet>
-
- <project-facet-version facet="<span class="schema-type">{string}</span>" version="<span class="schema-type">{string}</span>"/> <span class="schema-control">(0 or more)</span>
-
-</extension></pre>
-</div>
-
-<p>As you can see, there are two top-level elements in this part of the extension
-point schema. The <code><project-facet></code> element is used to declare
-the facet itself. The <code><project-facet-version></code> element is used
-to declare versions of the facet. Every facet implementation needs to provide
-at least one facet version declaration. In fact, as you will see later in this
-tutorial, the bulk of the work happens in the <code><project-facet-version></code>
-declaration. For now all you need to remember is that a facet cannot be used
-unless it has at least one version.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="code-text">org.eclipse.wst.common.project.facet.core.facets</span>">
-
- <project-facet id="<span class="code-text">formgen.core</span>">
- <label><span class="code-text">FormGen Core</span></label>
- <description>
- <span class="code-text">Enables generation of HTML forms based on XML definition files.</span>
- </description>
- </project-facet>
-
- <project-facet-version facet="<span class="code-text">formgen.core</span>" version="<span class="code-text">1.0</span>"/>
-
- <project-facet id="<span class="code-text">formgen.ext</span>">
- <label><span class="code-text">FormGen Extensions</span></label>
- <description>
- <span class="code-text">Enables additional FormGen widgets.</span>
- </description>
- </project-facet>
-
- <project-facet-version facet="<span class="code-text">formgen.ext</span>" version="<span class="code-text">1.0</span>"/>
-
-</extension></pre>
-</div>
-
-<p>Insert the above code into your plugin.xml file and lets see it in action.
-Launch Eclipse with your FormGen plugin and then open the Dynamic Web Project
-wizard. Make sure that <code><none></code> is selected in the Target Runtime
-field on the first page and go to the second page. You should see a screen that
-looks like the following. Note that the FormGen facets that you have created
-are displayed.</p>
-
-<div class="screen-shot"><img src="images/screen01.gif"/></div>
-
-<h2><a name="specifying.constraints">3. Specifying Constraints</a></h2>
-
-<p>One of the problems with what we have so far is that the FormGen facets
-appear in other module project wizards such as the EJB Project Wizard. That, of
-course, makes no sense since FormGen is servlet-based technology and so is only
-applicable to J2EE web applications. To solve this problem we will use the
-constraint mechanism to specify the dependencies.</p>
-
-<p>Here is what that part of the extension point schema looks like:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet-version></span>
- <constraint> <span class="schema-control">(optional)</span>
- <span class="schema-control">[expr]</span>
- </constraint>
- <span class="context-code"></project-facet-version>
-</extension></span>
-
-<span class="schema-control">[expr] =</span>
- <requires facet="<span class="schema-type">{string}</span>" version="<span class="schema-type"><span class="schema-type-link">{<a href="#version.expressions">version.expr</a>}</span></span>" soft="<span class="schema-type">{boolean}</span>"/> <span class="schema-control">or</span>
- <conflicts facet="<span class="schema-type">{string}</span>" version="<span class="schema-type"><span class="schema-type-link">{<a href="#version.expressions">version.expr</a>}</span></span>"/> <span class="schema-control">or</span>
- <conflicts group="<span class="schema-type">{string}</span>"/> <span class="schema-control">or</span>
- <and>
- <span class="schema-control">[expr]</span> <span class="schema-control">(1 or more)</span>
- </and> <span class="schema-control">or</span>
- <or>
- <span class="schema-control">[expr]</span> <span class="schema-control">(1 or more)</span>
- </or></pre>
-</div>
-
-<p>As you can see, the constraint is an expression tree and you have four
-operators at your disposal. Lets go over them one by one.</p>
-
-<div style="margin-left: 10px">
-<p><b>requires</b></p>
-
-<p>The <code>requires</code> operator is the most frequently used of all the operators.
-It is used to specify a dependency on another facet. If the <code>version</code>
-attribute is not specified, any version of the referenced facet will satisfy
-the constraint. If only specific versions will do, the <code>version</code>
-attribute can contain a <a href="#version.expressions">version expression</a>.</p>
-
-<p>The <code>soft</code> attribute is used to create a special kind of a
-dependency. Facet selection will not be prevented if the dependency is not
-met, but if the dependency is met, the facet is guaranteed to be installed
-after the referenced facet.</p>
-
-<p><b>conflicts</b></p>
-
-<p>The <code>conflicts</code> constraint is used to indicate that the declaring
-facet will not work correctly if installed into the same project as referenced
-facets. The <code>conflicts</code> constraint comes in two flavors. You can
-either specify a conflict with a single facet or with a group of facets.</p>
-
-<p>What are groups of facets? Facet groups are a way to designate a conflict with
-a certain class of facets without having to list all of the facets explicitly.
-For instance, the WTP module facets all belong to the "modules" group. They also
-each declare a conflict with the "modules" group. This prevents two module facets
-from being installed into the same project. By declaring a conflict with a
-group whose membership can expand as necessary, third parties can add module
-facets on top of WTP and have the new facets interact correctly with the
-built-in module facets.</p>
-
-<p>A facet group is created the first time a facet declares group membership.
-Here is the extension point schema for declaring group membership:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet-version></span>
- <group-member id="<span class="schema-type">{string}</span>"/> <span class="schema-control">(0 or more)</span>
- <span class="context-code"></project-facet-version>
-</extension></span>
-</pre>
-</div>
-
-<p><b>and & or</b>
-
-<p>The <code>and</code> & <code>or</code> constraints are used to perform
-logical conjunction and disjunction over their operands. Although it is legal
-for these operators to have only one operand, typically they will have two or
-more.</p>
-</div>
-
-<p>We can now specify the constraints for the FormGen facets. The facet id that
-marks a project as a J2EE web module is <code>jst.web</code>. We will setup
-a dependency on it from the <code>formgen.core</code> facet. The
-<code>formgen.ext</code> facet can then depend on the <code>formgen.ext</code>
-facet. That latter constraint will ensure that the FormGen Extensions
-are not installed without installing FormGen Core.</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet-version id="formgen.core" version="1.0"></span>
- <constraint>
- <requires facet="<span class="xml-text">jst.web</span>" version="<span class="xml-text">2.2,2.3,2.4</span>"/>
- </constraint>
- <span class="context-code"></project-facet>
-
- <project-facet-version id="formgen.ext" version="1.0"></span>
- <constraint>
- <requires facet="<span class="xml-text">formgen.core</span>" version="<span class="xml-text">1.0</span>"/>
- </constraint>
- <span class="context-code"></project-facet>
-
-</extension></span></pre>
-</div>
-
-<p>Once the above code is added, the FormGen facets should only appear in the
-Dynamic Web Project wizard.</p>
-
-<h2><a name="implementing.actions">4. Implementing Actions</a></h2>
-
-<p>Let's now try selecting the FormGen Core facet on the facets selection page
-of the Dynamic Web Project wizard. If you do that, you should see the
-following error message appear.</p>
-
-<div class="screen-shot"><img src="images/screen02.gif"/></div>
-
-<p>This error message is displayed because the install action has not been
-implemented for this facet. What's an action? An action is an operation that a
-user can perform on a facet. There are three action types <code>INSTALL</code>,
-<code>UNINSTALL</code>, and <code>VERSION_CHANGE</code>. We will now implement
-the install actions for the FormGen facets.</p>
-
-<p>Here is what that part of the extension point schema looks like:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets"></span>
- <action id="<span class="schema-type">{string}</span>" facet="<span class="schema-type">{string}</span>" version="<span class="schema-type"><span class="schema-type-link">{<a href="#version.expressions">version.expr</a>}</span></span>" type="<span class="schema-type">INSTALL|UNINSTALL|VERSION_CHANGE</span>">
- <delegate class="<span class="schema-type">{class:org.eclipse.wst.common.project.facet.core.IDelegate}</span>"/>
- <property name="<span class="schema-type">{string}</span>" value="<span class="schema-type">{string}</span>"/> <span class="schema-control">(0 or more)</span>
- </action>
-<span class="context-code"></extension></span>
-</pre>
-</div>
-
-<ul>
-
- <li><p>The version attribute can contain a single version or a <a href="#version.expressions">version expression</a>.
- It can also be omitted if the action applies to all versions of the facet.</p></li>
-
- <li><p>The <code>id</code> attribute is optional. If not specified, the framework
- will automatically generate one using the following pattern:</p>
- <p><code>[facet-id]#[version-expression]#[action-type](#[prop-name]=[prop-value])*</code></p>
- <p>As you can see, it is better to provide an explicit id rather than letting
- the framework generate it. Later in the tutorial we will cover extension
- points that make references to action ids.</p>
-
- <li><p>The <code><action></code> element can also be embeded inside the
- <code><project-facet-version></code> element. In that case, the
- <code>facet</code> and <code>version</code> attributes should be omitted.
- Note that if the same delegate implementation applies to multiple facet
- versions, it is better to provide a single action declaration externally.
- This allows the framework to perform certain kinds of optimizations</p></li>
-
- <li><p>For the <code>VERSION_CHANGE</code> action, it is possible to restrict
- the applicability of the action definition with regards to the starting
- version. To do that, simply specify "from.versions" property in the action
- definition. The value is a <a href="#version.expressions">version expression</a>.
- If this property is not specified, the framework will assume that the delegate
- is capable of converting from any starting version.</p></li>
-
-</ul>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> org.eclipse.wst.common.project.facet.core;
-
-<span class="java-keyword">import</span> org.eclipse.core.resources.IProject;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.CoreException;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.IProgressMonitor;
-
-<span class="java-comment">/**
- * This interface is implemented in order to provide logic associated with
- * a particular event in project facet's life cycle, such as install or
- * uninstall.
- */</span>
-
-<span class="java-keyword">public interface</span> IDelegate
-{
- <span class="java-comment">/**
- * The method that's called to execute the delegate.
- *
- * <span class="java-javadoc-keyword">@param</span> project the workspace project
- * <span class="java-javadoc-keyword">@param</span> fv the project facet version that this delegate is handling; this
- * is useful when sharing the delegate among several versions of the same
- * project facet or even different project facets
- * <span class="java-javadoc-keyword">@param</span> config the configuration object, or <code>null</code> if defaults
- * should be used
- * <span class="java-javadoc-keyword">@param</span> monitor the progress monitor
- * <span class="java-javadoc-keyword">@throws</span> CoreException if the delegate fails for any reason
- */</span>
-
- <span class="java-keyword">void</span> execute( IProject project,
- IProjectFacetVersion fv,
- Object config,
- IProgressMonitor monitor )
-
- <span class="java-keyword">throws</span> CoreException;
-}
-</pre>
-</div>
-
-<p>Let's now dive in and implement the install delegates for the FormGen facets.
-The <code>formgen.core</code> facet should (a) copy <code>formgen-core.jar</code>
-into the project's <code>WEB-INF/lib</code> directory, and (b) register the
-FormGen servlet in <code>web.xml</code>. The <code>formgen.ext</code> facet should
-copy the <code>formgen-ext.jar</code> into the project's <code>WEB-INF/lib</code>
-directory.</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets"></span>
-
- <span class="context-code"><project-facet-version facet="formgen.core" version="1.0"></span>
- <action type="<span class="xml-text">INSTALL</span>">
- <delegate class="<span class="xml-text">com.formgen.eclipse.FormGenCoreFacetInstallDelegate</span>"/>
- </action>
- <span class="context-code"></project-facet-version></span>
-
- <span class="context-code"><project-facet-version facet="formgen.ext" version="1.0"></span>
- <action type="<span class="xml-text">INSTALL</span>">
- <delegate class="<span class="xml-text">com.formgen.eclipse.FormGenExtFacetInstallDelegate</span>"/>
- </action>
- <span class="context-code"></project-facet-version></span>
-
-<span class="context-code"></extension></span>
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> com.formgen.eclipse;
-
-<span class="java-keyword">import</span> org.eclipse.core.resources.IFolder;
-<span class="java-keyword">import</span> org.eclipse.core.resources.IProject;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.CoreException;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.IProgressMonitor;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.Path;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IDelegate;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-<span class="java-keyword">public final class</span> FormGenCoreFacetInstallDelegate <span class="java-keyword">implements</span> IDelegate
-{
- <span class="java-keyword">public void</span> execute( <span class="java-keyword">final</span> IProject pj,
- <span class="java-keyword">final</span> IProjectFacetVersion fv,
- <span class="java-keyword">final</span> Object config,
- <span class="java-keyword">final</span> IProgressMonitor monitor )
-
- <span class="java-keyword">throws</span> CoreException
-
- {
- monitor.beginTask( "", 2 );
-
- <span class="java-keyword">try</span>
- {
- <span class="java-keyword">final</span> IFolder webInfLib = Utils.getWebInfLibDir( pj );
-
- Utils.copyFromPlugin( new Path( "libs/formgen-core.jar" ),
- webInfLib.getFile( "formgen-core.jar" ) );
-
- monitor.worked( 1 );
-
- Utils.registerFormGenServlet( pj );
-
- monitor.worked( 1 );
- }
- <span class="java-keyword">finally</span>
- {
- monitor.done();
- }
- }
-}
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> com.formgen.eclipse;
-
-<span class="java-keyword">import</span> org.eclipse.core.resources.IFolder;
-<span class="java-keyword">import</span> org.eclipse.core.resources.IProject;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.CoreException;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.IProgressMonitor;
-<span class="java-keyword">import</span> org.eclipse.core.runtime.Path;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IDelegate;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-<span class="java-keyword">public final class</span> FormGenExtFacetInstallDelegate <span class="java-keyword">implements</span> IDelegate
-{
- <span class="java-keyword">public void</span> execute( <span class="java-keyword">final</span> IProject pj,
- <span class="java-keyword">final</span> IProjectFacetVersion fv,
- <span class="java-keyword">final</span> Object config,
- <span class="java-keyword">final</span> IProgressMonitor monitor )
-
- <span class="java-keyword">throws</span> CoreException
-
- {
- monitor.beginTask( "", 1 );
-
- <span class="java-keyword">try</span>
- {
- <span class="java-keyword">final</span> IFolder webInfLib = Utils.getWebInfLibDir( pj );
-
- Utils.copyFromPlugin( new Path( "libs/formgen-ext.jar" ),
- webInfLib.getFile( "formgen-ext.jar" ) );
-
- monitor.worked( 1 );
- }
- <span class="java-keyword">finally</span>
- {
- monitor.done();
- }
-
- }
-}
-</pre>
-</div>
-
-<p>Once the install actions have been implemented, you should be able to select
-the FormGen facets on the Facets Selection Page of the Dynamic Web Project Wizard
-without getting any error messages. You should also be able to complete the
-project creation and see the following highlighted artifacts in the new project.
-These artifacts have been created by the FormGen facet install delegates.</p>
-
-<div class="screen-shot"><img src="images/screen03.gif"/></div>
-
-<h2><a name="creating.categories">5. Creating Categories</a></h2>
-
-<p>Project facets can be grouped into categories in order to provide the "one
-click" exprience for novice users and retain the fine-grained control for advanced
-users. You are told that most of FormGen users always add both of the jars to
-their web apps. These users would benefit from having the FormGen facets grouped
-into a category and so we will do just that.</p>
-
-<p>Here is what that part of the extension point schema looks like:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets"></span>
- <category id="<span class="schema-type">{string}</span>">
- <label><span class="schema-type">{string}</span></label>
- <description><span class="schema-type">{string}</span></description> <span class="schema-control">(optional)</span>
- </category>
- <span class="context-code"><project-facet></span>
- <category><span class="schema-type">{string}</span></category> <span class="schema-control">(optional)</span>
- <span class="context-code"></project-facet></span>
-<span class="context-code"></extension></span>
-</pre>
-</div>
-
-<p>We can now create a category around the FormGen facets.</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets"></span>
-
- <category id="<span class="schema-type">formgen.category</span>">
- <label><span class="schema-type">FormGen</span></label>
- <description><span class="schema-type">Enables generation of HTML forms based on XML definition files.</span></description>
- </category>
-
- <span class="context-code"><project-facet id="formgen.core"></span>
- <category><span class="schema-type">formgen.category</span></category>
- <span class="context-code"></project-facet></span>
-
- <span class="context-code"><project-facet id="formgen.ext"></span>
- <category><span class="schema-type">formgen.category</span></category>
- <span class="context-code"></project-facet></span>
-
-<span class="context-code"></extension></span>
-</pre>
-</div>
-
-<p>Once the above change has been put in place, the facets selection page should
-look like this:</p>
-
-<div class="screen-shot"><img src="images/screen04.gif"/></div>
-
-<h2><a name="decorating">6. Decorating</a></h2>
-
-<p>Custom icons can be provided for facets and categories. If an icon is not
-provided, a default icon is used. The icons are helpful as a way to better
-differentiate facets and to make them stand out.</p>
-
-<p>Here is what that extension point looks like:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="org.eclipse.wst.common.project.facet.ui.images">
- <image facet="<span class="schema-type">{string}</span>" path="<span class="schema-type">{string}</span>"/> <span class="schema-control">(0 or more)</span>
- <image category="<span class="schema-type">{string}</span>" path="<span class="schema-type">{string}</span>"/> <span class="schema-control">(0 or more)</span>
-</extension>
-</pre>
-</div>
-
-<p>Your starter project came with three icons in the <code>icons</code> folder.
-We will now associate them with the FormGen facets and the category.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.ui.images</span>">
- <image facet="<span class="xml-text">formgen.core</span>" path="<span class="xml-text">icons/formgen-core.gif</span>"/>
- <image facet="<span class="xml-text">formgen.ext</span>" path="<span class="xml-text">icons/formgen-ext.gif</span>"/>
- <image category="<span class="xml-text">formgen.category</span>" path="<span class="xml-text">icons/formgen-cat.gif</span>"/>
-</extension>
-</pre>
-</div>
-
-<p>Once the above snippet has been added to your plugin.xml file, the facets
-selection page should look like this:</p>
-
-<div class="screen-shot"><img src="images/screen05.gif"/></div>
-
-<h2><a name="adding.wizard.pages">7. Adding Wizard Pages</a></h2>
-
-<p>It is often desirable to gather user input prior to installing a facet.
-The framework allows a sequence of wizard pages to be associated with facet
-actions. The supplied wizard pages are shown after the facets selection
-page. Based on user feedback, you known that FormGen users often customize
-the URL pattern of the FormGen servlet so you would like to give them the ability
-to do that in the wizard when the FormGen facets are being installed.</p>
-
-<p>Here is what the relevant parts of the extension points look like:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <action></span>
- <config-factory class="<span class="schema-type">class:org.eclipse.wst.common.project.facet.core.IActionConfigFactory</span>"/>
- <span class="context-code"></action>
-</extension></span>
-
-<extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.ui.wizardPages</span>">
- <wizard-pages action="<span class="schema-type">{string}</span>"> <span class="schema-control">(0 or more)</span>
- <page class="<span class="schema-type">{class:org.eclipse.wst.common.project.facet.ui.IFacetWizardPage}</span>"/> <span class="schema-control">(1 or more)</span>
- </wizard-pages>
-</extension>
-</pre>
-</div>
-
-<p>One thing to note here is that in order to enable communication between the
-facet action delegate and the wizard pages, we go back to the action declaration
-and provide an action config factory. The object created by the factory is
-populated by the wizard pages and is read by the action delegate. No restrictions
-are placed on the shape of the config object. You may choose to implement a custom
-class or you can use a something generic like <code>java.util.HashMap</code>.</p>
-
-<p>Another thing to note is that the <code>wizardPages</code> extension point refers
-to the actions by their ids, so it becomes more important to explicitly specify
-the id rather than letting the framework automatically generate one.</p>
-
-<p>Here are the interfaces that are used in the above extension point schema:</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> org.eclipse.wst.common.project.facet.core;
-
-<span class="java-keyword">import</span> org.eclipse.core.runtime.CoreException;
-
-<span class="java-comment">/**
- * This interface is implemented in order to provide a method for creating
- * a config object that will be used for parameterizing the facet action
- * delegate.
- */</span>
-
-<span class="java-keyword">public interface</span> IActionConfigFactory
-{
- <span class="java-comment">/**
- * Creates a new facet action configuration object. The new configuration
- * object should ideally be populated with reasonable defaults.
- *
- * <span class="java-javadoc-keyword">@return</span> a new facet action configuration object
- * <span class="java-javadoc-keyword">@throws</span> CoreException if failed while creating the configuration object
- */</span>
-
- Object create() <span class="java-keyword">throws</span> CoreException;
-}
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> org.eclipse.wst.common.project.facet.ui;
-
-<span class="java-keyword">import</span> org.eclipse.jface.wizard.IWizardPage;
-
-<span class="java-comment">/**
- * This interface is implemented by the wizard pages associated with project
- * facet actions.
- */</span>
-
-<span class="java-keyword">public interface</span> IFacetWizardPage <span class="java-keyword">extends</span> IWizardPage
-{
- <span class="java-comment">/**
- * The framework will call this method in order to provide the wizard
- * context to the wizard page. The wizard context can be used to find out
- * about other actions being configured by the wizard.
- *
- * <span class="java-javadoc-keyword">@param</span> context the wizard context
- */</span>
-
- <span class="java-keyword">void</span> setWizardContext( IWizardContext context );
-
- <span class="java-comment">/**
- * The framework will call this method in order to provide the action config
- * object that the wizard page should save user selection into. The
- * populated config object will then be passed to the action delegate.
- *
- * <span class="java-javadoc-keyword">@param</span> config the action config object
- */</span>
-
- <span class="java-keyword">void</span> setConfig( Object config );
-
- <span class="java-comment">/**
- * This method is called after the user has pressed the <code>Finish</code>
- * button. It allows the wizard page to transfer user selection into the
- * config object. Alternative, instead of using this method, the wizard
- * page could update the model on the fly as the user is making changes.
- */</span>
-
- <span class="java-keyword">void</span> transferStateToConfig();
-}
-</pre>
-</div>
-
-<p>We will now implement a wizard page for the <code>facet.core</code> facet
-install action. The wizard page will allow the user to change the default
-servlet URL pattern for the FormGen servlet.</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet-version facet="formgen.core" version="1.0">
- <action type="INSTALL"</span> id="<span class="xml-text">formgen.core.install</span>"<span class="context-code">></span>
- <config-factory class="<span class="xml-text">com.formgen.eclipse.FormGenCoreFacetInstallConfig$Factory</span>"/>
- <span class="context-code"></action>
- </project-facet-version>
-</extension></span>
-
-<extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.ui.wizardPages</span>">
- <wizard-pages action="<span class="xml-text">formgen.core.install</span>">
- <page class="<span class="schema-type">com.formgen.eclipse.FormGenCoreFacetInstallPage</span>"/>
- </wizard-pages>
-</extension>
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> com.formgen.eclipse;
-
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IActionConfigFactory;
-
-<span class="java-keyword">public final class</span> FormGenCoreFacetInstallConfig
-{
- <span class="java-keyword">private</span> String urlPattern = <span class="java-literal">"*.form"</span>;
-
- <span class="java-keyword">public</span> String getUrlPattern()
- {
- <span class="java-keyword">return this</span>.urlPattern;
- }
-
- <span class="java-keyword">public void</span> setUrlPattern( <span class="java-keyword">final</span> String urlPattern )
- {
- <span class="java-keyword">this</span>.urlPattern = urlPattern;
- }
-
- <span class="java-keyword">public static final class</span> Factory <span class="java-keyword">implements</span> IActionConfigFactory
- {
- <span class="java-keyword">public</span> Object create()
- {
- <span class="java-keyword">return new</span> FormGenCoreFacetInstallConfig();
- }
- }
-}
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> com.formgen.eclipse;
-
-<span class="java-keyword">import</span> org.eclipse.swt.SWT;
-<span class="java-keyword">import</span> org.eclipse.swt.layout.GridData;
-<span class="java-keyword">import</span> org.eclipse.swt.layout.GridLayout;
-<span class="java-keyword">import</span> org.eclipse.swt.widgets.Composite;
-<span class="java-keyword">import</span> org.eclipse.swt.widgets.Label;
-<span class="java-keyword">import</span> org.eclipse.swt.widgets.Text;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.ui.AbstractFacetWizardPage;
-
-<span class="java-keyword">public final class</span> FormGenCoreFacetInstallPage <span class="java-keyword">extends</span> AbstractFacetWizardPage
-{
- <span class="java-keyword">private</span> FormGenCoreFacetInstallConfig config;
- <span class="java-keyword">private</span> Text urlPatternTextField;
-
- <span class="java-keyword">public</span> FormGenCoreFacetInstallPage()
- {
- <span class="java-keyword">super</span>( <span class="java-literal">"formgen.core.facet.install.page"</span> );
-
- setTitle( <span class="java-literal">"FormGen Core"</span> );
- setDescription( <span class="java-literal">"Configure the FormGen servlet."</span> );
- }
-
- <span class="java-keyword">public void</span> createControl( <span class="java-keyword">final</span> Composite parent )
- {
- <span class="java-keyword">final</span> Composite composite = <span class="java-keyword">new</span> Composite( parent, SWT.NONE );
- composite.setLayout( <span class="java-keyword">new</span> GridLayout( 1, <span class="java-keyword">false</span> ) );
-
- <span class="java-keyword">final</span> Label label = <span class="java-keyword">new</span> Label( composite, SWT.NONE );
- label.setLayoutData( gdhfill() );
- label.setText( <span class="java-literal">"URL Pattern:"</span> );
-
- <span class="java-keyword">this</span>.urlPatternTextField = <span class="java-keyword">new</span> Text( composite, SWT.BORDER );
- <span class="java-keyword">this</span>.urlPatternTextField.setLayoutData( gdhfill() );
- <span class="java-keyword">this</span>.urlPatternTextField.setText( this.config.getUrlPattern() );
-
- setControl( composite );
- }
-
- <span class="java-keyword">public void</span> setConfig( <span class="java-keyword">final</span> Object config )
- {
- <span class="java-keyword">this</span>.config = (FormGenCoreFacetInstallConfig) config;
- }
-
- <span class="java-keyword">public void</span> transferStateToConfig()
- {
- <span class="java-keyword">this</span>.config.setUrlPattern( <span class="java-keyword">this</span>.urlPatternTextField.getText() );
- }
-
- <span class="java-keyword">private static</span> GridData gdhfill()
- {
- <span class="java-keyword">return new</span> GridData( GridData.FILL_HORIZONTAL );
- }
-}
-</pre>
-</div>
-
-<div class="code">
-<pre class="java-code"><span class="java-context"><span class="java-context-keyword">package</span> com.formgen.eclipse;
-
-<span class="java-context-keyword">import</span> org.eclipse.core.resources.IFolder;
-<span class="java-context-keyword">import</span> org.eclipse.core.resources.IProject;
-<span class="java-context-keyword">import</span> org.eclipse.core.runtime.CoreException;
-<span class="java-context-keyword">import</span> org.eclipse.core.runtime.IProgressMonitor;
-<span class="java-context-keyword">import</span> org.eclipse.core.runtime.Path;
-<span class="java-context-keyword">import</span> org.eclipse.wst.common.project.facet.core.IDelegate;
-<span class="java-context-keyword">import</span> org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-<span class="java-context-keyword">public final class</span> FormGenCoreFacetInstallDelegate <span class="java-context-keyword">implements</span> IDelegate
-{
- <span class="java-context-keyword">public void</span> execute( <span class="java-context-keyword">final</span> IProject pj,
- <span class="java-context-keyword">final</span> IProjectFacetVersion fv,
- <span class="java-context-keyword">final</span> Object config,
- <span class="java-context-keyword">final</span> IProgressMonitor monitor )
-
- <span class="java-context-keyword">throws</span> CoreException
-
- {
- monitor.beginTask( "", 2 );
-
- try
- {</span>
- <span class="java-keyword">final</span> FormGenCoreFacetInstallConfig cfg
- = (FormGenCoreFacetInstallConfig) config;
-
- <span class="java-context"><span class="java-context-keyword">final</span> IFolder webInfLib = Utils.getWebInfLibDir( pj );
-
- Utils.copyFromPlugin( <span class="java-context-keyword">new</span> Path( "libs/formgen-core.jar" ),
- webInfLib.getFile( "formgen-core.jar" ) );
-
- monitor.worked( 1 );</span>
-
- Utils.registerFormGenServlet( pj, cfg.getUrlPattern() );
-
- <span class="java-context">monitor.worked( 1 );
- }
- <span class="java-context-keyword">finally</span>
- {
- monitor.done();
- }
- }
-}</span>
-</pre>
-</div>
-
-<p>Once the above code changes have been made you should see another page appear
-in the Dynamic Web Project Wizard after the FormGen facets are selected. The
-new page will appear after the Web Module page, which is associated with the
-<code>jst.web</code> facet. That's because <code>formgen.core</code> facet
-depends on the <code>jst.web</code> facet. If this dependency relationship
-was not specified the relative order of these pages would be unspecified.</p>
-
-<div class="screen-shot"><img src="images/screen06.gif"/></div>
-
-<h2><a name="defining.presets">8. Defining Presets</a></h2>
-
-<p>As the number of available facets grows, it becomes increasingly difficult
-for the user to figure out which combinations make sense. This is where presets
-come in. Presets (or Configurations, as they are referred to in the UI) are
-simply combinations of facets that someone has determined are useful in certain
-situations. Presets can be created by the user or supplied via an extension
-point.</p>
-
-<p>Here is the extension point schema for declaring presets:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.core.facets</span>">
- <preset id="<span class="schema-type">{string}</span>">
- <label><span class="schema-type">{string}</span></label>
- <description><span class="schema-type">{string}</span></description> <span class="schema-control">(optional)</span>
- <facet id="<span class="schema-type">{string}</span>" version="<span class="schema-type">{string}</span>"/> <span class="schema-control">(1 or more)</span>
- </preset>
-</extension>
-</pre>
-</div>
-
-<p>Note that in order for a preset to apply to a given faceted project, the
-preset needs to include all of the project's "fixed facets". Fixed facets are
-the facets that are key to the proper operation of that project type and so
-cannot be removed. You can identify fixed facets by the lock icon.</p>
-
-<p>Let's now create a preset that includes formgen facets.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.core.facets</span>">
- <preset id="<span class="xml-text">formgen.preset</span>">
- <label><span class="xml-text">FormGen Web Project</span></label>
- <description><span class="xml-text">Creates a web project with FormGen functionality.</span></description>
- <facet id="<span class="xml-text">jst.java</span>" version="<span class="xml-text">5.0</span>"/>
- <facet id="<span class="xml-text">jst.web</span>" version="<span class="xml-text">2.2</span>"/>
- <facet id="<span class="xml-text">formgen.core</span>" version="<span class="xml-text">1.0</span>"/>
- <facet id="<span class="xml-text">formgen.ext</span>" version="<span class="xml-text">1.0</span>"/>
- </preset>
-</extension>
-</pre>
-</div>
-
-<p>Here is how the preset shows up on the facets selection page:</p>
-
-<div class="screen-shot"><img src="images/screen07.gif"/></div>
-
-<p>The preset can also be selected on the first page of all WTP project
-creation wizards. Here is how this looks in the Dynamic Web Project wizard:</p>
-
-<div class="screen-shot"><img src="images/screen08.gif"/></div>
-
-<h2><a name="runtime.mappings">9. Specifying Runtime Support Mappings</a></h2>
-
-<p>One of the most important functions of the faceted project framework is to
-be able to accurately model whether a certain server runtime supports a
-given project. We do that by "mapping" project facets to runtime components
-that support them. If the artifacts created by a facet will run on any server
-that supports all of the facet's upstream dependencies, then the <code>any</code>
-wildcard can be used.</p>
-
-<p>It's important to note that every facet needs to specify a support mapping of
-some kind. Facets that don't specify any support mappings are treated as not
-supported by any runtime, which is not very useful.</p>
-
-<p>Here is the extension point that's used for specifying the support mappings:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.core.runtimes</span>">
- <supported> <span class="schema-control">(0 or more)</span>
- <runtime-component any="<span class="schema-type">{boolean}</span>"/> <span class="schema-control">(optional)</span>
- <runtime-component id="<span class="schema-type">{string}</span>"/ version="<span class="schema-type"><span class="schema-type-link">{<a href="#version.expressions">version.expr</a>}</span></span>"/> <span class="schema-control">(0 or more)</span>
- <facet id="<span class="schema-type">{string}</span>"/ version="<span class="schema-type"><span class="schema-type-link">{<a href="#version.expressions">version.expr</a>}</span></span>"/> <span class="schema-control">(1 or more)</span>
- </supported>
-</extension>
-</pre>
-</div>
-
-<p>The <code><supported></code> block can reference any number of runtime
-components as well as any number of facets. The semantics of that is to declare
-as supported every combination in the resulting cross-product.</p>
-
-<p>The <code>version</code> attributes of the <code><runtime-component></code>
-and <code><facet></code> elements can be omitted to include all versions.</p>
-
-<p>The FormGen facets don't have any special support requirements. They will run
-on any server that supports the j2ee servlet spec. We will use the <code>any</code>
-wildcard to designate that.</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.core.runtimes</span>">
- <supported>
- <runtime-component any="<span class="xml-text">true</span>"/>
- <facet id="<span class="xml-text">formgen.core</span>"/>
- <facet id="<span class="xml-text">formgen.ext</span>"/>
- </supported>
-</extension>
-</pre>
-</div>
-
-<p>Alternative, if for some reason the FormGen functionality required a specific
-runtime, such as Tomcat, we would use something like the this instead:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.wst.common.project.facet.core.runtimes</span>">
- <supported>
- <runtime-component id="<span class="xml-text">org.eclipse.jst.server.tomcat</span>" version="<span class="xml-text">[5.0</span>"/>
- <facet id="<span class="xml-text">formgen.core</span>"/>
- <facet id="<span class="xml-text">formgen.ext</span>"/>
- </supported>
-</extension>
-</pre>
-</div>
-
-<p>The above more restrictive specification will prevent FormGen facets from
-being selected if the project is targetted to any runtime other than Apache
-Tomcat 5.0 or newer.</p>
-
-<h2><a name="summary">10. Summary</a></h2>
-
-<p>In this tutorial we created two fully-functional project facets by specifying
-constraints, implementing actions, grouping facets into categories, and creating
-wizard pages to allow users to parameterize facet installation. You should now
-be well prepared to create your own facets. Additional information not covered
-by this tutorial can be found in the following appendix sections.</p>
-
-<h2><a name="custom.version.comparators">Appendix A: Custom Version Comparators</a></h2>
-
-<p>The faceted project framework needs to be able to compare facet version
-strings. The framework supplies a default version comparator that can handle
-version strings encoded using the standard decimal notation (such as 1.2 or
-5.66.5533), but if you want to use a different format you will need to supply
-a custom version comparator.</p>
-
-<p>Here is how you plug in a custom version comparator:</p>
-
-<div class="code">
-<pre class="code-xml"><span class="context-code"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet></span>
- <version-comparator class="<span class="schema-type">{class:java.util.Comparator<String>}</span>"/>
- <span class="context-code"></project-facet>
-</extension></span>
-</pre>
-</div>
-
-<p>When implementing a version comparator you can either start from scratch
-or subclass the default version comparator (<code>org.eclipse.wst.common.project.facet.core.DefaultVersionComparator</code>).
-Subclassing the default version comparator makes sense if the version format
-differs only slightly from the default format, such as using separators other
-than dots or having non-numeric characters at certain positions. Here are the
-protected methods exposed by the <code>DefaultVersionComparator</code> class
-that are designed to be overridden:</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-comment">/**
- * Returns the string containing the separator characters that should be
- * used when breaking the version string into segments. The default
- * implementation returns ".". Subclasses can override this method.
- *
- * <span class="java-javadoc-keyword">@return</span> the separator characters
- */</span>
-
-<span class="java-keyword">protected</span> String getSeparators();
-
-<span class="java-comment">/**
- * Parses a segment of the version string. The default implementation parses
- * the first segment as an integer (leading zeroes are ignored) and the
- * rest of the segments as decimals (leading zeroes are kept). Subclasses
- * can override this method to provide custom parsing for any number of
- * segments.
- *
- * <span class="java-javadoc-keyword">@param</span> version the full version string
- * <span class="java-javadoc-keyword">@param</span> segment the version segment
- * <span class="java-javadoc-keyword">@param</span> position the position of the segment in the version string
- * <span class="java-javadoc-keyword">@return</span> the parsed representation of the segment as a {@see Comparable}
- * <span class="java-javadoc-keyword">@throws</span> VersionFormatException if encountered an error while parsing
- */</span>
-
-<span class="java-keyword">protected</span> Comparable parse( <span class="java-keyword">final</span> String version,
- <span class="java-keyword">final</span> String segment,
- <span class="java-keyword">final</span> int position )
-
- <span class="java-keyword">throws</span> VersionFormatException;
-</pre>
-</div>
-
-<h2><a name="version.expressions">Appendix B: Version Expressions</a></h2>
-
-<p>A version expression is a syntax for specifying more than one version. The
-version expressions are used throughout the framework's extension points, but
-you will most likely first encounter them while specifying the <code>requires</code>
-constraint.</p>
-
-<p>A version expression is composed of multiple segments separated by commas.
-The commas function as an OR operation. Each segment is either a single version,
-a range, or a wildcard. Ranges are represented by bracket and dash notation such
-as [x-y). A bracket means inclusive, while the parenthesis means exclusive. Open
-ended ranges are also supported. A wildcard (represented by '*' character) can
-be used to match any version. It is not possible to use the wildcard to match
-part of the version string.</p>
-
-<p>Here are some examples:</p>
-
-<div class="code">
-<pre class="java-code">1.2
-1.2,1.5,3.2
-[1.2-3.2]
-[3.7-5.0)
-[3.7
-5.0)
-1.2,[3.0-4.5),[7.3
-*
-</pre>
-</div>
-
-<h2><a name="property.tester">Appendix C: Property Tester</a></h2>
-
-<p>A property tester is provided by the Faceted Project Framework that allows
-the presence of the facet in a project to be tested by any extension point that
-works with <code>org.eclipse.core.expressions</code> package. The most common
-usage is to enable user interface elements (such as actions and project property
-pages). The property name is <code>org.eclipse.wst.common.project.facet.core.projectFacet</code>
-and the value is either a facet id or a facet id followed by a colon and
-a <a href="#version.expressions">version expression</a>.</p>
-
-<p>Here is an example of using facets property tester to control enablement of
-a project properties page:</p>
-
-<div class="code">
-<pre class="code-xml"><extension point="<span class="xml-text">org.eclipse.ui.propertyPages</span>">
- <page
- adaptable="<span class="xml-text">true</span>"
- objectClass="<span class="xml-text">org.eclipse.core.resources.IProject</span>"
- name="<span class="xml-text">FormGen Properties</span>"
- class="<span class="xml-text">com.formgen.eclipse.FormGenPropertiesPage</span>"
- id="<span class="xml-text">org.eclipse.jst.j2ee.internal.J2EEDependenciesPage</span>">
- <enabledWhen>
- <test
- forcePluginActivation="<span class="xml-text">true</span>"
- property="<span class="xml-text">org.eclipse.wst.common.project.facet.core.projectFacet</span>"
- value="<span class="xml-text">formgen.core</span>"/>
- </enabledWhen>
- </page>
-</extension>
-</pre>
-</div>
-
-<h2><a name="wizard.context">Appendix D: Wizard Context</a></h2>
-
-<p>Sometimes it desirable to be able to adjust the behavior of facet action
-wizard pages based on user input in the wizard pages of other facets. The
-<code>IWizardContext</code> interface can be used for this purpose. The wizard
-page gets a handle on <code>IWizardContext</code> interface when it's
-<code>setWizardContext</code> method is called. When writing code that relies
-on the wizard context, there are a couple of points you should keep in mind.</p>
-
-<ol>
-
- <li><p>The facet whose value you wish to check may have already been installed
- in the past. In that case you will not find it's install configuration in
- the wizard context. You will need to write conditional logic that will
- consult the wizard context or looks at project state on disk.</p></li>
-
- <li><p>You should make sure that a reasonable default is provided in your
- config object for the API-only scenario where your wizard page will not be
- involved.</p>
-
-</ol>
-
-<p>Here is what the <code>IWizardContext</code> interface looks like:</p>
-
-<div class="code">
-<pre class="java-code"><span class="java-keyword">package</span> org.eclipse.wst.common.project.facet.ui;
-
-<span class="java-keyword">import</span> java.util.Set;
-
-<span class="java-keyword">import</span> org.eclipse.core.runtime.CoreException;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-<span class="java-keyword">import</span> org.eclipse.wst.common.project.facet.core.IFacetedProject.Action.Type;
-
-<span class="java-comment">/**
- * The interface exposed to the facet action wizard pages that allows them
- * to gather information about the wizard state.
- */</span>
-
-<span class="java-keyword">public interface</span> IWizardContext
-{
- <span class="java-comment">/**
- * Returns the name of the project that the wizard is operating on. If the
- * wizard is in the project creation mode, the project will not yet exist
- * in the workspace.
- *
- * <span class="java-javadoc-keyword">@return</span> the name of the project that the wizard is operating on
- */</span>
-
- String getProjectName();
-
- <span class="java-comment">/**
- * Returns the set of facets currently selected in the wizard. If the wizard
- * is in the add/remove facets mode (vs. project creation), this method will
- * return the set of facets currently installed in a project after being
- * modified by the current set of actions.
- *
- * <span class="java-javadoc-keyword">@return</span> the set of facets currently selected in the wizard (element type:
- * {<span class="java-javadoc-keyword">@see</span> IProjectFacetVersion})
- */</span>
-
- Set getSelectedProjectFacets();
-
- <span class="java-comment">/**
- * Determines whether the specified facet is currently selected in the
- * wizard. See {@see getSelectedProjectFacets()} for more information.
- *
- * <span class="java-javadoc-keyword">@param</span> fv the project facet version object
- * <span class="java-javadoc-keyword">@return</span> <code>true</code> if an only if the provided project facet is
- * currently selected in the wizard
- */</span>
-
- <span class="java-keyword">boolean</span> isProjectFacetSelected( IProjectFacetVersion fv );
-
- <span class="java-comment">/**
- * Returns the set of actions currently specified by the user.
- *
- * <span class="java-javadoc-keyword">@return</span> the set of actions currently specified by the user
- */</span>
-
- Set getActions();
-
- <span class="java-comment">/**
- * Finds the action of specified type that applies to the specified facet,
- * if such action exists. If the wizard is in the add/remove facets mode
- * (vs. project creation), you cannot depend on finding the install action
- * for a required facet as that facet may have already been installed.
- *
- * <span class="java-javadoc-keyword">@param</span> type the action type
- * <span class="java-javadoc-keyword">@param</span> fv the project facet version object
- * <span class="java-javadoc-keyword">@return</span> the action object or <code>null</code>
- */</span>
-
- Action getAction( Action.Type type,
- IProjectFacetVersion fv );
-}
-</pre>
-</div>
-
-<br/><br/><br/>
-
-</body>
-
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew150.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew150.html
deleted file mode 100644
index c354809..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew150.html
+++ /dev/null
@@ -1,363 +0,0 @@
-<!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>What's New for 1.5?</title>
-<link
- rel="stylesheet"
- type="text/css"
- href="format.css">
-</head>
-
-<body>
-<p class="ueberschrift">What's New for 1.5?</p>
-
-<p>This document describes the API changes that have been made in the Faceted
-Project Framework for WTP 1.5 release. Both Java API and extension point changes
-are covered. Note that the Faceted Project Framework API remains provisional
-for the 1.5 release. This means it will continue undergoing further significant
-changes in future release(s).</p>
-
-<p><b>Attention:</b> All Java API and extension points that have been deprecated
-in the 1.5 release will be removed in the 2.0 release. Until that point they
-will continue to function and be fully supported.</p>
-
-<ol>
- <li><a href="#vexprs">Version Expressions</a></li>
- <li><a href="#actions">Action Definitions</a></li>
- <li><a href="#wizard">Wizard Pages</a></li>
- <li><a href="#event.handlers">Event Handlers</a></li>
- <li><a href="#runtimes">Targeting Multiple Runtimes</a></li>
- <li><a href="#presets">Descriptions for Presets</a></li>
- <li><a href="#misc">Miscellaneous</a></li>
-</ol>
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="vexprs">1. Version Expressions</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>Version expressions are used in various context throughout the framework's
-extension points and Java API when multiple versions need to be specified. In
-the 1.0.x release, the vesion expressions were of the form "<1.5,2.3,2.5,>=5.0",
-where commas indicate a disjunction (or). This syntax did not allow ranges to be
-specified and was unwieldy due to the need to escape the angle brackets in the
-plugin.xml files. So this syntax has been deprecated in the 1.5 release. The new
-syntax also uses commas to specify a disjunction, but now ranges can be
-specified using "[1.3-6.3)" notation. Square brackets mean inclusive, while
-parenthesis mean exclusive. Open ranges can also be specified using notation
-like "[1.3" and "6.3)".</p>
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="actions">2. Action Definitions</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>Action definitions have been made into first class entities with the new
-ability to be assigned an id and the creation of the browsing API. In addition,
-it is now possible to create constrained VERSION_CHANGE actions in order to
-designate precisely which versions the delegate is capable of changing from.
-Multiple VERSION_CHANGE delegates with different "from.versions" constraint
-can be specified.</p>
-
-<p><u>Extension Point Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- ...
- <action</font> id="string" <font color="#7B7B7B">... >
- ...
- </font>
- <property name="from.versions" value="string"/> <i>(0 or 1)</i>
- <font color="#7B7B7B">
- ...
- </action>
- ...
-<extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-org.eclipse.wst.common.project.facet.core.IActionDefinition
-{
- static final String PROP_FROM_VERSIONS;
- String getId();
- IProjectFacet getProjectFacet();
- IVersionExpr getVersionExpr();
- Action.Type getActionType();
- Map getProperties();
- Object getProperty( String name );
- Object createConfigObject( IProjectFacetVersion fv, String pjname );
-}
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IProjectFacetVersion
-{
- ...</font>
- boolean supports( Set base, Action.Type type );
- Set getActionDefinitions();
- Set getActionDefinitions( Action.Type type );
- IActionDefinition getActionDefinition( Set base, Action.Type type );
- <font color="#7B7B7B">...
-}</font>
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.ProjectFacetsManager
-{
- ...</font>
- Set getActionDefinitions();
- boolean isActionDefined( String id );
- IActionDefinition getActionDefinition( String id );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-<p><u>Deprecated Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor=#FFF1C1>
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IProjectFacetVersion
-{
- ...</font>
- boolean supports( Action.Type type );
- Object createActionConfig( Action.Type type, String pjname );
- boolean isSameActionConfig( Action.Type type, IProjectFacetVersion fv );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="wizard">3. Wizard Pages</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>The extension point schema for defining wizard pages associated with the
-project facet actions has been revised to be more flexible.</p>
-
-<p><u>Deprecated Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor=#FFF1C1>
-<pre>
-<extension point="org.eclipse.wst.common.project.facet.ui.wizard">
- <wizard-pages facet="...">
- <install> <i>(0 or 1)</i>
- <page class="..."/> <i>(1 or more)</i>
- </install>
- <uninstall> <i>(0 or 1)</i>
- <page class="..."/> <i>(1 or more)</i>
- </uninstall>
- </wizard-pages>
-</extension>
-</pre>
-</td></tr></table>
-
-<p><u>Replacement Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<extension point="org.eclipse.wst.common.project.facet.ui.wizardPages">
- <wizard-pages action="..."> <i>(1 or more)</i>
- <page class="..."/> <i>(1 or more)</i>
- </wizard-pages>
-</extension>
-</pre>
-</td></tr></table>
-
-<p>Note the new extension point id. The "action" attribute should contain the
-action that these pages are to be associated with. The action id can
-be explicitly specified via the new "id" attribute available on the "action"
-element of the core facets extension point. If not specified, the default id
-is generated using the "[facet-id]#[version-expression]#[action-type]"
-pattern.</p>
-
-<p><u>Deprecated Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#FFF1C1">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.ui.ProjectFacetsUiManager
-{
- ...</font>
- List getWizardPages( Action.Type type, IProjectFacetVersion fv );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-<p><u>Replacement Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.ui.ProjectFacetsUiManager
-{
- ...</font>
- List getWizardPages( String actionId );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="event.handlers">4. Event Handlers</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>A new event handling facility has been added. This makes for a clear separation
-between actions (user initiated), and events (automatic). Prior to this change
-it was possible to register a "runtime-changed" action. That usage is now
-deprecated and should be converted to use event handler extension point. Various
-new events have also been added.</p>
-
-<p><u>Event Types</u></p>
-
-<p>PRE_INSTALL, POST_INSTALL, PRE_UNINSTALL, POST_UNINSTALL, PRE_VERSION_CHANGE,
-POST_VERSION_CHANGE, RUNTIME_CHANGED</p>
-
-<p><u>Extension Point Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- ...</font>
- <event-handler type="..." facet="..." version="...">
- <delegate class="..."/>
- </event-handler>
- <font color="#7B7B7B">...
-<extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>RUNTIME_CHANGED Event</u></p>
-
-<p>In the 1.0.x release it was possible to register a "runtime-changed" action.
-That usage is now deprecated and should be converted into a RUNTIME_CHANGED
-event handler. The RUNTIME_CHANGED event handler delegate gets passed in a
-config object that carries additional information about the event.</p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-org.eclipse.wst.common.project.facet.core.IRuntimeChangedEvent
-{
- IRuntime getOldRuntime();
- IRuntime getNewRuntime();
-}
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="runtimes">5. Targeting Multiple Runtimes</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>The ability for a project to target multiple runtimes has been further
-fleshed out during the 1.5 release.</p>
-
-<p><u>Deprecated Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#FFF1C1">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{
- ...</font>
- IRuntime getRuntime();
- void setRuntime( IRuntime runtime );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-<p><u>Replacement Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{
- ...</font>
- Set getTargetedRuntimes();
- void setTargetedRuntimes( Set runtimes, IProgressMonitor monitor );
- void addTargetedRuntime( IRuntime runtime, IProgressMonitor monitor );
- void removeTargetedRuntime( IRuntime runtime, IProgressMonitor monitor );
- IRuntime getPrimaryRuntime();
- void setPrimaryRuntime( IRuntime runtime, IProgressMonitor monitor );
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="presets">6. Descriptions for Presets</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>It is now possible to associate description with presets.</p>
-
-<p><u>Extension Points Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- ...
- <preset>
- ...</font>
- <description>...</description> <i>(0 or 1)</i>
- <font color="#7B7B7B">...
- </preset>
- ...
-<extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>Java API Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.ProjectFacetsManager
-{
- ...</font>
- IPreset definePreset( String name, String description, Set facets );
- <font color="#7B7B7B">...
-}</font>
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IPreset
-{
- ...</font>
- String getDescription();
- <font color="#7B7B7B">...
-}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="misc">7. Miscellaneous</a></font></p>
-<!-- ********************************************************************** -->
-
-<p><u>Java API Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IProjectFacetVersion
-{
- ...</font>
- boolean isValidFor( Set fixed );
- boolean conflictsWith( IProjectFacetVersion fv );
- String getPluginId();
- <font color="#7B7B7B">...
-}</font>
-
-org.eclipse.wst.common.project.facet.core.IVersionExpr
-{
- boolean evaluate( String version );
- String toDisplayString();
-}
-</pre>
-</td></tr></table>
-
-<p></p>
-
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew151.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew151.html
deleted file mode 100644
index f6d3d8d..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew151.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<!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>What's New for 1.5.1?</title>
-<link
- rel="stylesheet"
- type="text/css"
- href="format.css">
-</head>
-
-<body>
-<p class="ueberschrift">What's New for 1.5.1?</p>
-
-<p>This document describes the API changes that have been made in the Faceted
-Project Framework for WTP 1.5.1 release. Both Java API and extension point
-changes are covered. Note that the Faceted Project Framework API remains
-provisional for the 1.5.1 release. This means it will continue undergoing
-further significant changes in future release(s).</p>
-
-<ol>
- <li><a href="#defver">Specifying Default Facet Version</a></li>
- <li><a href="#wildcard">Wildcard Support in Version Expressions</a></li>
-</ol>
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="vexprs">1. Specifying Default Facet Version</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>It is now possible to specify the facet version that will be used by default
-when the facet is presented to the user. There are two ways to specify the default
-version. You can either specify a static default or you can implement the
-<code>IDefaultVersionProvider</code> interface. If a default version is not
-specified, the latest version will be used instead.</p>
-
-<p><u>Extension Point Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet></font>
- <default-version version="{string}"/> <i>(optional)</i>
- <default-version provider="{class:org.eclipse.wst.common.project.facet.core.IDefaultVersionProvider}"/> <i>(optional)</i>
- <font color="#7B7B7B"></project-facet>
-<extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IProjectFacet
-{</font>
- IProjectFacetVersion getDefaultVersion();
-<font color="#7B7B7B">}</font>
-
-org.eclipse.wst.common.project.facet.core.IDefaultVersionProvider
-{
- IProjectFacetVersion getDefaultVersion();
-}
-</pre>
-</td></tr></table>
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="wildcard">2. Wildcard Support in Version Expressions</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>A wildcard character '*' can now be used in version expressions in order to
-match any version. Note that it is not possible to use the wildcard to match
-part of the version string.</p>
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IVersionExpr
-{</font>
- static final String WILDCARD_SYMBOL = "*";
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-<p></p>
-
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew20.html b/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew20.html
deleted file mode 100644
index 97f5f0b..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/content/whatsnew20.html
+++ /dev/null
@@ -1,447 +0,0 @@
-<!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>What's New for 2.0?</title>
-<link
- rel="stylesheet"
- type="text/css"
- href="format.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
-the WTP 2.0 release. Both Java API and extension point changes are covered. All API that was
-deprecated in this release is still supported, but clients are advised to switch to non-deprecated
-alternatives as soon as feasible.</p>
-
-<ol>
- <li><a href="#generics">Generics</a></li>
- <li><a href="#presets">Improvements to Presets</a></li>
- <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>
- <li><a href="#validate">New IFacetedProject Validation API</a></li>
- <li><a href="#new-wizard-class">AddRemoveFacetsWizard Class Renamed to ModifyFacetedProjectWizard</a></li>
- <li><a href="#pde-limitations">Extension Point Schema Changes to Work Around PDE Limitations</a></li>
- <li><a href="#listeners">Listeners and Events</a></li>
- <li><a href="#misc">Miscellaneous</a></li>
-</ol>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="#generics">1. Generics</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>All of the framework's API now use Java 5 generics. This has been done in a backwards compatible
-way and existing clients are expected to continue to work without any modifications. In order for a
-client to gain access to the type safety afforded by generics in this API, the client plugin's Java
-compiler level should be configured to be 5.0 or newer.</p>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="presets">2. Improvements to Presets</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>Significant improvements have been made to the presets facility for the 2.0 release. A new type of
-preset, referred to as a dynamic preset, is now available. A dynamic preset uses an extender-supplied
-factory to synthesize the preset definition on the fly based on the context in which it will be
-used. The "old-style" declarative presets are still available and are now referred to as static
-presets. Static presets have also been improved to allow them to extend other presets. A static
-preset can even extend a dynamic preset.</p>
-
-<p>There is also a new preset that's part of the framework. It's a dynamic preset with id of
-"default.configuration" and whose contents are synthesized as follows:</p>
-
-<ol>
- <li>If a runtime is selected, this preset will contain default facets as specified by
- IRuntime.getDefaultFacets(Set).</li>
- <li>If no runtime is selected, this preset will contain default versions for all of the fixed
- facets as specified by IProjectFacet.getDefaultVersion().</li>
-</ol>
-
-<p><u>New Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<extension point="org.eclipse.wst.common.project.facet.core.presets">
- <static-preset id="<i>{string}</i>" extends="<i>{string}</i>">
- <label><i>{string}</i></label> <i>(optional)</i>
- <description><i>{string}</i></description> <i>(optional)</i>
- <facet id="<i>{string}</i>" version="<i>{string}</i>"/> <i>(1 or more)</i>
- </static-preset> <i>(0 or more)</i>
- <dynamic-preset id="<i>{string}</i>">
- <factory class="<i>{class:org.eclipse.wst.common.project.facet.core.IPresetFactory}</i>"/>
- </dynamic-preset> <i>(0 or more)</i>
-<extension>
-</pre>
-</td></tr></table>
-
-<p><u>Deprecated Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#FFF1C1">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets"></font>
- <preset id="<i>{string}</i>">
- <label><i>{string}</i></label> <i>(optional)</i>
- <description><i>{string}</i></description> <i>(optional)</i>
- <facet id="<i>{string}</i>" version="<i>{string}</i>"/> <i>(1 or more)</i>
- </preset> <i>(0 or more)</i>
-<font color="#7B7B7B"><extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">interface org.eclipse.wst.common.project.facet.core.IPreset
-{</font>
- enum Type { STATIC, DYNAMIC, USER_DEFINED }
- Type getType();
-<font color="#7B7B7B">}</font>
-
-interface org.eclipse.wst.common.project.facet.core.IDynamicPreset extends IPreset
-{
- static final String CONTEXT_KEY_FIXED_FACETS;
- static final String CONTEXT_KEY_PRIMARY_RUNTIME;
- IPreset resolve( Map<String,Object> context );
-}
-
-interface org.eclipse.wst.common.project.facet.core.IPresetFactory
-{
- PresetDefinition createPreset( String presetId, Map<String,Object> context );
-}
-
-class org.eclipse.wst.common.project.facet.core.PresetDefinition
-{
- PresetDefinition( String label, String description, Set<IProjectFacetVersion> facets );
- String getLabel();
- String getDescription();
- Set<IProjectFacetVersion> getProjectFacets();
-}
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.FacetedProjectFramework
-{</font>
- static final String DEFAULT_CONFIGURATION_PRESET_ID;
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-<p><u>Deprecated Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor=#FFF1C1>
-<pre>
-<font color="#7B7B7B">interface org.eclipse.wst.common.project.facet.core.IPreset
-{</font>
- boolean isUserDefined()
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="#comparable">3. 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">4. 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"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet-version>
- <constraint></font>
- <requires group="group.id"/>
- <font color="#7B7B7B"></constraint>
- </project-facet-version>
-<extension></font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="group-labels">5. 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"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets"></font>
- <group id="..."> <i>(0 or more)</i>
- <label>...</label>
- <description>...</description> <i>(0 or 1)</i>
- </group>
-<font color="#7B7B7B"><extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>Java API Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </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><font size="+1"><a name="validate">6. New IFacetedProject Validation API</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>There is now API for validating the faceted project. It allows the caller to
-find out about any problems with the project without searching for problem
-markers created by the faceted project validation builder. The validation
-builder now uses the new API.</p>
-
-<p><u>Java API Changes</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{</font>
- IStatus validate( IProgressMonitor monitor );
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="new-wizard-class">7. AddRemoveFacetsWizard Class Renamed to ModifyFacetedProjectWizard</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>The AddRemoveFacetsWizard class has been renamed to ModifyFacetedProjectWizard
-to align with terminology change being made in the rest of the system. The old
-class is deprecated, but still supported (extends the new class).</p>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="pde-limitations">8. Extension Point Schema Changes to Work Around PDE Limitations</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>In order to work around false warnings reported by PDE's extension point schema validation, the
-following changes have been made to the framework's extension points. The old syntax is deprecated,
-but is still supported.</p>
-
-<p>When declaring that a facet belongs to a category...</p>
-
-<p><u>Old Syntax</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet></font>
- <category>...</category>
- <font color="#7B7B7B"></project-facet>
-<extension></font>
-</pre>
-</td></tr></table>
-
-<p><u>New Syntax</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets">
- <project-facet></font>
- <member category="..."/>
- <font color="#7B7B7B"></project-facet>
-<extension></font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="listeners">9. Listeners and Events</a></font></p>
-<!-- ********************************************************************** -->
-
-<p>The existing facilities for listening on faceted project model changes have been re-designed to
-provide more information about the change that took place and to provide the same facility
-regardless of whether the client chooses to register the listener via direct API call or via an
-extension point.</p>
-
-<p>In 1.5, extenders could either:</p>
-
-<ol>
-
- <li>Use <code>IFacetedProject.addListener()</code> method. Listener would get called when any
- aspect of faceted project model was changed, but the listener was not given any details about
- the change that took place.<br/><br/></li>
-
- <li>Use <code><event-handler></code> element of the
- <code>org.eclipse.wst.common.project.facet.core.facets</code> extension point to register an
- <code>IDelegate</code> implementation which is similar to how actions are implemented. This
- approach gave user a bit more control over what events to process as well as more information
- regarding what actually took place. However, not all changes could be surfaced via this
- interface due to limitations of the extension point and the <code>IDelegate</code> interface.</li>
-
-</ol>
-
-<p>Full discussion of the new facility can be found <a href="listeners.html">here</a>.</p>
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener
-{
- void handleEvent( IFacetedProjectEvent event );
-}
-
-org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent
-{
- enum Type
- {
- PROJECT_MODIFIED,
- PRE_INSTALL,
- POST_INSTALL,
- PRE_UNINSTALL,
- POST_UNINSTALL,
- PRE_VERSION_CHANGE,
- POST_VERSION_CHANGE,
- FIXED_FACETS_CHANGED,
- TARGETED_RUNTIMES_CHANGED,
- PRIMARY_RUNTIME_CHANGED
- }
-
- Type getType();
- IFacetedProject getProject();
-}
-
-org.eclipse.wst.common.project.facet.core.events.IFixedFacetsChangedEvent : IFacetedProjectEvent
-{
- Set<IProjectFacet> getOldFixedFacets();
- Set<IProjectFacet> getNewFixedFacets();
-}
-
-org.eclipse.wst.common.project.facet.core.events.IProjectFacetActionEvent : IFacetedProjectEvent
-{
- IProjectFacet getProjectFacet();
- IProjectFacetVersion getProjectFacetVersion();
- Object getActionConfig();
-}
-
-org.eclipse.wst.common.project.facet.core.events.IPrimaryRuntimeChangedEvent : IFacetedProjectEvent
-{
- IRuntime getOldPrimaryRuntime();
- IRuntime getNewPrimaryRuntime();
-}
-
-org.eclipse.wst.common.project.facet.core.events.ITargetedRuntimesChangedEvent : IFacetedProjectEvent
-{
- Set<IRuntime> getOldTargetedRuntimes();
- Set<IRuntime> getNewTargetedRuntimes();
-}
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{</font>
- void addListener( org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener, IFacetedProjectEvent.Type... );
- void removeListener( org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener );
-<font color="#7B7B7B">}</font>
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.FacetedProjectFramework
-{</font>
- void addListener( org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener, IFacetedProjectEvent.Type... );
- void removeListener( org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener );
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-<p><u>New Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<extension point="org.eclipse.wst.common.project.facet.core.listeners">
- <listener
- class="{class:org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener}"
- eventTypes="{csv:org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent.Type}"/> <i>(1 or more)</i>
-<extension>
-</pre>
-</td></tr></table>
-
-<p><u>Deprecated Java API</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor=#FFF1C1>
-<pre>
-org.eclipse.wst.common.project.facet.core.IFacetedProjectListener
-{
- projectChanged();
-}
-
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{</font>
- void addListener( org.eclipse.wst.common.project.facet.core.IFacetedProjectListener );
- void removeListener( org.eclipse.wst.common.project.facet.core.IFacetedProjectListener );
-<font color="#7B7B7B">}</font>
-
-org.eclipse.wst.common.project.facet.core.IRuntimeChangedEvent
-{
- IRuntime getOldRuntime();
- IRuntime getNewRuntime();
-}
-</pre>
-</td></tr></table>
-
-<p><u>Deprecated Extension Point</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#FFF1C1">
-<pre>
-<font color="#7B7B7B"><extension point="org.eclipse.wst.common.project.facet.core.facets"></font>
- <event-handler type="{string}" facet="{string}" version="{string}">
- <delegate class="{class:org.eclipse.wst.common.project.facet.core.IDelegate}"/>
- </event-handler>
-<font color="#7B7B7B"><extension></font>
-</pre>
-</td></tr></table>
-
-
-<!-- ********************************************************************** -->
-<p><font size="+1"><a name="misc">10. Miscellaneous</a></font></p>
-<!-- ********************************************************************** -->
-
-<p><u>Java API Additions</u></p>
-
-<table cellpadding="10"><tr><td width="10"> </td><td bgcolor="#E2E2E2">
-<pre>
-<font color="#7B7B7B">org.eclipse.wst.common.project.facet.core.IFacetedProject
-{</font>
- boolean isTargetable( IRuntime runtime );
- boolean isTargeted( IRuntime runtime );
-<font color="#7B7B7B">}</font>
-</pre>
-</td></tr></table>
-
-
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.properties b/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.properties
deleted file mode 100644
index 46efccb..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-pluginName = Faceted Project Framework API Documentation
-providerName = Eclipse.org
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.xml b/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.xml
deleted file mode 100644
index 2c0c04e..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
- <extension point="org.eclipse.help.toc">
- <toc file="toc.xml" primary="true">
- </toc>
- </extension>
-</plugin>
diff --git a/plugins/org.eclipse.wst.common.project.facet.doc.api/toc.xml b/plugins/org.eclipse.wst.common.project.facet.doc.api/toc.xml
deleted file mode 100644
index 5116230..0000000
--- a/plugins/org.eclipse.wst.common.project.facet.doc.api/toc.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?NLS TYPE="org.eclipse.help.toc"?>
-
-<toc label="Faceted Project Framework Developer Guide" topic="content/description.html">
- <topic label="Tutorial"
- href="content/tutorial/tutorial.html">
- </topic>
- <topic label="Listening for Changes to Faceted Projects"
- href="content/listeners.html">
- </topic>
- <topic label="Enabling UI Elements Based on Project Facets"
- href="content/enabling-based-on-facets.html">
- </topic>
- <topic label="Questions & Answers"
- href="content/questions.html">
- </topic>
- <topic label="New for 1.5"
- href="content/whatsnew150.html">
- </topic>
- <topic label="New for 1.5.1"
- href="content/whatsnew151.html">
- </topic>
- <topic label="New for 2.0"
- href="content/whatsnew20.html">
- </topic>
-</toc>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/.classpath b/tests/org.eclipse.wst.common.project.facet.core.tests/.classpath
deleted file mode 100644
index 304e861..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/.cvsignore b/tests/org.eclipse.wst.common.project.facet.core.tests/.cvsignore
deleted file mode 100644
index 52e8206..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-javaCompiler.tests.jar.args
-build.xml
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/.project b/tests/org.eclipse.wst.common.project.facet.core.tests/.project
deleted file mode 100644
index 34d80fc..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.common.project.facet.core.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.common.project.facet.core.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 7a5f1c3..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Fri Feb 02 16:51:39 PST 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.common.project.facet.core.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 7902a48..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,15 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Vendor: Eclipse.org
-Bundle-Name: Facet Core Tests Plug-in
-Bundle-SymbolicName: org.eclipse.wst.common.project.facet.core.tests;singleton:=true
-Bundle-Version: 1.3.0.qualifier
-Bundle-Localization: plugin
-Require-Bundle: org.junit,
- org.eclipse.wst.common.project.facet.core,
- org.eclipse.core.runtime,
- org.eclipse.core.resources
-Export-Package: org.eclipse.wst.common.project.facet.core.tests,
- org.eclipse.wst.common.project.facet.core.tests.support
-Bundle-ClassPath: tests.jar
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/about.html b/tests/org.eclipse.wst.common.project.facet.core.tests/about.html
deleted file mode 100644
index 9e73bda..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/build.properties b/tests/org.eclipse.wst.common.project.facet.core.tests/build.properties
deleted file mode 100644
index 07502c0..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/build.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-bin.includes = META-INF/,\
- plugin.xml,\
- test.xml,\
- tests.jar,\
- about.html,\
- resources/,\
- plugin.properties
-jars.compile.order = tests.jar
-source.tests.jar = src/
-output.tests.jar = bin/
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.properties b/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.properties
deleted file mode 100644
index 5883308..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-# properties file for org.eclipse.wst.common.project.facet.core.tests
-Bundle-Name.0 = Facet Core Tests Plug-in
\ No newline at end of file
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.xml b/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.xml
deleted file mode 100644
index 4fba5c6..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/plugin.xml
+++ /dev/null
@@ -1,574 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.2"?>
-
-<plugin>
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <category id="cat1">
- <label>Category 1</label>
- <description>This is the category description.</description>
- </category>
-
- <project-facet id="facet1">
- <label>Facet 1</label>
- <description>This is the description of facet1.</description>
- </project-facet>
-
- <project-facet-version facet="facet1" version="1.0">
- <action type="install">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1InstallDelegate"/>
- </action>
- <action type="uninstall">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1UninstallDelegate"/>
- </action>
- <action type="version-change">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1VersionChangeDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="facet1" version="1.2">
- <action type="install">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1InstallDelegate"/>
- </action>
- <action type="uninstall">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1UninstallDelegate"/>
- </action>
- <action type="version-change">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1VersionChangeDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="facet1" version="1.2.1"/>
- <project-facet-version facet="facet1" version="1.3"/>
- <project-facet-version facet="facet1" version="2.0"/>
-
- <action facet="facet1" version="[1.2.1-2.0]" type="install">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1InstallDelegate"/>
- </action>
-
- <action facet="facet1" version="[1.2.1-2.0]" type="uninstall">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1UninstallDelegate"/>
- </action>
-
- <action facet="facet1" version="[1.2.1-2.0]" type="version-change">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet1VersionChangeDelegate"/>
- </action>
-
- <project-facet id="facet2">
- <version-comparator class="org.eclipse.wst.common.project.facet.core.tests.support.CustomVersionComparator"/>
- <member category="cat1"/>
- </project-facet>
-
- <project-facet-version facet="facet2" version="3.5">
- <constraint>
- <requires facet="facet1" version="1.0"/>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="facet2" version="3.5#a">
- <constraint>
- <and>
- <requires facet="facet1" version="[1.2-1.3)"/>
- </and>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="facet2" version="4.7">
- <constraint>
- <or>
- <requires facet="facet1" version="[1.3"/>
- </or>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="facet2" version="4.7#b">
- <constraint>
- <or>
- <requires facet="facet1" version="1.3"/>
- <requires facet="facet1" version="2.0"/>
- </or>
- </constraint>
- </project-facet-version>
-
- <project-facet-version facet="facet2" version="4.7#c">
- <constraint>
- <and>
- <or>
- <requires facet="facet1" version="1.2.1"/>
- <requires facet="facet1" version="1.3"/>
- <requires facet="facet1" version="2.0"/>
- </or>
- <conflicts facet="facet3a"/>
- <conflicts facet="facet3b" version="1.0"/>
- <conflicts group="group1"/>
- </and>
- </constraint>
- <group-member id="group1"/>
- </project-facet-version>
-
- <project-facet id="facet2ext">
- <member category="cat1"/>
- </project-facet>
-
- <project-facet-version facet="facet2ext" version="1.0"/>
-
- <category id="cat2"/>
-
- <project-facet id="facet3a"> <!-- Tests a facet with no description. -->
- <member category="cat2"/>
- </project-facet>
-
- <project-facet-version facet="facet3a" version="1.0"/>
- <project-facet-version facet="facet3a" version="2.0"/>
-
- <action facet="facet3a" version="[1.0-2.0]" type="install">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet3aInstallDelegate"/>
- </action>
-
- <action facet="facet3a" version="[1.0-2.0]" type="uninstall">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet3aUninstallDelegate"/>
- </action>
-
- <action facet="facet3a" version="[1.0-2.0]" type="version-change">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.Facet3aVersionChangeDelegate"/>
- </action>
-
- <project-facet id="facet3b">
- <member category="cat2"/>
- <description></description> <!-- Tests a facet with an empty description. -->
- </project-facet>
-
- <project-facet-version facet="facet3b" version="1.0"/>
- <project-facet-version facet="facet3b" version="2.0"/>
-
- <project-facet id="facet3c">
- <member category="cat2"/>
- </project-facet>
-
- <project-facet-version facet="facet3c" version="1.0">
- <group-member id="group1"/>
- </project-facet-version>
-
- <project-facet-version facet="facet3c" version="2.0">
- <group-member id="group1"/>
- </project-facet-version>
-
- </extension>
-
- <!-- PresetsTests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.presets">
-
- <static-preset id="pt_preset1">
- <label>Preset 1</label>
- <description>This is the description for the first preset.</description>
- <facet id="facet1" version="2.0"/>
- <facet id="facet2" version="3.5#a"/>
- <facet id="facet2ext" version="1.0"/>
- </static-preset>
-
- <static-preset id="pt_preset2">
- <facet id="facet3a" version="1.0"/>
- <facet id="facet3b" version="1.0"/>
- <facet id="facet3c" version="1.0"/>
- </static-preset>
-
- <static-preset id="pt_preset3" extends="pt_preset1">
- <facet id="facet3a" version="1.0"/>
- <facet id="facet1" version="1.2.1"/> <!-- Tests that the version in derived preset wins. -->
- </static-preset>
-
- <dynamic-preset id="pt_dyn_preset">
- <factory class="org.eclipse.wst.common.project.facet.core.tests.PresetsTests$PresetFactory"/>
- </dynamic-preset>
-
- <static-preset id="pt_static_extending_dynamic_preset_1" extends="pt_dyn_preset">
- <label>Static Extending Dynamic Preset</label>
- <description>This is the static-dynamic description.</description>
- <facet id="facet2" version="3.5#a"/>
- <facet id="facet3b" version="1.0"/>
- </static-preset>
-
- <static-preset id="pt_static_extending_dynamic_preset_2" extends="pt_static_extending_dynamic_preset_1">
- <label>Static Extending Dynamic Preset 2</label>
- <description>This is the static-dynamic description 2.</description>
- <facet id="facet1" version="1.2.1"/>
- <facet id="facet3a" version="1.0"/>
- </static-preset>
-
- <!-- References facet that doesn't exist. -->
-
- <static-preset id="pt_bad.preset1">
- <facet id="abc" version="1.0"/>
- </static-preset>
-
- <!-- References facet version that doesn't exist. -->
-
- <static-preset id="pt_bad.preset2">
- <facet id="facet2" version="99.98"/>
- </static-preset>
-
- <!-- References base preset that doesn't exist. -->
-
- <static-preset id="pt_bad.preset3" extends="does.not.exist">
- <facet id="facet2" version="3.5#a"/>
- </static-preset>
-
- <!-- The following four presets form a cycle. -->
-
- <static-preset id="pt_cycle_preset1" extends="pt_cycle_preset3">
- <facet id="facet1" version="1.2.1"/>
- </static-preset>
-
- <static-preset id="pt_cycle_preset2" extends="pt_cycle_preset1">
- <facet id="facet1" version="1.2.1"/>
- </static-preset>
-
- <static-preset id="pt_cycle_preset3" extends="pt_cycle_preset2">
- <facet id="facet1" version="1.2.1"/>
- </static-preset>
-
- <static-preset id="pt_cycle_preset4" extends="pt_cycle_preset3">
- <facet id="facet1" version="1.2.1"/>
- </static-preset>
-
- </extension>
-
- <!-- Facet Constraint Tests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="fct_f1"/>
-
- <project-facet-version facet="fct_f1" version="1.0">
- <constraint>
- <conflicts facet="fct_f2"/>
- </constraint>
- </project-facet-version>
-
- <project-facet id="fct_f2"/>
-
- <project-facet-version facet="fct_f2" version="1.0">
- <constraint>
- <conflicts facet="fct_f4"/>
- </constraint>
- </project-facet-version>
-
- <project-facet id="fct_f3"/>
-
- <project-facet-version facet="fct_f3" version="1.0">
- <constraint>
- <requires facet="fct_f2" version="1.0"/>
- </constraint>
- </project-facet-version>
-
- <project-facet id="fct_f4"/>
-
- <project-facet-version facet="fct_f4" version="1.0">
- </project-facet-version>
-
- <project-facet id="fct_f5"/>
-
- <project-facet-version facet="fct_f5" version="1.0">
- <constraint>
- <requires facet="fct_f2" version="1.0" soft="true"/>
- </constraint>
- </project-facet-version>
-
- <project-facet id="fct_f6"/>
-
- <project-facet-version facet="fct_f6" version="1.0"/>
- <project-facet-version facet="fct_f6" version="2.3"/>
- <project-facet-version facet="fct_f6" version="3.7"/>
- <project-facet-version facet="fct_f6" version="4.0"/>
- <project-facet-version facet="fct_f6" version="4.5"/>
-
- <project-facet id="fct_f7"/>
-
- <project-facet-version facet="fct_f7" version="1.0">
- <constraint>
- <requires facet="fct_f6"/>
- </constraint>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="fct_f7" version="2.0">
- <constraint>
- <requires facet="fct_f6" version="[5.0-6.5)"/>
- </constraint>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet id="fct_f8"/>
-
- <project-facet-version facet="fct_f8" version="1.0">
- <group-member id="fct_g1"/>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="fct_f8" version="2.0">
- <group-member id="fct_g1"/>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="fct_f8" version="3.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet id="fct_f9"/>
-
- <project-facet-version facet="fct_f9" version="1.0">
- <group-member id="fct_g1"/>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet id="fct_f10"/>
-
- <project-facet-version facet="fct_f10" version="1.0">
- <constraint>
- <requires group="fct_g1"/>
- </constraint>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="fct_f10" version="2.0">
- <constraint>
- <requires group="fct_g1" soft="true"/>
- </constraint>
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <group id="fct_g1">
- <label>FCT Group 1</label>
- <description>This is the description.</description>
- </group>
-
- </extension>
-
- <!-- Default Version Tests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="dvt_f1"/>
-
- <project-facet-version facet="dvt_f1" version="1.0"/>
- <project-facet-version facet="dvt_f1" version="2.0"/>
- <project-facet-version facet="dvt_f1" version="3.0"/>
- <project-facet-version facet="dvt_f1" version="4.0"/>
-
- <project-facet id="dvt_f2">
- <default-version version="2.0"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f2" version="1.0"/>
- <project-facet-version facet="dvt_f2" version="2.0"/>
- <project-facet-version facet="dvt_f2" version="3.0"/>
- <project-facet-version facet="dvt_f2" version="4.0"/>
-
- <project-facet id="dvt_f3">
- <default-version provider="org.eclipse.wst.common.project.facet.core.tests.DefaultVersionTests$FacetDvtF3DefaultVersionProvider"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f3" version="1.0"/>
- <project-facet-version facet="dvt_f3" version="2.0"/>
- <project-facet-version facet="dvt_f3" version="3.0"/>
- <project-facet-version facet="dvt_f3" version="4.0"/>
-
- <project-facet id="dvt_f4">
- <default-version provider="org.eclipse.wst.common.project.facet.core.tests.DefaultVersionTests$FacetDvtF3DefaultVersionProvider"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f4" version="1.0"/>
- <project-facet-version facet="dvt_f4" version="2.0"/>
- <project-facet-version facet="dvt_f4" version="3.0"/>
- <project-facet-version facet="dvt_f4" version="4.0"/>
-
- <project-facet id="dvt_f5">
- <default-version provider="org.eclipse.wst.common.project.facet.core.tests.DefaultVersionTests$FacetDvtF5DefaultVersionProvider"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f5" version="1.0"/>
- <project-facet-version facet="dvt_f5" version="2.0"/>
- <project-facet-version facet="dvt_f5" version="3.0"/>
- <project-facet-version facet="dvt_f5" version="4.0"/>
-
- <project-facet id="dvt_f6">
- <default-version provider="org.eclipse.wst.common.project.facet.core.tests.DefaultVersionTests$FacetDvtF6DefaultVersionProvider"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f6" version="1.0"/>
- <project-facet-version facet="dvt_f6" version="2.0"/>
- <project-facet-version facet="dvt_f6" version="3.0"/>
- <project-facet-version facet="dvt_f6" version="4.0"/>
-
- <project-facet id="dvt_f7">
- <default-version version="5.0"/>
- </project-facet>
-
- <project-facet-version facet="dvt_f7" version="1.0"/>
- <project-facet-version facet="dvt_f7" version="2.0"/>
- <project-facet-version facet="dvt_f7" version="3.0"/>
- <project-facet-version facet="dvt_f7" version="4.0"/>
-
- </extension>
-
- <!-- FacetActionExecutionTests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="fat_f1"/>
-
- <project-facet-version facet="fat_f1" version="1.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.FacetActionsTests$F1v1InstallDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="fat_f1" version="2.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.FacetActionsTests$F1v2InstallDelegate"/>
- </action>
- </project-facet-version>
-
- </extension>
-
- <!-- UI Tests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="ui_long_label1">
- <label>This facet has a really really rather long label</label>
- <description>And a short description.</description>
- </project-facet>
-
- <project-facet-version facet="ui_long_label1" version="1.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <category id="ui_long_label_category">
- <label>Category for facets with long labels</label>
- </category>
-
- <project-facet id="ui_long_label2">
- <label>This facet has a really really rather long label</label>
- <member category="ui_long_label_category"/>
- </project-facet>
-
- <project-facet-version facet="ui_long_label2" version="1.2.3.4.5.6.7.8.9">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet-version facet="ui_long_label2" version="9.8.7.6.5.4.3.2.1">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- </extension>
-
- <!-- EventDeliveryTests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="edt_f1"/>
- <project-facet-version facet="edt_f1" version="1.0"/>
- <project-facet-version facet="edt_f1" version="2.0"/>
- <action facet="edt_f1" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f1" type="UNINSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f1" type="VERSION_CHANGE">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- <project-facet id="edt_f2"/>
- <project-facet-version facet="edt_f2" version="1.1"/>
- <project-facet-version facet="edt_f2" version="2.1"/>
- <action facet="edt_f2" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f2" type="UNINSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f2" type="VERSION_CHANGE">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- <project-facet id="edt_f3"/>
- <project-facet-version facet="edt_f3" version="1.2"/>
- <project-facet-version facet="edt_f3" version="2.2"/>
- <action facet="edt_f3" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f3" type="UNINSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f3" type="VERSION_CHANGE">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- <project-facet id="edt_f4"/>
- <project-facet-version facet="edt_f4" version="1.3"/>
- <project-facet-version facet="edt_f4" version="2.3"/>
- <action facet="edt_f4" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f4" type="UNINSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- <action facet="edt_f4" type="VERSION_CHANGE">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- </extension>
-
- <extension point="org.eclipse.wst.common.project.facet.core.listeners">
- <listener
- class="org.eclipse.wst.common.project.facet.core.tests.EventDeliveryTests$FullExtensionBasedListener"/>
- <listener
- class="org.eclipse.wst.common.project.facet.core.tests.EventDeliveryTests$PartialExtensionBasedListener"
- eventTypes="PRE_INSTALL,FIXED_FACETS_CHANGED"/>
- </extension>
-
- <!-- ProjectCreationTests -->
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <project-facet id="pct-f1"/>
- <project-facet-version facet="pct-f1" version="1.0"/>
- <action facet="pct-f1" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- <project-facet id="pct-f2"/>
- <project-facet-version facet="pct-f2" version="1.0"/>
- <action facet="pct-f2" type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
-
- </extension>
-
-</plugin>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.project b/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.project
deleted file mode 100644
index d53b033..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>testEventsAtProjectCreation3</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.wst.common.project.facet.core.builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
- </natures>
-</projectDescription>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.settings/org.eclipse.wst.common.project.facet.core.xml b/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.settings/org.eclipse.wst.common.project.facet.core.xml
deleted file mode 100644
index 2ccc526..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/resources/EventDeliveryTests.testEventsAtProjectCreation3/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<faceted-project>
- <installed facet="edt_f1" version="1.0"/>
- <installed facet="edt_f2" version="1.1"/>
-</faceted-project>
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AbstractTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AbstractTests.java
deleted file mode 100644
index b79703f..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AbstractTests.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import junit.framework.TestCase;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public abstract class AbstractTests
-
- extends TestCase
-
-{
- protected static final String DEFAULT_TEST_PROJECT_NAME = "testProject";
- protected static final IWorkspace ws = ResourcesPlugin.getWorkspace();
- protected final Set<IResource> resourcesToCleanup = new HashSet<IResource>();
- protected final List<Runnable> tearDownOperations = new ArrayList<Runnable>();
-
- protected AbstractTests( final String name )
- {
- super( name );
- }
-
- protected void tearDown()
-
- throws CoreException
-
- {
- for( IResource r : this.resourcesToCleanup )
- {
- r.delete( true, null );
- }
-
- for( Runnable runnable : this.tearDownOperations )
- {
- runnable.run();
- }
- }
-
- protected final void addResourceToCleanup( final IResource resource )
- {
- this.resourcesToCleanup.add( resource );
- }
-
- protected final void addTearDownOperation( final Runnable runnable )
- {
- this.tearDownOperations.add( runnable );
- }
-
- protected final IFacetedProject createFacetedProject()
-
- throws CoreException
-
- {
- return createFacetedProject( DEFAULT_TEST_PROJECT_NAME );
- }
-
- protected IFacetedProject createFacetedProject( final String name )
-
- throws CoreException
-
- {
- assertFalse( ws.getRoot().getProject( name ).exists() );
- final IFacetedProject fpj = ProjectFacetsManager.create( name, null, null );
- final IProject pj = fpj.getProject();
- assertTrue( pj.exists() );
- addResourceToCleanup( pj );
-
- return fpj;
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AllTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AllTests.java
deleted file mode 100644
index 3e115b6..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/AllTests.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class AllTests
-
- extends TestCase
-
-{
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "All Faceted Project Framework Tests" );
-
- suite.addTest( BasicTests.suite() );
- suite.addTest( PresetsTests.suite() );
- suite.addTest( ProjectCreationTests.suite() );
- suite.addTest( BasicFacetActionTests.suite() );
- suite.addTest( FacetActionSortTests.suite() );
- suite.addTest( FacetActionsTests.suite() );
- suite.addTest( ProjectChangeReactionTests.suite() );
- suite.addTest( FacetConstraintsTests.suite() );
- suite.addTest( DefaultVersionTests.suite() );
- suite.addTest( EventDeliveryTests.suite() );
-
- return suite;
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicFacetActionTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicFacetActionTests.java
deleted file mode 100644
index 7dce648..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicFacetActionTests.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import java.io.IOException;
-import java.util.Collections;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-import org.eclipse.wst.common.project.facet.core.tests.support.TestUtils;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class BasicFacetActionTests
-
- extends TestCase
-
-{
- private static final String TEST_PROJECT_NAME = "testProject";
- private static final IWorkspace ws = ResourcesPlugin.getWorkspace();
-
- private static final IFile facet1ArtifactFile
- = ws.getRoot().getProject( TEST_PROJECT_NAME ).getFile( "facet1.txt" );
-
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v10;
- private static IProjectFacetVersion f1v12;
- private static IProjectFacetVersion f1v121;
- private static IProjectFacetVersion f1v13;
- private static IProjectFacetVersion f1v20;
-
- static
- {
- try
- {
- f1 = ProjectFacetsManager.getProjectFacet( "facet1" );
- f1v10 = f1.getVersion( "1.0" );
- f1v12 = f1.getVersion( "1.2" );
- f1v121 = f1.getVersion( "1.2.1" );
- f1v13 = f1.getVersion( "1.3" );
- f1v20 = f1.getVersion( "2.0" );
- }
- catch( Exception e )
- {
- // Ignore failures. This api is tested explicitly.
- }
- }
-
- private IFacetedProject fpj;
-
- private BasicFacetActionTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Basic Facet Action Tests" );
-
- suite.addTest( new BasicFacetActionTests( "testFacetInstall1" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetInstall2" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetInstall3" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetUninstall1" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetUninstall2" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetUninstall3" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetVersionChange1" ) );
- suite.addTest( new BasicFacetActionTests( "testFacetVersionChange2" ) );
- suite.addTest( new BasicFacetActionTests( "testActionSeries" ) );
-
- return suite;
- }
-
- protected void setUp()
-
- throws CoreException
-
- {
- assertFalse( ws.getRoot().getProject( TEST_PROJECT_NAME ).exists() );
- this.fpj = ProjectFacetsManager.create( TEST_PROJECT_NAME, null, null );
- assertTrue( fpj.getProject().exists() );
- }
-
- protected void tearDown()
-
- throws CoreException
-
- {
- this.fpj.getProject().delete( true, null );
- }
-
- public void testFacetInstall1()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v10, null, null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v10.getVersionString() );
- }
-
- public void testFacetInstall2()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v121, null, null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v121.getVersionString() );
- }
-
- public void testFacetInstall3()
-
- throws CoreException, IOException
-
- {
- final Action action = new Action( Action.Type.INSTALL, f1v20, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v20.getVersionString() );
- }
-
- public void testFacetUninstall1()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v10, null, null );
- this.fpj.uninstallProjectFacet( f1v10, null, null );
- assertFalse( facet1ArtifactFile.exists() );
- }
-
- public void testFacetUninstall2()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v121, null, null );
- this.fpj.uninstallProjectFacet( f1v121, null, null );
- assertFalse( facet1ArtifactFile.exists() );
- }
-
- public void testFacetUninstall3()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v20, null, null );
- this.fpj.uninstallProjectFacet( f1v20, null, null );
- assertFalse( facet1ArtifactFile.exists() );
- }
-
- public void testFacetVersionChange1()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v10, null, null );
- final Action action = new Action( Action.Type.VERSION_CHANGE, f1v121, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v121.getVersionString() );
- }
-
- public void testFacetVersionChange2()
-
- throws CoreException, IOException
-
- {
- this.fpj.installProjectFacet( f1v13, null, null );
- final Action action = new Action( Action.Type.VERSION_CHANGE, f1v12, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v12.getVersionString() );
- }
-
- public void testActionSeries()
-
- throws CoreException, IOException
-
- {
- Action action;
-
- action = new Action( Action.Type.INSTALL, f1v10, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v10.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v12, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v12.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v121, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v121.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v13, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v13.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v20, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v20.getVersionString() );
-
- action = new Action( Action.Type.UNINSTALL, f1v20, null );
- this.fpj.modify( Collections.singleton( action ), null );
- assertFalse( facet1ArtifactFile.exists() );
-
- action = new Action( Action.Type.INSTALL, f1v12, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v12.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v13, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v13.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v10, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v10.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v20, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v20.getVersionString() );
-
- action = new Action( Action.Type.VERSION_CHANGE, f1v121, null );
- this.fpj.modify( Collections.singleton( action ), null );
- TestUtils.assertEquals( facet1ArtifactFile, f1v121.getVersionString() );
-
- action = new Action( Action.Type.UNINSTALL, f1v121, null );
- this.fpj.modify( Collections.singleton( action ), null );
- assertFalse( facet1ArtifactFile.exists() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicTests.java
deleted file mode 100644
index a07769a..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/BasicTests.java
+++ /dev/null
@@ -1,672 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.ICategory;
-import org.eclipse.wst.common.project.facet.core.IConstraint;
-import org.eclipse.wst.common.project.facet.core.IGroup;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class BasicTests
-
- extends TestCase
-
-{
- private static final String PLUGIN_ID
- = "org.eclipse.wst.common.project.facet.core.tests";
-
- public static IProjectFacet f1;
- public static IProjectFacetVersion f1v10;
- public static IProjectFacetVersion f1v12;
- public static IProjectFacetVersion f1v121;
- public static IProjectFacetVersion f1v13;
- public static IProjectFacetVersion f1v20;
-
- public static IProjectFacet f2;
- public static IProjectFacetVersion f2v35;
- public static IProjectFacetVersion f2v35a;
- public static IProjectFacetVersion f2v47;
- public static IProjectFacetVersion f2v47b;
- public static IProjectFacetVersion f2v47c;
-
- public static IProjectFacet f2ext;
- public static IProjectFacetVersion f2extv10;
-
- public static IProjectFacet f3a;
- public static IProjectFacetVersion f3av10;
- public static IProjectFacetVersion f3av20;
-
- public static IProjectFacet f3b;
- public static IProjectFacetVersion f3bv10;
- public static IProjectFacetVersion f3bv20;
-
- public static IProjectFacet f3c;
- public static IProjectFacetVersion f3cv10;
- public static IProjectFacetVersion f3cv20;
-
- static
- {
- try
- {
- f1 = ProjectFacetsManager.getProjectFacet( "facet1" );
- f1v10 = f1.getVersion( "1.0" );
- f1v12 = f1.getVersion( "1.2" );
- f1v121 = f1.getVersion( "1.2.1" );
- f1v13 = f1.getVersion( "1.3" );
- f1v20 = f1.getVersion( "2.0" );
-
- f2 = ProjectFacetsManager.getProjectFacet( "facet2" );
- f2v35 = f2.getVersion( "3.5" );
- f2v35a = f2.getVersion( "3.5#a" );
- f2v47 = f2.getVersion( "4.7" );
- f2v47b = f2.getVersion( "4.7#b" );
- f2v47c = f2.getVersion( "4.7#c" );
-
- f2ext = ProjectFacetsManager.getProjectFacet( "facet2ext" );
- f2extv10 = f2ext.getVersion( "1.0" );
-
- f3a = ProjectFacetsManager.getProjectFacet( "facet3a" );
- f3av10 = f3a.getVersion( "1.0" );
- f3av20 = f3a.getVersion( "2.0" );
-
- f3b = ProjectFacetsManager.getProjectFacet( "facet3b" );
- f3bv10 = f3b.getVersion( "1.0" );
- f3bv20 = f3b.getVersion( "2.0" );
-
- f3c = ProjectFacetsManager.getProjectFacet( "facet3c" );
- f3cv10 = f3c.getVersion( "1.0" );
- f3cv20 = f3c.getVersion( "2.0" );
- }
- catch( Exception e )
- {
- // Ignore failures. This api is tested explicitly.
- }
- }
-
- private BasicTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Basic Tests" );
-
- suite.addTest( new BasicTests( "testProjectFacetExtensionPoint" ) );
- suite.addTest( new BasicTests( "testProjectFacetVersionExtensionPoint" ) );
- suite.addTest( new BasicTests( "testCategoryExtensionPoint" ) );
- suite.addTest( new BasicTests( "testDefaultVersionComparator" ) );
- suite.addTest( new BasicTests( "testCustomVersionComparator" ) );
- suite.addTest( new BasicTests( "testVersionExpressions" ) );
- suite.addTest( new BasicTests( "testVersionExpressionsWithUnknownVersions" ) );
- suite.addTest( new BasicTests( "testConstraints" ) );
- suite.addTest( new BasicTests( "testConstraintApi" ) );
-
- return suite;
- }
-
- public void testProjectFacetExtensionPoint()
- {
- assertTrue( ProjectFacetsManager.isProjectFacetDefined( "facet1" ) );
- final IProjectFacet f1 = ProjectFacetsManager.getProjectFacet( "facet1" );
- assertTrue( ProjectFacetsManager.getProjectFacets().contains( f1 ) );
-
- assertEquals( f1.getId(), "facet1" );
- assertEquals( f1.getLabel(), "Facet 1" );
- assertEquals( f1.getDescription(), "This is the description of facet1." );
- assertEquals( f1.getPluginId(), PLUGIN_ID );
-
- assertTrue( ProjectFacetsManager.isProjectFacetDefined( "facet2" ) );
- final IProjectFacet f2 = ProjectFacetsManager.getProjectFacet( "facet2" );
- assertTrue( ProjectFacetsManager.getProjectFacets().contains( f2 ) );
-
- assertEquals( f2.getId(), "facet2" );
- assertEquals( f2.getLabel(), "facet2" );
- assertEquals( f2.getDescription(), "" );
- assertEquals( f2.getPluginId(), PLUGIN_ID );
- }
-
- public void testProjectFacetVersionExtensionPoint()
- {
- assertTrue( f1.hasVersion( "1.0" ) );
- final IProjectFacetVersion f1v10 = f1.getVersion( "1.0" );
- assertEquals( f1v10.getVersionString(), "1.0" );
- assertEquals( f1v10.getProjectFacet(), f1 );
- assertEquals( f1v10.getPluginId(), PLUGIN_ID );
-
- assertTrue( f1.hasVersion( "1.2" ) );
- final IProjectFacetVersion f1v12 = f1.getVersion( "1.2" );
- assertEquals( f1v12.getVersionString(), "1.2" );
- assertEquals( f1v12.getProjectFacet(), f1 );
- assertEquals( f1v12.getPluginId(), PLUGIN_ID );
-
- assertTrue( f1.hasVersion( "1.2.1" ) );
- final IProjectFacetVersion f1v121 = f1.getVersion( "1.2.1" );
- assertEquals( f1v121.getVersionString(), "1.2.1" );
- assertEquals( f1v121.getProjectFacet(), f1 );
- assertEquals( f1v121.getPluginId(), PLUGIN_ID );
-
- assertTrue( f1.hasVersion( "1.3" ) );
- final IProjectFacetVersion f1v13 = f1.getVersion( "1.3" );
- assertEquals( f1v13.getVersionString(), "1.3" );
- assertEquals( f1v13.getProjectFacet(), f1 );
- assertEquals( f1v13.getPluginId(), PLUGIN_ID );
-
- assertTrue( f1.hasVersion( "2.0" ) );
- final IProjectFacetVersion f1v20 = f1.getVersion( "2.0" );
- assertEquals( f1v20.getVersionString(), "2.0" );
- assertEquals( f1v20.getProjectFacet(), f1 );
- assertEquals( f1v20.getPluginId(), PLUGIN_ID );
-
- assertEquals( f1.getVersions(),
- asSet( f1v10, f1v12, f1v121, f1v13, f1v20 ) );
-
- assertTrue( f2.hasVersion( "3.5" ) );
- final IProjectFacetVersion f2v35 = f2.getVersion( "3.5" );
- assertEquals( f2v35.getVersionString(), "3.5" );
- assertEquals( f2v35.getProjectFacet(), f2 );
- assertEquals( f2v35.getPluginId(), PLUGIN_ID );
-
- assertTrue( f2.hasVersion( "3.5#a" ) );
- final IProjectFacetVersion f2v35a = f2.getVersion( "3.5#a" );
- assertEquals( f2v35a.getVersionString(), "3.5#a" );
- assertEquals( f2v35a.getProjectFacet(), f2 );
- assertEquals( f2v35a.getPluginId(), PLUGIN_ID );
-
- assertTrue( f2.hasVersion( "4.7" ) );
- final IProjectFacetVersion f2v47 = f2.getVersion( "4.7" );
- assertEquals( f2v47.getVersionString(), "4.7" );
- assertEquals( f2v47.getProjectFacet(), f2 );
- assertEquals( f2v47.getPluginId(), PLUGIN_ID );
-
- assertTrue( f2.hasVersion( "4.7#b" ) );
- final IProjectFacetVersion f2v47b = f2.getVersion( "4.7#b" );
- assertEquals( f2v47b.getVersionString(), "4.7#b" );
- assertEquals( f2v47b.getProjectFacet(), f2 );
- assertEquals( f2v47b.getPluginId(), PLUGIN_ID );
-
- assertTrue( f2.hasVersion( "4.7#c" ) );
- final IProjectFacetVersion f2v47c = f2.getVersion( "4.7#c" );
- assertEquals( f2v47c.getVersionString(), "4.7#c" );
- assertEquals( f2v47c.getProjectFacet(), f2 );
- assertEquals( f2v47c.getPluginId(), PLUGIN_ID );
-
- assertEquals( f2.getVersions(),
- asSet( f2v35, f2v35a, f2v47, f2v47b, f2v47c ) );
-
- // Check for version that doesn't exist.
-
- assertFalse( f2.hasVersion( "6.9" ) );
-
- try
- {
- f2.getVersion( "6.9" );
- fail();
- }
- catch( IllegalArgumentException e ) {}
- }
-
- public void testCategoryExtensionPoint()
- {
- assertTrue( ProjectFacetsManager.isCategoryDefined( "cat1" ) );
- final ICategory cat1 = ProjectFacetsManager.getCategory( "cat1" );
- assertTrue( ProjectFacetsManager.getCategories().contains( cat1 ) );
-
- assertEquals( cat1.getId(), "cat1" );
- assertEquals( cat1.getLabel(), "Category 1" );
- assertEquals( cat1.getDescription(), "This is the category description." );
- assertEquals( cat1.getPluginId(), PLUGIN_ID );
-
- assertEquals( cat1.getProjectFacets(), asSet( f2, f2ext ) );
- assertEquals( f2.getCategory(), cat1 );
- assertEquals( f2ext.getCategory(), cat1 );
-
- assertTrue( ProjectFacetsManager.isCategoryDefined( "cat2" ) );
- final ICategory cat2 = ProjectFacetsManager.getCategory( "cat2" );
- assertTrue( ProjectFacetsManager.getCategories().contains( cat2 ) );
-
- assertEquals( cat2.getId(), "cat2" );
- assertEquals( cat2.getLabel(), "cat2" );
- assertEquals( cat2.getDescription(), "" );
- assertEquals( cat2.getPluginId(), PLUGIN_ID );
-
- assertEquals( cat2.getProjectFacets(), asSet( f3a, f3b, f3c ) );
- assertEquals( f3a.getCategory(), cat2 );
- assertEquals( f3b.getCategory(), cat2 );
- assertEquals( f3c.getCategory(), cat2 );
- }
-
- @SuppressWarnings( "unchecked" )
- public void testDefaultVersionComparator()
-
- throws CoreException
-
- {
- final Comparator<String> comp = f1.getVersionComparator();
-
- assertEquals( comp.getClass().getName(),
- "org.eclipse.wst.common.project.facet.core.DefaultVersionComparator" );
-
- assertTrue( comp.compare( "1.0", "1.2" ) < 0 );
- assertTrue( comp.compare( "1.2", "1.2.1" ) < 0 );
- assertTrue( comp.compare( "1.2.1", "2.0" ) < 0 );
-
- assertTrue( comp.compare( "1.2", "1.0" ) > 0 );
- assertTrue( comp.compare( "1.2.1", "1.2" ) > 0 );
- assertTrue( comp.compare( "2.0", "1.2.1" ) > 0 );
-
- assertTrue( comp.compare( "1.0", "1.0" ) == 0 );
- assertTrue( comp.compare( "1.2", "1.2" ) == 0 );
- assertTrue( comp.compare( "1.2.1", "1.2.1" ) == 0 );
- assertTrue( comp.compare( "2.0", "2.0" ) == 0 );
-
- assertTrue( f1v10.compareTo( f1v12 ) < 0 );
- assertTrue( f1v12.compareTo( f1v121 ) < 0 );
- assertTrue( f1v121.compareTo( f1v20 ) < 0 );
-
- assertTrue( f1v12.compareTo( f1v10 ) > 0 );
- assertTrue( f1v121.compareTo( f1v12 ) > 0 );
- assertTrue( f1v20.compareTo( f1v121 ) > 0 );
-
- assertTrue( f1v10.compareTo( f1v10 ) == 0 );
- assertTrue( f1v12.compareTo( f1v12 ) == 0 );
- assertTrue( f1v121.compareTo( f1v121 ) == 0 );
- assertTrue( f1v20.compareTo( f1v20 ) == 0 );
-
- assertEquals( f1.getLatestVersion(), f1v20 );
-
- final List asc = f1.getSortedVersions( true );
-
- assertEquals( asc.size(), 5 );
- assertEquals( asc.get( 0 ), f1v10 );
- assertEquals( asc.get( 1 ), f1v12 );
- assertEquals( asc.get( 2 ), f1v121 );
- assertEquals( asc.get( 3 ), f1v13 );
- assertEquals( asc.get( 4 ), f1v20 );
-
- final List desc = f1.getSortedVersions( false );
-
- assertEquals( desc.size(), 5 );
- assertEquals( desc.get( 0 ), f1v20 );
- assertEquals( desc.get( 1 ), f1v13 );
- assertEquals( desc.get( 2 ), f1v121 );
- assertEquals( desc.get( 3 ), f1v12 );
- assertEquals( desc.get( 4 ), f1v10 );
- }
-
- @SuppressWarnings( "unchecked" )
- public void testCustomVersionComparator()
-
- throws CoreException
-
- {
- final Comparator<String> comp = f2.getVersionComparator();
-
- assertEquals( comp.getClass().getName(),
- "org.eclipse.wst.common.project.facet.core.tests.support.CustomVersionComparator" );
-
- assertTrue( comp.compare( "3.5", "4.7" ) < 0 );
- assertTrue( comp.compare( "3.5", "3.5#a" ) < 0 );
- assertTrue( comp.compare( "4.7#c", "4.7#b" ) < 0 );
-
- assertTrue( comp.compare( "4.7", "3.5" ) > 0 );
- assertTrue( comp.compare( "3.5#a", "3.5" ) > 0 );
- assertTrue( comp.compare( "4.7#b", "4.7#c" ) > 0 );
-
- assertTrue( comp.compare( "3.5", "3.5" ) == 0 );
- assertTrue( comp.compare( "3.5#a", "3.5#a" ) == 0 );
- assertTrue( comp.compare( "4.7", "4.7" ) == 0 );
- assertTrue( comp.compare( "4.7#b", "4.7#b" ) == 0 );
-
- assertTrue( f2v35.compareTo( f2v47 ) < 0 );
- assertTrue( f2v35.compareTo( f2v35a ) < 0 );
- assertTrue( f2v47c.compareTo( f2v47b ) < 0 );
-
- assertTrue( f2v47.compareTo( f2v35 ) > 0 );
- assertTrue( f2v35a.compareTo( f2v35 ) > 0 );
- assertTrue( f2v47b.compareTo( f2v47c ) > 0 );
-
- assertTrue( f2v35.compareTo( f2v35 ) == 0 );
- assertTrue( f2v35a.compareTo( f2v35a ) == 0 );
- assertTrue( f2v47.compareTo( f2v47 ) == 0 );
- assertTrue( f2v47b.compareTo( f2v47b ) == 0 );
-
- assertEquals( f2.getLatestVersion(), f2v47b );
-
- final List asc = f2.getSortedVersions( true );
-
- assertEquals( asc.size(), 5 );
- assertEquals( asc.get( 0 ), f2v35 );
- assertEquals( asc.get( 1 ), f2v35a );
- assertEquals( asc.get( 2 ), f2v47 );
- assertEquals( asc.get( 3 ), f2v47c );
- assertEquals( asc.get( 4 ), f2v47b );
-
- final List desc = f2.getSortedVersions( false );
-
- assertEquals( desc.size(), 5 );
- assertEquals( desc.get( 0 ), f2v47b );
- assertEquals( desc.get( 1 ), f2v47c );
- assertEquals( desc.get( 2 ), f2v47 );
- assertEquals( desc.get( 3 ), f2v35a );
- assertEquals( desc.get( 4 ), f2v35 );
- }
-
- public void testVersionExpressions()
-
- throws CoreException
-
- {
- assertEquals( f1.getVersions( "1.2" ),
- asSet( f1v12 ) );
-
- assertEquals( f1.getVersions( "1.2,1.3" ),
- asSet( f1v12, f1v13 ) );
-
- assertEquals( f1.getVersions( "1.0,1.2,1.2.1,1.3,2.0" ),
- asSet( f1v10, f1v12, f1v121, f1v13, f1v20 ) );
-
- assertEquals( f1.getVersions( "[1.2" ),
- asSet( f1v12, f1v121, f1v13, f1v20 ) );
-
- assertEquals( f1.getVersions( "(1.2" ),
- asSet( f1v121, f1v13, f1v20 ) );
-
- assertEquals( f1.getVersions( "1.3]" ),
- asSet( f1v10, f1v12, f1v121, f1v13 ) );
-
- assertEquals( f1.getVersions( "1.3)" ),
- asSet( f1v10, f1v12, f1v121 ) );
-
- assertEquals( f1.getVersions( "[1.2-1.3]" ),
- asSet( f1v12, f1v121, f1v13 ) );
-
- assertEquals( f1.getVersions( "[1.2-1.3)" ),
- asSet( f1v12, f1v121 ) );
-
- assertEquals( f1.getVersions( "(1.2-1.3]" ),
- asSet( f1v121, f1v13 ) );
-
- assertEquals( f1.getVersions( "1.0,(1.2-1.3],2.0" ),
- asSet( f1v10, f1v121, f1v13, f1v20 ) );
- }
-
- /**
- * Tests the cases where version expressions make references to facet versions that don't
- * actually exist.
- *
- * @throws CoreException
- */
-
- public void testVersionExpressionsWithUnknownVersions()
-
- throws CoreException
-
- {
- assertEquals( f1.getVersions( "[0.5-1.2]" ), asSet( f1v10, f1v12 ) );
- assertEquals( f1.getVersions( "[1.2.2-2.0]" ), asSet( f1v13, f1v20 ) );
- assertEquals( f1.getVersions( "[0.5-10.0)" ), asSet( f1v10, f1v12, f1v121, f1v13, f1v20 ) );
- assertEquals( f1.getVersions( "[10.0-25]" ), Collections.emptySet() );
- assertEquals( f1.getVersions( "3.0,4.5" ), Collections.emptySet() );
- assertEquals( f1.getVersions( "5.7" ), Collections.emptySet() );
- }
-
- @SuppressWarnings( "unchecked" )
- public void testConstraints()
- {
- /*
- * Version: 3.5
- *
- * <requires facet="facet1" version="1.0"/>
- */
-
- assertFalse( f2v35.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertTrue( f2v35.getConstraint().check( asSet( f1v10 ) ).isOK() );
- assertFalse( f2v35.getConstraint().check( asSet( f1v12 ) ).isOK() );
- assertFalse( f2v35.getConstraint().check( asSet( f1v121 ) ).isOK() );
- assertFalse( f2v35.getConstraint().check( asSet( f1v13 ) ).isOK() );
- assertFalse( f2v35.getConstraint().check( asSet( f1v20 ) ).isOK() );
-
- /*
- * Version: 3.5#a
- *
- * <and>
- * <requires facet="facet1" version="[1.2-1.3)"/>
- * </and>
- */
-
- assertFalse( f2v35a.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertFalse( f2v35a.getConstraint().check( asSet( f1v10 ) ).isOK() );
- assertTrue( f2v35a.getConstraint().check( asSet( f1v12 ) ).isOK() );
- assertTrue( f2v35a.getConstraint().check( asSet( f1v121 ) ).isOK() );
- assertFalse( f2v35a.getConstraint().check( asSet( f1v13 ) ).isOK() );
- assertFalse( f2v35a.getConstraint().check( asSet( f1v20 ) ).isOK() );
-
- /*
- * Version: 4.7
- *
- * <or>
- * <requires facet="facet1" version="[1.3"/>
- * </or>
- */
-
- assertFalse( f2v47.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertFalse( f2v47.getConstraint().check( asSet( f1v10 ) ).isOK() );
- assertFalse( f2v47.getConstraint().check( asSet( f1v12 ) ).isOK() );
- assertFalse( f2v47.getConstraint().check( asSet( f1v121 ) ).isOK() );
- assertTrue( f2v47.getConstraint().check( asSet( f1v13 ) ).isOK() );
- assertTrue( f2v47.getConstraint().check( asSet( f1v20 ) ).isOK() );
-
- /*
- * Version: 4.7#b
- *
- * <or>
- * <requires facet="facet1" version="1.3"/>
- * <requires facet="facet1" version="2.0"/>
- * </or>
- */
-
- assertFalse( f2v47b.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertFalse( f2v47b.getConstraint().check( asSet( f1v10 ) ).isOK() );
- assertFalse( f2v47b.getConstraint().check( asSet( f1v12 ) ).isOK() );
- assertFalse( f2v47b.getConstraint().check( asSet( f1v121 ) ).isOK() );
- assertTrue( f2v47b.getConstraint().check( asSet( f1v13 ) ).isOK() );
- assertTrue( f2v47b.getConstraint().check( asSet( f1v20 ) ).isOK() );
-
- /*
- * Version: 4.7#c
- *
- * <and>
- * <or>
- * <requires facet="facet1" version="1.2.1"/>
- * <requires facet="facet1" version="1.3"/>
- * <requires facet="facet1" version="2.0"/>
- * </or>
- * <conflicts facet="facet3a"/>
- * <conflicts facet="facet3b" version="1.0"/>
- * <conflicts group="group1"/>
- * </and>
- */
-
- assertFalse( f2v47c.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v10 ) ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v12 ) ).isOK() );
- assertTrue( f2v47c.getConstraint().check( asSet( f1v121 ) ).isOK() );
- assertTrue( f2v47c.getConstraint().check( asSet( f1v13 ) ).isOK() );
- assertTrue( f2v47c.getConstraint().check( asSet( f1v20 ) ).isOK() );
-
- assertFalse( f2v47c.getConstraint().check( asSet( f1v20, f3av10 ) ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v20, f3av20 ) ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v20, f3bv10 ) ).isOK() );
- assertTrue( f2v47c.getConstraint().check( asSet( f1v20, f3bv20 ) ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v20, f3cv10 ) ).isOK() );
- assertFalse( f2v47c.getConstraint().check( asSet( f1v20, f3cv20 ) ).isOK() );
- }
-
- public void testConstraintApi()
- {
- assertEquals( IConstraint.Type.AND.name(), "and" );
- assertTrue( IConstraint.Type.valueOf( "and" ) == IConstraint.Type.AND );
- assertTrue( IConstraint.Type.valueOf( "aNd" ) == IConstraint.Type.AND );
-
- assertEquals( IConstraint.Type.OR.name(), "or" );
- assertTrue( IConstraint.Type.valueOf( "or" ) == IConstraint.Type.OR );
- assertTrue( IConstraint.Type.valueOf( "oR" ) == IConstraint.Type.OR );
-
- assertEquals( IConstraint.Type.REQUIRES.name(), "requires" );
- assertTrue( IConstraint.Type.valueOf( "requires" ) == IConstraint.Type.REQUIRES );
- assertTrue( IConstraint.Type.valueOf( "rEqUiRes" ) == IConstraint.Type.REQUIRES );
-
- assertEquals( IConstraint.Type.CONFLICTS.name(), "conflicts" );
- assertTrue( IConstraint.Type.valueOf( "conflicts" ) == IConstraint.Type.CONFLICTS );
- assertTrue( IConstraint.Type.valueOf( "cOnFlIcTs" ) == IConstraint.Type.CONFLICTS );
-
- /*
- * <and>
- * <or>
- * <requires facet="facet1" version="1.2.1"/>
- * <requires facet="facet1" version="1.3"/>
- * <requires facet="facet1" version="2.0"/>
- * </or>
- * <conflicts facet="facet3a"/>
- * <conflicts facet="facet3b" version="1.0"/>
- * <conflicts group="group1"/>
- * </and>
- */
-
- assertTrue( ProjectFacetsManager.isGroupDefined( "group1" ) );
- final IGroup g = ProjectFacetsManager.getGroup( "group1" );
- assertEquals( g.getId(), "group1" );
- assertEquals( g.getMembers(), asSet( f2v47c, f3cv10, f3cv20 ) );
-
- final IConstraint root = f2v47c.getConstraint();
- checkConstraint( root, IConstraint.Type.AND, null, null, null, null );
-
- IConstraint c1, c2;
-
- c1 = (IConstraint) root.getOperand( 0 );
- checkConstraint( c1, IConstraint.Type.OR, null, null, null );
-
- c2 = (IConstraint) c1.getOperand( 0 );
- checkConstraint( c2, IConstraint.Type.REQUIRES, f1, "1.2.1", Boolean.FALSE );
-
- c2 = (IConstraint) c1.getOperand( 1 );
- checkConstraint( c2, IConstraint.Type.REQUIRES, f1, "1.3", Boolean.FALSE );
-
- c2 = (IConstraint) c1.getOperand( 2 );
- checkConstraint( c2, IConstraint.Type.REQUIRES, f1, "2.0", Boolean.FALSE );
-
- c1 = (IConstraint) root.getOperand( 1 );
- checkConstraint( c1, IConstraint.Type.CONFLICTS, f3a, "*" );
-
- c1 = (IConstraint) root.getOperand( 2 );
- checkConstraint( c1, IConstraint.Type.CONFLICTS, f3b, "1.0" );
-
- c1 = (IConstraint) root.getOperand( 3 );
- checkConstraint( c1, IConstraint.Type.CONFLICTS, g );
- }
-
- private static void checkConstraint( final IConstraint c,
- final IConstraint.Type expectedType,
- final Object expectedOperand )
- {
- checkConstraint( c, expectedType, new Object[] { expectedOperand } );
- }
-
- private static void checkConstraint( final IConstraint c,
- final IConstraint.Type expectedType,
- final Object expectedOperand1,
- final Object expectedOperand2 )
- {
- checkConstraint( c, expectedType,
- new Object[] { expectedOperand1, expectedOperand2 } );
- }
-
- private static void checkConstraint( final IConstraint c,
- final IConstraint.Type expectedType,
- final Object expectedOperand1,
- final Object expectedOperand2,
- final Object expectedOperand3 )
- {
- checkConstraint( c, expectedType,
- new Object[] { expectedOperand1, expectedOperand2,
- expectedOperand3 } );
- }
-
- private static void checkConstraint( final IConstraint c,
- final IConstraint.Type expectedType,
- final Object expectedOperand1,
- final Object expectedOperand2,
- final Object expectedOperand3,
- final Object expectedOperand4 )
- {
- checkConstraint( c, expectedType,
- new Object[] { expectedOperand1, expectedOperand2,
- expectedOperand3, expectedOperand4 } );
- }
-
- private static void checkConstraint( final IConstraint c,
- final IConstraint.Type expectedType,
- final Object[] expectedOperands )
- {
- assertEquals( c.getType(), expectedType );
-
- final int count = c.getOperands().size();
- assertEquals( count, expectedOperands.length );
-
- final List<Object> list = new ArrayList<Object>();
-
- for( int i = 0; i < count; i++ )
- {
- final Object operand = c.getOperand( i );
- final Object expected = expectedOperands[ i ];
-
- if( expected != null )
- {
- if( ( expected instanceof String ) &&
- ! ( operand instanceof String ) )
- {
- assertEquals( operand.toString(), expected );
- }
- else
- {
- assertEquals( operand, expected );
- }
- }
-
- list.add( c.getOperand( i ) );
- }
-
- assertEquals( c.getOperands(), list );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/DefaultVersionTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/DefaultVersionTests.java
deleted file mode 100644
index 449f9a3..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/DefaultVersionTests.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.wst.common.project.facet.core.IDefaultVersionProvider;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class DefaultVersionTests
-
- extends TestCase
-
-{
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v4;
-
- private static IProjectFacet f2;
- private static IProjectFacetVersion f2v2;
-
- private static IProjectFacet f3;
- private static IProjectFacetVersion f3v3;
-
- private static IProjectFacet f4;
- private static IProjectFacetVersion f4v4;
-
- private static IProjectFacet f5;
- private static IProjectFacetVersion f5v4;
-
- private static IProjectFacet f6;
- private static IProjectFacetVersion f6v4;
-
- private static IProjectFacet f7;
- private static IProjectFacetVersion f7v4;
-
- static
- {
- f1 = ProjectFacetsManager.getProjectFacet( "dvt_f1" );
- f1v4 = f1.getVersion( "4.0" );
-
- f2 = ProjectFacetsManager.getProjectFacet( "dvt_f2" );
- f2v2 = f2.getVersion( "2.0" );
-
- f3 = ProjectFacetsManager.getProjectFacet( "dvt_f3" );
- f3v3 = f3.getVersion( "3.0" );
-
- f4 = ProjectFacetsManager.getProjectFacet( "dvt_f4" );
- f4v4 = f4.getVersion( "4.0" );
-
- f5 = ProjectFacetsManager.getProjectFacet( "dvt_f5" );
- f5v4 = f5.getVersion( "4.0" );
-
- f6 = ProjectFacetsManager.getProjectFacet( "dvt_f6" );
- f6v4 = f6.getVersion( "4.0" );
-
- f7 = ProjectFacetsManager.getProjectFacet( "dvt_f7" );
- f7v4 = f7.getVersion( "4.0" );
- }
-
- private DefaultVersionTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Default Version Tests" );
-
- suite.addTest( new DefaultVersionTests( "testUnspecifiedDefaultVersion" ) );
- suite.addTest( new DefaultVersionTests( "testStaticDefaultVersion" ) );
- suite.addTest( new DefaultVersionTests( "testDefaultVersionProvider" ) );
- suite.addTest( new DefaultVersionTests( "testBadDefaultVersionProvider1" ) );
- suite.addTest( new DefaultVersionTests( "testBadDefaultVersionProvider2" ) );
- suite.addTest( new DefaultVersionTests( "testBadDefaultVersionProvider3" ) );
- suite.addTest( new DefaultVersionTests( "testBadDefaultVersion" ) );
-
- return suite;
- }
-
- public void testUnspecifiedDefaultVersion()
- {
- assertEquals( f1.getDefaultVersion(), f1v4 );
- }
-
- public void testStaticDefaultVersion()
- {
- assertEquals( f2.getDefaultVersion(), f2v2 );
- }
-
- public void testDefaultVersionProvider()
- {
- assertEquals( f3.getDefaultVersion(), f3v3 );
- }
-
- /**
- * Tests the handling of the case where the associated default version
- * provider returns a version that doesn't belong to the facet that the
- * version provider is associated with.
- */
-
- public void testBadDefaultVersionProvider1()
- {
- assertEquals( f4.getDefaultVersion(), f4v4 );
- }
-
- /**
- * Tests the handling of the case where the associated default version
- * provider throws an exception when invoked.
- */
-
- public void testBadDefaultVersionProvider2()
- {
- assertEquals( f5.getDefaultVersion(), f5v4 );
- }
-
- /**
- * Tests the handling of the case where the associated default version
- * provider returns null.
- */
-
- public void testBadDefaultVersionProvider3()
- {
- assertEquals( f6.getDefaultVersion(), f6v4 );
- }
-
- /**
- * Tests the handling of the case where the specified static default version
- * is not defined for the facet.
- */
-
- public void testBadDefaultVersion()
- {
- assertEquals( f7.getDefaultVersion(), f7v4 );
- }
-
- public static final class FacetDvtF3DefaultVersionProvider
-
- implements IDefaultVersionProvider
-
- {
-
- public IProjectFacetVersion getDefaultVersion()
- {
- return ProjectFacetsManager.getProjectFacet( "dvt_f3" ).getVersion( "3.0" );
- }
- }
-
- public static final class FacetDvtF5DefaultVersionProvider
-
- implements IDefaultVersionProvider
-
- {
- public IProjectFacetVersion getDefaultVersion()
- {
- throw new RuntimeException();
- }
- }
-
- public static final class FacetDvtF6DefaultVersionProvider
-
- implements IDefaultVersionProvider
-
- {
- public IProjectFacetVersion getDefaultVersion()
- {
- return null;
- }
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.java
deleted file mode 100644
index b94361c..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.java
+++ /dev/null
@@ -1,449 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static org.eclipse.wst.common.project.facet.core.util.internal.FileUtil.FILE_DOT_PROJECT;
-import static org.eclipse.wst.common.project.facet.core.util.internal.FileUtil.copyFromPlugin;
-import static org.eclipse.wst.common.project.facet.core.tests.FacetedProjectFrameworkCoreTestsPlugin.PLUGIN_ID;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.common.project.facet.core.FacetedProjectFramework;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent;
-import org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener;
-import org.eclipse.wst.common.project.facet.core.internal.FacetedProject;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-@SuppressWarnings( "unused" )
-public final class EventDeliveryTests
-
- extends AbstractTests
-
-{
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v10;
- private static IProjectFacetVersion f1v20;
-
- private static IProjectFacet f2;
- private static IProjectFacetVersion f2v11;
- private static IProjectFacetVersion f2v21;
-
- private static IProjectFacet f3;
- private static IProjectFacetVersion f3v12;
- private static IProjectFacetVersion f3v22;
-
- private static IProjectFacet f4;
- private static IProjectFacetVersion f4v13;
- private static IProjectFacetVersion f4v23;
-
- static
- {
- f1 = ProjectFacetsManager.getProjectFacet( "edt_f1" );
- f1v10 = f1.getVersion( "1.0" );
- f1v20 = f1.getVersion( "2.0" );
-
- f2 = ProjectFacetsManager.getProjectFacet( "edt_f2" );
- f2v11 = f2.getVersion( "1.1" );
- f2v21 = f2.getVersion( "2.1" );
-
- f3 = ProjectFacetsManager.getProjectFacet( "edt_f3" );
- f3v12 = f3.getVersion( "1.2" );
- f3v22 = f3.getVersion( "2.2" );
-
- f4 = ProjectFacetsManager.getProjectFacet( "edt_f4" );
- f4v13 = f4.getVersion( "1.3" );
- f4v23 = f4.getVersion( "2.3" );
- }
-
- private EventDeliveryTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Event Delivery Tests" );
-
- suite.addTest( new EventDeliveryTests( "testEventsAtProjectCreation1" ) );
- suite.addTest( new EventDeliveryTests( "testEventsAtProjectCreation2" ) );
- suite.addTest( new EventDeliveryTests( "testEventsAtProjectCreation3" ) );
- suite.addTest( new EventDeliveryTests( "testEventDelivery" ) );
-
- return suite;
- }
-
- /**
- * This test verifies that no faceted project events are delivered when a new faceted project
- * is created.
- */
-
- public void testEventsAtProjectCreation1()
-
- throws CoreException
-
- {
- FullExtensionBasedListener.reset();
- createFacetedProject( "testEventsAtProjectCreation1" );
-
- assertEquals( FullExtensionBasedListener.retrieveEvents().size(), 0 );
- }
-
- /**
- * This test verifies that no faceted project events are delivered when an existing faceted
- * project is imported into the workspace and the faceted project wrapper is created. In this
- * scenario variant, the imported project was previously created and then removed from the
- * workspace in the same workbench session.
- */
-
- public void testEventsAtProjectCreation2()
-
- throws CoreException
-
- {
- final IFacetedProject fpj
- = ProjectFacetsManager.create( "testEventsAtProjectCreation2", null, null );
-
- final IProject pj = fpj.getProject();
- addResourceToCleanup( pj );
-
- fpj.installProjectFacet( f1v10, null, null );
- fpj.installProjectFacet( f2v11, null, null );
-
- pj.delete( false, false, null );
-
- FullExtensionBasedListener.reset();
-
- pj.create( null );
- pj.open( null );
-
- final IFacetedProject fpjNew = ProjectFacetsManager.create( pj );
-
- assertTrue( fpjNew.hasProjectFacet( f1v10 ) );
- assertTrue( fpjNew.hasProjectFacet( f2v11 ) );
- assertEquals( FullExtensionBasedListener.retrieveEvents().size(), 0 );
- assertTrue( fpj != fpjNew );
- }
-
- /**
- * This test verifies that no faceted project events are delivered when an existing faceted
- * project is imported into the workspace and the faceted project wrapper is created. In this
- * scenario variant, no project with than name has existed in the workspace in this workbench
- * session.
- */
-
- public void testEventsAtProjectCreation3()
-
- throws CoreException
-
- {
- FullExtensionBasedListener.reset();
-
- final IWorkspaceRoot wsRoot = ResourcesPlugin.getWorkspace().getRoot();
- final File wsLocation = wsRoot.getLocation().toFile();
-
- final String pjName = "testEventsAtProjectCreation3";
- final File pjLocation = new File( wsLocation, pjName );
-
- final String resPrefix = "resources/EventDeliveryTests.testEventsAtProjectCreation3/";
-
- copyFromPlugin( PLUGIN_ID,
- new Path( resPrefix + FILE_DOT_PROJECT ),
- new File( pjLocation, FILE_DOT_PROJECT ) );
-
- copyFromPlugin( PLUGIN_ID,
- new Path( resPrefix + FacetedProject.METADATA_FILE ),
- new File( pjLocation, FacetedProject.METADATA_FILE ) );
-
- final IProject pj = wsRoot.getProject( pjName );
-
- pj.create( null );
- pj.open( null );
-
- addResourceToCleanup( pj );
-
- final IFacetedProject fpj = ProjectFacetsManager.create( pj );
-
- assertTrue( fpj.hasProjectFacet( f1v10 ) );
- assertTrue( fpj.hasProjectFacet( f2v11 ) );
- assertEquals( FullExtensionBasedListener.retrieveEvents().size(), 0 );
- }
-
- public void testEventDelivery()
-
- throws CoreException
-
- {
- // Create a test project.
-
- final IFacetedProject fpj = createFacetedProject();
-
- // Setup listeners.
-
- final Listener fullListenerProjectApi = new Listener();
- fpj.addListener( fullListenerProjectApi );
-
- final Listener fullListenerGlobalApi = new Listener();
- FacetedProjectFramework.addListener( fullListenerGlobalApi );
-
- final Listener partialListenerProjectApi = new Listener();
-
- fpj.addListener( partialListenerProjectApi, IFacetedProjectEvent.Type.PRE_INSTALL,
- IFacetedProjectEvent.Type.FIXED_FACETS_CHANGED );
-
- final Listener partialListenerGlobalApi = new Listener();
-
- FacetedProjectFramework.addListener( partialListenerGlobalApi,
- IFacetedProjectEvent.Type.PRE_INSTALL,
- IFacetedProjectEvent.Type.FIXED_FACETS_CHANGED );
-
- if( FullExtensionBasedListener.instance != null )
- {
- FullExtensionBasedListener.instance.retrieveDeliveredEvents();
- }
-
- if( PartialExtensionBasedListener.instance != null )
- {
- PartialExtensionBasedListener.instance.retrieveDeliveredEvents();
- }
-
- addTearDownOperation
- (
- new Runnable()
- {
- public void run()
- {
- FacetedProjectFramework.removeListener( fullListenerGlobalApi );
- FacetedProjectFramework.removeListener( partialListenerGlobalApi );
- }
- }
- );
-
- // Run through a series of operations, checking to make sure that the listeners are seeing
- // the expected events.
-
- fpj.setFixedProjectFacets( asSet( f1, f2 ) );
-
- check( fullListenerProjectApi, Resources.fullStep1 );
- check( fullListenerGlobalApi, Resources.fullStep1 );
- check( FullExtensionBasedListener.instance, Resources.fullStep1 );
- check( partialListenerProjectApi, Resources.partialStep1 );
- check( partialListenerGlobalApi, Resources.partialStep1 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep1 );
-
- fpj.modify( asSet( new Action( Action.Type.INSTALL, f1v10, null ),
- new Action( Action.Type.INSTALL, f2v11, null ),
- new Action( Action.Type.INSTALL, f3v12, null ) ), null );
-
- check( fullListenerProjectApi, Resources.fullStep2 );
- check( fullListenerGlobalApi, Resources.fullStep2 );
- check( FullExtensionBasedListener.instance, Resources.fullStep2 );
- check( partialListenerProjectApi, Resources.partialStep2 );
- check( partialListenerGlobalApi, Resources.partialStep2 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep2 );
-
- fpj.installProjectFacet( f4v13, null, null );
-
- check( fullListenerProjectApi, Resources.fullStep3 );
- check( fullListenerGlobalApi, Resources.fullStep3 );
- check( FullExtensionBasedListener.instance, Resources.fullStep3 );
- check( partialListenerProjectApi, Resources.partialStep3 );
- check( partialListenerGlobalApi, Resources.partialStep3 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep3 );
-
- fpj.uninstallProjectFacet( f3v12, null, null );
-
- check( fullListenerProjectApi, Resources.fullStep4 );
- check( fullListenerGlobalApi, Resources.fullStep4 );
- check( FullExtensionBasedListener.instance, Resources.fullStep4 );
- check( partialListenerProjectApi, Resources.partialStep4 );
- check( partialListenerGlobalApi, Resources.partialStep4 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep4 );
-
- fpj.setFixedProjectFacets( asSet( f4 ) );
-
- check( fullListenerProjectApi, Resources.fullStep5 );
- check( fullListenerGlobalApi, Resources.fullStep5 );
- check( FullExtensionBasedListener.instance, Resources.fullStep5 );
- check( partialListenerProjectApi, Resources.partialStep5 );
- check( partialListenerGlobalApi, Resources.partialStep5 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep5 );
-
- fpj.modify( asSet( new Action( Action.Type.VERSION_CHANGE, f1v20, null ),
- new Action( Action.Type.VERSION_CHANGE, f4v23, null ) ), null );
-
- check( fullListenerProjectApi, Resources.fullStep6 );
- check( fullListenerGlobalApi, Resources.fullStep6 );
- check( FullExtensionBasedListener.instance, Resources.fullStep6 );
- check( partialListenerProjectApi, Resources.partialStep6 );
- check( partialListenerGlobalApi, Resources.partialStep6 );
- check( PartialExtensionBasedListener.instance, Resources.partialStep6 );
- }
-
- private static String toString( final List<IFacetedProjectEvent> events )
- {
- final StringBuilder buf = new StringBuilder();
-
- for( IFacetedProjectEvent event : events )
- {
- buf.append( event.toString() ).append( '\n' );
- }
-
- return buf.toString();
- }
-
- private static void check( final Listener listener,
- final String expectedEvents )
- {
- final String actual = toString( listener.retrieveDeliveredEvents() ).trim();
- final String expected = expectedEvents.trim();
-
- assertEquals( expected, actual );
- }
-
- private static class Listener
-
- implements IFacetedProjectListener
-
- {
- private final List<IFacetedProjectEvent> events = new ArrayList<IFacetedProjectEvent>();
-
- public final void handleEvent( final IFacetedProjectEvent event )
- {
- this.events.add( event );
- }
-
- public final List<IFacetedProjectEvent> retrieveDeliveredEvents()
- {
- final List<IFacetedProjectEvent> result
- = new ArrayList<IFacetedProjectEvent>( this.events );
-
- this.events.clear();
-
- return result;
- }
- }
-
- public static final class FullExtensionBasedListener
-
- extends Listener
-
- {
- public static Listener instance = null;
-
- public FullExtensionBasedListener()
- {
- instance = this;
- }
-
- public static void reset()
- {
- if( instance != null )
- {
- instance.retrieveDeliveredEvents();
- }
- }
-
- public static List<IFacetedProjectEvent> retrieveEvents()
- {
- if( instance != null )
- {
- return instance.retrieveDeliveredEvents();
- }
- else
- {
- return Collections.emptyList();
- }
- }
- }
-
- public static final class PartialExtensionBasedListener
-
- extends Listener
-
- {
- public static Listener instance = null;
-
- public PartialExtensionBasedListener()
- {
- instance = this;
- }
-
- public static void reset()
- {
- if( instance != null )
- {
- instance.retrieveDeliveredEvents();
- }
- }
-
- public static List<IFacetedProjectEvent> retrieveEvents()
- {
- if( instance != null )
- {
- return instance.retrieveDeliveredEvents();
- }
- else
- {
- return Collections.emptyList();
- }
- }
- }
-
- public static final class Resources
-
- extends NLS
-
- {
- public static String fullStep1;
- public static String fullStep2;
- public static String fullStep3;
- public static String fullStep4;
- public static String fullStep5;
- public static String fullStep6;
- public static String partialStep1;
- public static String partialStep2;
- public static String partialStep3;
- public static String partialStep4;
- public static String partialStep5;
- public static String partialStep6;
-
- static
- {
- initializeMessages( EventDeliveryTests.class.getName(),
- Resources.class );
- }
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.properties b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.properties
deleted file mode 100644
index 13fd967..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/EventDeliveryTests.properties
+++ /dev/null
@@ -1,123 +0,0 @@
-fullStep1 = \
-<event project\="testProject" type\="FIXED_FACETS_CHANGED">\n\
-\ <old-fixed-facets>\n\
-\ </old-fixed-facets>\n\
-\ <new-fixed-facets>\n\
-\ <facet id\="edt_f1"/>\n\
-\ <facet id\="edt_f2"/>\n\
-\ </new-fixed-facets>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-fullStep2 = \
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f1" version\="1.0"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_INSTALL">\n\
-\ <facet id\="edt_f1" version\="1.0"/>\n\
-</event>\n\
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f2" version\="1.1"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_INSTALL">\n\
-\ <facet id\="edt_f2" version\="1.1"/>\n\
-</event>\n\
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f3" version\="1.2"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_INSTALL">\n\
-\ <facet id\="edt_f3" version\="1.2"/>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-fullStep3 = \
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f4" version\="1.3"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_INSTALL">\n\
-\ <facet id\="edt_f4" version\="1.3"/>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-fullStep4 = \
-<event project\="testProject" type\="PRE_UNINSTALL">\n\
-\ <facet id\="edt_f3" version\="1.2"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_UNINSTALL">\n\
-\ <facet id\="edt_f3" version\="1.2"/>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-fullStep5 = \
-<event project\="testProject" type\="FIXED_FACETS_CHANGED">\n\
-\ <old-fixed-facets>\n\
-\ <facet id\="edt_f1"/>\n\
-\ <facet id\="edt_f2"/>\n\
-\ </old-fixed-facets>\n\
-\ <new-fixed-facets>\n\
-\ <facet id\="edt_f4"/>\n\
-\ </new-fixed-facets>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-fullStep6 = \
-<event project\="testProject" type\="PRE_VERSION_CHANGE">\n\
-\ <facet id\="edt_f1" version\="2.0"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_VERSION_CHANGE">\n\
-\ <facet id\="edt_f1" version\="2.0"/>\n\
-</event>\n\
-<event project\="testProject" type\="PRE_VERSION_CHANGE">\n\
-\ <facet id\="edt_f4" version\="2.3"/>\n\
-</event>\n\
-<event project\="testProject" type\="POST_VERSION_CHANGE">\n\
-\ <facet id\="edt_f4" version\="2.3"/>\n\
-</event>\n\
-<event project\="testProject" type\="PROJECT_MODIFIED">\n\
-</event>
-
-partialStep1 = \
-<event project\="testProject" type\="FIXED_FACETS_CHANGED">\n\
-\ <old-fixed-facets>\n\
-\ </old-fixed-facets>\n\
-\ <new-fixed-facets>\n\
-\ <facet id\="edt_f1"/>\n\
-\ <facet id\="edt_f2"/>\n\
-\ </new-fixed-facets>\n\
-</event>
-
-partialStep2 = \
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f1" version\="1.0"/>\n\
-</event>\n\
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f2" version\="1.1"/>\n\
-</event>\n\
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f3" version\="1.2"/>\n\
-</event>
-
-partialStep3 = \
-<event project\="testProject" type\="PRE_INSTALL">\n\
-\ <facet id\="edt_f4" version\="1.3"/>\n\
-</event>
-
-partialStep4 =
-
-partialStep5 = \
-<event project\="testProject" type\="FIXED_FACETS_CHANGED">\n\
-\ <old-fixed-facets>\n\
-\ <facet id\="edt_f1"/>\n\
-\ <facet id\="edt_f2"/>\n\
-\ </old-fixed-facets>\n\
-\ <new-fixed-facets>\n\
-\ <facet id\="edt_f4"/>\n\
-\ </new-fixed-facets>\n\
-</event>
-
-partialStep6 =
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionSortTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionSortTests.java
deleted file mode 100644
index aa7d7bd..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionSortTests.java
+++ /dev/null
@@ -1,206 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static java.util.Arrays.asList;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject.Action;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-@SuppressWarnings( "unused" )
-public class FacetActionSortTests
-
- extends TestCase
-
-{
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v10;
- private static IProjectFacetVersion f1v12;
- private static IProjectFacetVersion f1v121;
- private static IProjectFacetVersion f1v13;
- private static IProjectFacetVersion f1v20;
-
- private static IProjectFacet f2;
- private static IProjectFacetVersion f2v35;
- private static IProjectFacetVersion f2v35a;
- private static IProjectFacetVersion f2v47;
- private static IProjectFacetVersion f2v47b;
- private static IProjectFacetVersion f2v47c;
-
- private static IProjectFacet f2ext;
- private static IProjectFacetVersion f2extv10;
-
- private static IProjectFacet f3a;
- private static IProjectFacetVersion f3av10;
- private static IProjectFacetVersion f3av20;
-
- private static IProjectFacet f3b;
- private static IProjectFacetVersion f3bv10;
- private static IProjectFacetVersion f3bv20;
-
- private static IProjectFacet f3c;
- private static IProjectFacetVersion f3cv10;
- private static IProjectFacetVersion f3cv20;
-
- static
- {
- try
- {
- f1 = ProjectFacetsManager.getProjectFacet( "facet1" );
- f1v10 = f1.getVersion( "1.0" );
- f1v12 = f1.getVersion( "1.2" );
- f1v121 = f1.getVersion( "1.2.1" );
- f1v13 = f1.getVersion( "1.3" );
- f1v20 = f1.getVersion( "2.0" );
-
- f2 = ProjectFacetsManager.getProjectFacet( "facet2" );
- f2v35 = f2.getVersion( "3.5" );
- f2v35a = f2.getVersion( "3.5#a" );
- f2v47 = f2.getVersion( "4.7" );
- f2v47b = f2.getVersion( "4.7#b" );
- f2v47c = f2.getVersion( "4.7#c" );
-
- f2ext = ProjectFacetsManager.getProjectFacet( "facet2ext" );
- f2extv10 = f2ext.getVersion( "1.0" );
-
- f3a = ProjectFacetsManager.getProjectFacet( "facet3a" );
- f3av10 = f3a.getVersion( "1.0" );
- f3av20 = f3a.getVersion( "2.0" );
-
- f3b = ProjectFacetsManager.getProjectFacet( "facet3b" );
- f3bv10 = f3b.getVersion( "1.0" );
- f3bv20 = f3b.getVersion( "2.0" );
-
- f3c = ProjectFacetsManager.getProjectFacet( "facet3c" );
- f3cv10 = f3c.getVersion( "1.0" );
- f3cv20 = f3c.getVersion( "2.0" );
- }
- catch( Exception e )
- {
- // Ignore failures. This api is tested explicitly.
- }
- }
-
- private FacetActionSortTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Facet Action Sort Tests" );
-
- suite.addTest( new FacetActionSortTests( "testUninstallComesFirst1" ) );
- suite.addTest( new FacetActionSortTests( "testUninstallComesFirst2" ) );
- suite.addTest( new FacetActionSortTests( "testSortStability1" ) );
- suite.addTest( new FacetActionSortTests( "testSortStability2" ) );
-
- return suite;
- }
-
- /**
- * Tests whether the sort places uninstall actions first. This is the
- * control test case. The input already places uninstall first.
- */
-
- public void testUninstallComesFirst1()
- {
- final Action a1 = new Action( Action.Type.INSTALL, f1v12, null );
- final Action a2 = new Action( Action.Type.UNINSTALL, f3av10, null );
-
- final List<Action> actions = new ArrayList<Action>();
-
- actions.add( a2 );
- actions.add( a1 );
-
- ProjectFacetsManager.sort( asSet( f3av10 ), actions );
- assertEquals( actions, asList( a2, a1 ) );
- }
-
- /**
- * Tests whether the sort places uninstall actions first. The test case
- * places an install action in front of the uninstall action and checks
- * whether the sort algorithm reverses the order.
- */
-
- public void testUninstallComesFirst2()
- {
- final Action a1 = new Action( Action.Type.INSTALL, f1v12, null );
- final Action a2 = new Action( Action.Type.UNINSTALL, f3av10, null );
-
- final List<Action> actions = new ArrayList<Action>();
-
- actions.add( a1 );
- actions.add( a2 );
-
- ProjectFacetsManager.sort( asSet( f3av10 ), actions );
- assertEquals( actions, asList( a2, a1 ) );
- }
-
- /**
- * Tests whether the sort produces "stable" results given unrelated facets.
- * This is the control test case. The input is already in the correct order.
- */
-
- @SuppressWarnings( "unchecked" )
- public void testSortStability1()
- {
- final Action a1 = new Action( Action.Type.INSTALL, f1v12, null );
- final Action a2 = new Action( Action.Type.INSTALL, f3av10, null );
-
- final List<Action> actions = new ArrayList<Action>();
-
- actions.add( a1 );
- actions.add( a2 );
-
- ProjectFacetsManager.sort( Collections.EMPTY_SET, actions );
- assertEquals( actions, asList( a1, a2 ) );
- }
-
- /**
- * Tests whether the sort produces "stable" results given unrelated facets.
- * The input facets are in the reverse order.
- */
-
- @SuppressWarnings( "unchecked" )
- public void testSortStability2()
- {
- final Action a1 = new Action( Action.Type.INSTALL, f1v12, null );
- final Action a2 = new Action( Action.Type.INSTALL, f3av10, null );
-
- final List<Action> actions = new ArrayList<Action>();
-
- actions.add( a2 );
- actions.add( a1 );
-
- ProjectFacetsManager.sort( Collections.EMPTY_SET, actions );
- assertEquals( actions, asList( a1, a2 ) );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionsTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionsTests.java
deleted file mode 100644
index 48906d5..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetActionsTests.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import java.io.ByteArrayInputStream;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class FacetActionsTests
-
- extends AbstractTests
-
-{
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v1;
- private static IProjectFacetVersion f1v2;
-
- static
- {
- f1 = ProjectFacetsManager.getProjectFacet( "fat_f1" );
- f1v1 = f1.getVersion( "1.0" );
- f1v2 = f1.getVersion( "2.0" );
- }
-
- private FacetActionsTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Facet Actions Tests" );
-
- suite.addTest( new FacetActionsTests( "testMultiVersionInstall1" ) );
- suite.addTest( new FacetActionsTests( "testMultiVersionInstall2" ) );
-
- return suite;
- }
-
- /*
- * The following test cases test the scenario where different
- * implementations of the INSTALL action are provided for two versions of
- * the same facet.
- *
- * Scenario Test Code:
- *
- * testMultiVersionInstall1
- * testMultiVersionInstall2
- * F1v1InstallDelegate
- * F1v2InstallDelegate
- */
-
- public void testMultiVersionInstall1()
-
- throws CoreException
-
- {
- final IFacetedProject fpj = createFacetedProject();
- final IProject pj = fpj.getProject();
- fpj.installProjectFacet( f1v1, null, null );
-
- assertTrue( F1v1InstallDelegate.getMarkerFile( pj ).exists() );
- assertFalse( F1v2InstallDelegate.getMarkerFile( pj ).exists() );
- }
-
- public void testMultiVersionInstall2()
-
- throws CoreException
-
- {
- final IFacetedProject fpj = createFacetedProject();
- final IProject pj = fpj.getProject();
- fpj.installProjectFacet( f1v2, null, null );
-
- assertFalse( F1v1InstallDelegate.getMarkerFile( pj ).exists() );
- assertTrue( F1v2InstallDelegate.getMarkerFile( pj ).exists() );
- }
-
- public static final class F1v1InstallDelegate
-
- implements IDelegate
-
- {
- public static IFile getMarkerFile( final IProject project )
- {
- return project.getFile( "v1marker" );
- }
-
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile marker = getMarkerFile( project );
-
- final ByteArrayInputStream emptyStream
- = new ByteArrayInputStream( new byte[ 0 ] );
-
- marker.create( emptyStream, false, null );
- }
- }
-
- public static final class F1v2InstallDelegate
-
- implements IDelegate
-
- {
- public static IFile getMarkerFile( final IProject project )
- {
- return project.getFile( "v2marker" );
- }
-
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile marker = getMarkerFile( project );
-
- final ByteArrayInputStream emptyStream
- = new ByteArrayInputStream( new byte[ 0 ] );
-
- marker.create( emptyStream, false, null );
- }
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetConstraintsTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetConstraintsTests.java
deleted file mode 100644
index 0f790b6..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetConstraintsTests.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-
-import java.util.Collections;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class FacetConstraintsTests
-
- extends TestCase
-
-{
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v10;
-
- private static IProjectFacet f3;
- private static IProjectFacetVersion f3v10;
-
- private static IProjectFacet f4;
- private static IProjectFacetVersion f4v10;
-
- private static IProjectFacet f5;
- private static IProjectFacetVersion f5v10;
-
- private static IProjectFacet f6;
- private static IProjectFacetVersion f6v10;
- private static IProjectFacetVersion f6v23;
- private static IProjectFacetVersion f6v37;
- private static IProjectFacetVersion f6v40;
- private static IProjectFacetVersion f6v45;
-
- private static IProjectFacet f7;
- private static IProjectFacetVersion f7v10;
- private static IProjectFacetVersion f7v20;
-
- private static IProjectFacet f8;
- private static IProjectFacetVersion f8v10;
- private static IProjectFacetVersion f8v20;
- private static IProjectFacetVersion f8v30;
-
- private static IProjectFacet f9;
- private static IProjectFacetVersion f9v10;
-
- private static IProjectFacet f10;
- private static IProjectFacetVersion f10v10;
- private static IProjectFacetVersion f10v20;
-
- static
- {
- f1 = ProjectFacetsManager.getProjectFacet( "fct_f1" );
- f1v10 = f1.getVersion( "1.0" );
-
- f3 = ProjectFacetsManager.getProjectFacet( "fct_f3" );
- f3v10 = f3.getVersion( "1.0" );
-
- f4 = ProjectFacetsManager.getProjectFacet( "fct_f4" );
- f4v10 = f4.getVersion( "1.0" );
-
- f5 = ProjectFacetsManager.getProjectFacet( "fct_f5" );
- f5v10 = f5.getVersion( "1.0" );
-
- f6 = ProjectFacetsManager.getProjectFacet( "fct_f6" );
- f6v10 = f6.getVersion( "1.0" );
- f6v23 = f6.getVersion( "2.3" );
- f6v37 = f6.getVersion( "3.7" );
- f6v40 = f6.getVersion( "4.0" );
- f6v45 = f6.getVersion( "4.5" );
-
- f7 = ProjectFacetsManager.getProjectFacet( "fct_f7" );
- f7v10 = f7.getVersion( "1.0" );
- f7v20 = f7.getVersion( "2.0" );
-
- f8 = ProjectFacetsManager.getProjectFacet( "fct_f8" );
- f8v10 = f8.getVersion( "1.0" );
- f8v20 = f8.getVersion( "2.0" );
- f8v30 = f8.getVersion( "3.0" );
-
- f9 = ProjectFacetsManager.getProjectFacet( "fct_f9" );
- f9v10 = f9.getVersion( "1.0" );
-
- f10 = ProjectFacetsManager.getProjectFacet( "fct_f10" );
- f10v10 = f10.getVersion( "1.0" );
- f10v20 = f10.getVersion( "2.0" );
- }
-
- private FacetConstraintsTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Facet Constraint Tests" );
-
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict1" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict2" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict3" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict4" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict5" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict6" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict7" ) );
- suite.addTest( new FacetConstraintsTests( "testIndirectConflict8" ) );
- suite.addTest( new FacetConstraintsTests( "testRequiresWithNoVersion" ) );
- suite.addTest( new FacetConstraintsTests( "testRequiresWithUnknownVersion" ) );
- suite.addTest( new FacetConstraintsTests( "testGroupRequires" ) );
- suite.addTest( new FacetConstraintsTests( "testGroupRequiresSoft" ) );
-
- return suite;
- }
-
- /*
- * Tests whether the conflict detection code picks up on an indirect
- * conflict. Also tests that a soft constraint is not used to flag a
- * conflict.
- *
- * Here is the relationship diagram between the five facets involved in
- * this test:
- *
- * conflicts requires
- * f1 ----------------> f2 <---------------- f3
- * f4 <---------------- <---------------- f5
- * conflicts soft requires
- *
- * These case should come back positive for conflict:
- *
- * f1 with f3
- * f3 with f1
- * f4 with f3
- * f3 with f4
- *
- * These case should come back negative for conflict:
- *
- * f1 with f5
- * f5 with f1
- * f4 with f5
- * f5 with f4
- */
-
- public void testIndirectConflict1()
- {
- assertTrue( f1v10.conflictsWith( f3v10 ) );
- }
-
- public void testIndirectConflict2()
- {
- assertTrue( f3v10.conflictsWith( f1v10 ) );
- }
-
- public void testIndirectConflict3()
- {
- assertTrue( f4v10.conflictsWith( f3v10 ) );
- }
-
- public void testIndirectConflict4()
- {
- assertTrue( f3v10.conflictsWith( f4v10 ) );
- }
-
- public void testIndirectConflict5()
- {
- assertFalse( f1v10.conflictsWith( f5v10 ) );
- }
-
- public void testIndirectConflict6()
- {
- assertFalse( f5v10.conflictsWith( f1v10 ) );
- }
-
- public void testIndirectConflict7()
- {
- assertFalse( f4v10.conflictsWith( f5v10 ) );
- }
-
- public void testIndirectConflict8()
- {
- assertFalse( f5v10.conflictsWith( f4v10 ) );
- }
-
- /*
- * Tests the following constraint:
- *
- * <requires facet="fct_f6"/>
- */
-
- @SuppressWarnings( "unchecked" )
- public void testRequiresWithNoVersion()
- {
- assertFalse( f7v10.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertTrue( f7v10.getConstraint().check( asSet( f6v10 ) ).isOK() );
- assertTrue( f7v10.getConstraint().check( asSet( f6v23 ) ).isOK() );
- assertTrue( f7v10.getConstraint().check( asSet( f6v37 ) ).isOK() );
- assertTrue( f7v10.getConstraint().check( asSet( f6v40 ) ).isOK() );
- assertTrue( f7v10.getConstraint().check( asSet( f6v45 ) ).isOK() );
- }
-
- /*
- * Tests the following constraint that specifies versions that don't exist:
- *
- * <requires facet="fct_f6" version="[5.0-6.5)"/>
- */
-
- @SuppressWarnings( "unchecked" )
- public void testRequiresWithUnknownVersion()
- {
- assertFalse( f7v20.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertFalse( f7v20.getConstraint().check( asSet( f6v10 ) ).isOK() );
- assertFalse( f7v20.getConstraint().check( asSet( f6v23 ) ).isOK() );
- assertFalse( f7v20.getConstraint().check( asSet( f6v37 ) ).isOK() );
- assertFalse( f7v20.getConstraint().check( asSet( f6v40 ) ).isOK() );
- assertFalse( f7v20.getConstraint().check( asSet( f6v45 ) ).isOK() );
- }
-
- /*
- * Tests the "requires any group member" constraint:
- *
- * <requires group="fct_g1"/>
- */
-
- @SuppressWarnings( "unchecked" )
- public void testGroupRequires()
- {
- assertFalse( f10v10.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertTrue( f10v10.getConstraint().check( asSet( f8v10 ) ).isOK() );
- assertTrue( f10v10.getConstraint().check( asSet( f8v20 ) ).isOK() );
- assertFalse( f10v10.getConstraint().check( asSet( f8v30 ) ).isOK() );
- assertTrue( f10v10.getConstraint().check( asSet( f9v10 ) ).isOK() );
- assertFalse( f10v10.getConstraint().check( asSet( f1v10 ) ).isOK() );
- }
-
- /*
- * Tests the soft version of the "requires any group member" constraint:
- *
- * <requires group="fct_g1" soft="true"/>
- */
-
- @SuppressWarnings( "unchecked" )
- public void testGroupRequiresSoft()
- {
- assertTrue( f10v20.getConstraint().check( Collections.EMPTY_SET ).isOK() );
- assertTrue( f10v20.getConstraint().check( asSet( f8v10 ) ).isOK() );
- assertTrue( f10v20.getConstraint().check( asSet( f8v20 ) ).isOK() );
- assertTrue( f10v20.getConstraint().check( asSet( f8v30 ) ).isOK() );
- assertTrue( f10v20.getConstraint().check( asSet( f9v10 ) ).isOK() );
- assertTrue( f10v20.getConstraint().check( asSet( f1v10 ) ).isOK() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetedProjectFrameworkCoreTestsPlugin.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetedProjectFrameworkCoreTestsPlugin.java
deleted file mode 100644
index 5f262f9..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/FacetedProjectFrameworkCoreTestsPlugin.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class FacetedProjectFrameworkCoreTestsPlugin
-{
- public static final String PLUGIN_ID = "org.eclipse.wst.common.project.facet.core.tests";
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/PresetsTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/PresetsTests.java
deleted file mode 100644
index fa702e3..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/PresetsTests.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f1v121;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f1v20;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f2extv10;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f2v35a;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f3av10;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f3bv10;
-import static org.eclipse.wst.common.project.facet.core.tests.BasicTests.f3cv10;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-
-import java.util.Collections;
-import java.util.Map;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.IDynamicPreset;
-import org.eclipse.wst.common.project.facet.core.IPreset;
-import org.eclipse.wst.common.project.facet.core.IPresetFactory;
-import org.eclipse.wst.common.project.facet.core.PresetDefinition;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class PresetsTests
-
- extends TestCase
-
-{
- private PresetsTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Presets Tests" );
-
- suite.addTest( new PresetsTests( "testSimpleStaticPresets" ) );
- suite.addTest( new PresetsTests( "testDerivedStaticPresets" ) );
- suite.addTest( new PresetsTests( "testDynamicPresets" ) );
- suite.addTest( new PresetsTests( "testStaticPresetsExtendingDynamicPresets1" ) );
- suite.addTest( new PresetsTests( "testStaticPresetsExtendingDynamicPresets2" ) );
- suite.addTest( new PresetsTests( "testUserDefinedPresets" ) );
-
- return suite;
- }
-
- public void testSimpleStaticPresets()
- {
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_preset1" ) );
- final IPreset preset1 = ProjectFacetsManager.getPreset( "pt_preset1" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset1 ) );
-
- assertEquals( preset1.getId(), "pt_preset1" );
- assertEquals( preset1.getType(), IPreset.Type.STATIC );
- assertEquals( preset1.getLabel(), "Preset 1" );
- assertEquals( preset1.getDescription(), "This is the description for the first preset." );
- assertEquals( preset1.getProjectFacets(), asSet( f1v20, f2v35a, f2extv10 ) );
-
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_preset2" ) );
- final IPreset preset2 = ProjectFacetsManager.getPreset( "pt_preset2" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset2 ) );
-
- assertEquals( preset2.getId(), "pt_preset2" );
- assertEquals( preset2.getType(), IPreset.Type.STATIC );
- assertEquals( preset2.getLabel(), "pt_preset2" );
- assertEquals( preset2.getDescription(), "" );
- assertEquals( preset2.getProjectFacets(), asSet( f3av10, f3bv10, f3cv10 ) );
- }
-
- public void testDerivedStaticPresets()
- {
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_preset3" ) );
- final IPreset preset3 = ProjectFacetsManager.getPreset( "pt_preset3" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset3 ) );
-
- assertEquals( preset3.getId(), "pt_preset3" );
- assertEquals( preset3.getType(), IPreset.Type.STATIC );
- assertEquals( preset3.getProjectFacets(), asSet( f1v121, f2v35a, f2extv10, f3av10 ) );
- }
-
- public void testDynamicPresets()
- {
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_dyn_preset" ) );
- final IPreset preset = ProjectFacetsManager.getPreset( "pt_dyn_preset" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset ) );
-
- assertEquals( preset.getId(), "pt_dyn_preset" );
- assertEquals( preset.getType(), IPreset.Type.DYNAMIC );
- assertEquals( preset.getLabel(), "pt_dyn_preset" );
- assertEquals( preset.getDescription(), "" );
- assertEquals( preset.getProjectFacets(), Collections.emptySet() );
-
- final IDynamicPreset dynamicPreset = (IDynamicPreset) preset;
- final IPreset resolved = dynamicPreset.resolve( Collections.<String,Object>emptyMap() );
-
- assertEquals( resolved.getId(), "pt_dyn_preset" );
- assertEquals( resolved.getType(), IPreset.Type.STATIC );
- assertEquals( resolved.getLabel(), "Dynamic Preset" );
- assertEquals( resolved.getDescription(), "The description of the dynamic preset." );
- assertEquals( resolved.getProjectFacets(), asSet( f1v20, f2extv10, f3cv10 ) );
- }
-
- public void testStaticPresetsExtendingDynamicPresets1()
- {
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_static_extending_dynamic_preset_1" ) );
- final IPreset preset = ProjectFacetsManager.getPreset( "pt_static_extending_dynamic_preset_1" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset ) );
-
- assertEquals( preset.getId(), "pt_static_extending_dynamic_preset_1" );
- assertEquals( preset.getType(), IPreset.Type.DYNAMIC );
- assertEquals( preset.getLabel(), "Static Extending Dynamic Preset" );
- assertEquals( preset.getDescription(), "This is the static-dynamic description." );
- assertEquals( preset.getProjectFacets(), Collections.emptySet() );
-
- final IDynamicPreset dynamicPreset = (IDynamicPreset) preset;
- final IPreset resolved = dynamicPreset.resolve( Collections.<String,Object>emptyMap() );
-
- assertEquals( resolved.getId(), "pt_static_extending_dynamic_preset_1" );
- assertEquals( resolved.getType(), IPreset.Type.STATIC );
- assertEquals( resolved.getLabel(), "Static Extending Dynamic Preset" );
- assertEquals( resolved.getDescription(), "This is the static-dynamic description." );
- assertEquals( resolved.getProjectFacets(), asSet( f1v20, f2extv10, f3cv10, f2v35a, f3bv10 ) );
- }
-
- public void testStaticPresetsExtendingDynamicPresets2()
- {
- assertTrue( ProjectFacetsManager.isPresetDefined( "pt_static_extending_dynamic_preset_2" ) );
- final IPreset preset = ProjectFacetsManager.getPreset( "pt_static_extending_dynamic_preset_2" );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset ) );
-
- assertEquals( preset.getId(), "pt_static_extending_dynamic_preset_2" );
- assertEquals( preset.getType(), IPreset.Type.DYNAMIC );
- assertEquals( preset.getLabel(), "Static Extending Dynamic Preset 2" );
- assertEquals( preset.getDescription(), "This is the static-dynamic description 2." );
- assertEquals( preset.getProjectFacets(), Collections.emptySet() );
-
- final IDynamicPreset dynamicPreset = (IDynamicPreset) preset;
- final IPreset resolved = dynamicPreset.resolve( Collections.<String,Object>emptyMap() );
-
- assertEquals( resolved.getId(), "pt_static_extending_dynamic_preset_2" );
- assertEquals( resolved.getType(), IPreset.Type.STATIC );
- assertEquals( resolved.getLabel(), "Static Extending Dynamic Preset 2" );
- assertEquals( resolved.getDescription(), "This is the static-dynamic description 2." );
- assertEquals( resolved.getProjectFacets(), asSet( f1v121, f2extv10, f3cv10, f2v35a, f3bv10, f3av10 ) );
- }
-
- public void testUserDefinedPresets()
- {
- assertFalse( ProjectFacetsManager.isPresetDefined( "pt_user_defined" ) );
-
- final IPreset preset
- = ProjectFacetsManager.definePreset( "pt_user_defined", "the description",
- asSet( f1v121, f2extv10 ) );
-
- assertTrue( ProjectFacetsManager.isPresetDefined( preset.getId() ) );
- assertTrue( ProjectFacetsManager.getPresets().contains( preset ) );
-
- assertEquals( preset.getType(), IPreset.Type.USER_DEFINED );
- assertEquals( preset.getLabel(), "pt_user_defined" );
- assertEquals( preset.getDescription(), "the description" );
- assertEquals( preset.getProjectFacets(), asSet( f1v121, f2extv10 ) );
-
- ProjectFacetsManager.deletePreset( preset );
- assertFalse( ProjectFacetsManager.isPresetDefined( "pt_user_defined" ) );
- }
-
- public static final class PresetFactory
-
- implements IPresetFactory
-
- {
- public PresetDefinition createPreset( final String presetId,
- final Map<String,Object> context )
-
- throws CoreException
-
- {
- return new PresetDefinition( "Dynamic Preset", "The description of the dynamic preset.",
- asSet( f1v20, f2extv10, f3cv10 ) );
- }
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectChangeReactionTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectChangeReactionTests.java
deleted file mode 100644
index 74cce8c..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectChangeReactionTests.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.asSet;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.readFromFile;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.waitForCondition;
-import static org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.writeToFile;
-
-import java.io.IOException;
-import java.util.Collections;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntime;
-import org.eclipse.wst.common.project.facet.core.tests.support.TestUtils.ICondition;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-@SuppressWarnings( "unused" )
-public final class ProjectChangeReactionTests
-
- extends AbstractTests
-
-{
- private static final String METADATA_FILE
- = ".settings/org.eclipse.wst.common.project.facet.core.xml";
-
- private static final String TEST_PROJECT_NAME = "testProject";
-
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v10;
- private static IProjectFacetVersion f1v12;
- private static IProjectFacetVersion f1v121;
- private static IProjectFacetVersion f1v13;
- private static IProjectFacetVersion f1v20;
-
- static
- {
- try
- {
- f1 = ProjectFacetsManager.getProjectFacet( "facet1" );
- f1v10 = f1.getVersion( "1.0" );
- f1v12 = f1.getVersion( "1.2" );
- f1v121 = f1.getVersion( "1.2.1" );
- f1v13 = f1.getVersion( "1.3" );
- f1v20 = f1.getVersion( "2.0" );
- }
- catch( Exception e )
- {
- // Ignore failures. This api is tested explicitly.
- }
- }
-
- private IProject pj;
- private IFacetedProject fpj;
- private IFile mdfile;
-
- private ProjectChangeReactionTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Project Change Reaction Tests" );
-
- suite.addTest( new ProjectChangeReactionTests( "testReactionToProjectDelete" ) );
- suite.addTest( new ProjectChangeReactionTests( "testReactionToMetadataFileDelete" ) );
- suite.addTest( new ProjectChangeReactionTests( "testReactionToMetadataFileChange" ) );
-
- return suite;
- }
-
- protected void setUp()
-
- throws CoreException
-
- {
- assertFalse( ws.getRoot().getProject( TEST_PROJECT_NAME ).exists() );
-
- this.fpj = ProjectFacetsManager.create( TEST_PROJECT_NAME, null, null );
-
- this.pj = this.fpj.getProject();
- addResourceToCleanup( this.pj );
- assertTrue( this.fpj.getProject().exists() );
-
- this.fpj.installProjectFacet( f1v12, null, null );
- assertEquals( this.fpj.getProjectFacets(), asSet( f1v12 ) );
-
- this.mdfile = this.pj.getFile( METADATA_FILE );
- }
-
- public void testReactionToProjectDelete()
-
- throws CoreException
-
- {
- this.pj.delete( true, null );
-
- waitForCondition( createNoFacetsCondition( this.fpj ) );
- assertNull( ProjectFacetsManager.create( this.pj ) );
-
- try
- {
- this.fpj.installProjectFacet( f1v12, null, null );
- fail();
- }
- catch( CoreException e )
- {
- verifyCannotModifyDeletedProjectException( e );
- }
-
- try
- {
- this.fpj.setFixedProjectFacets( asSet( f1 ) );
- fail();
- }
- catch( CoreException e )
- {
- verifyCannotModifyDeletedProjectException( e );
- }
-
- try
- {
- this.fpj.setTargetedRuntimes( Collections.<IRuntime>emptySet(), null );
- fail();
- }
- catch( CoreException e )
- {
- verifyCannotModifyDeletedProjectException( e );
- }
-
- try
- {
- this.fpj.setPrimaryRuntime( null, null );
- fail();
- }
- catch( CoreException e )
- {
- verifyCannotModifyDeletedProjectException( e );
- }
- }
-
- private void verifyCannotModifyDeletedProjectException( final CoreException e )
- {
- final String expectedMessage = "Cannot modify a deleted project.";
- assertTrue( e.getStatus().getMessage().equals( expectedMessage ) );
- }
-
- public void testReactionToMetadataFileDelete()
-
- throws CoreException
-
- {
- this.mdfile.delete( true, null );
-
- waitForCondition( createNoFacetsCondition( this.fpj ) );
- }
-
- public void testReactionToMetadataFileChange()
-
- throws CoreException, IOException
-
- {
- String contents;
-
- contents = readFromFile( this.mdfile );
- contents = contents.replaceFirst( "1.2", "2.0" );
- writeToFile( this.mdfile, contents );
-
- waitForCondition( createFacetCondition( this.fpj, f1v20 ) );
-
- contents = contents.replaceFirst( "2.0", "1.2.1" );
- writeToFile( this.mdfile, contents );
-
- waitForCondition( createFacetCondition( this.fpj, f1v121 ) );
-
- contents = contents.replaceFirst( "<installed facet=\"facet1\" version=\"1.2.1\"/>", "" );
- writeToFile( this.mdfile, contents );
-
- waitForCondition( createNoFacetsCondition( this.fpj ) );
- }
-
- private static ICondition createNoFacetsCondition( final IFacetedProject fpj )
- {
- return new ICondition()
- {
- public boolean check()
- {
- return fpj.getProjectFacets().size() == 0;
- }
- };
- }
-
- private static ICondition createFacetCondition( final IFacetedProject fpj,
- final IProjectFacetVersion fv )
- {
- return new ICondition()
- {
- public boolean check()
- {
- return fpj.hasProjectFacet( fv );
- }
- };
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectCreationTests.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectCreationTests.java
deleted file mode 100644
index 0502e6b..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/ProjectCreationTests.java
+++ /dev/null
@@ -1,395 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests;
-
-import java.io.IOException;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.common.project.facet.core.IFacetedProject;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.tests.support.TestUtils;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class ProjectCreationTests
-
- extends AbstractTests
-
-{
- private static final String FACETED_PROJECT_NATURE
- = "org.eclipse.wst.common.project.facet.core.nature";
-
- private static IProjectFacet f1;
- private static IProjectFacetVersion f1v1;
-
- private static IProjectFacet f2;
- private static IProjectFacetVersion f2v1;
-
- static
- {
- f1 = ProjectFacetsManager.getProjectFacet( "pct-f1" );
- f1v1 = f1.getVersion( "1.0" );
-
- f2 = ProjectFacetsManager.getProjectFacet( "pct-f2" );
- f2v1 = f2.getVersion( "1.0" );
- }
-
- private ProjectCreationTests( final String name )
- {
- super( name );
- }
-
- public static Test suite()
- {
- final TestSuite suite = new TestSuite();
-
- suite.setName( "Project Creation Tests" );
-
- suite.addTest( new ProjectCreationTests( "testCreationFromScratch1" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromScratch2" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromScratch3" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromScratch4" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromNonFacetedProject1" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromNonFacetedProject2" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromNonFacetedProject3" ) );
- suite.addTest( new ProjectCreationTests( "testCreationFromNonFacetedProject4" ) );
- suite.addTest( new ProjectCreationTests( "testWrapperCreation1" ) );
- suite.addTest( new ProjectCreationTests( "testWrapperCreation2" ) );
- suite.addTest( new ProjectCreationTests( "testWrapperCreation3" ) );
-
- return suite;
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(String,IPath,IProgressMonitor)}
- * method. In this scenario, there is no project with the same name.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromScratch1()
-
- throws CoreException, IOException
-
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( "abc", null, null );
-
- final IProject proj = fproj.getProject();
-
- assertNotNull( proj );
- assertTrue( proj.exists() );
-
- this.resourcesToCleanup.add( proj );
-
- TestUtils.assertFileContains( proj.getFile( ".project" ), FACETED_PROJECT_NATURE );
-
- assertEquals( fproj.getFixedProjectFacets().size(), 0 );
- assertEquals( fproj.getProjectFacets().size(), 0 );
- assertEquals( fproj.getTargetedRuntimes().size(), 0 );
- assertNull( fproj.getPrimaryRuntime() );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(String,IPath,IProgressMonitor)}
- * method. In this scenario, there is a faceted project with the same name.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromScratch2()
-
- throws CoreException, IOException
-
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( "abc", null, null );
-
- this.resourcesToCleanup.add( fproj.getProject() );
-
- try
- {
- ProjectFacetsManager.create( "abc", null, null );
- fail();
- }
- catch( CoreException e )
- {
- // expected
- }
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(String,IPath,IProgressMonitor)}
- * method. In this scenario, there is a non-faceted project with the same
- * name.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromScratch3()
-
- throws CoreException, IOException
-
- {
- final IProject project = ws.getRoot().getProject( "abc" );
- final IProjectDescription desc = ws.newProjectDescription( "abc" );
-
- desc.setLocation( null );
-
- project.create( desc, null );
- project.open( null );
-
- this.resourcesToCleanup.add( project );
-
- try
- {
- ProjectFacetsManager.create( "abc", null, null );
- fail();
- }
- catch( CoreException e )
- {
- // expected
- }
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(String,IPath,IProgressMonitor)} method. In this
- * scenario, there was previously a faceted project at the specified location. The test
- * verifies that previously-installed facets are recognized after the project is resurrected.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromScratch4()
-
- throws CoreException, IOException
-
- {
- IFacetedProject fproj;
-
- fproj = ProjectFacetsManager.create( "abc", null, null );
- this.resourcesToCleanup.add( fproj.getProject() );
-
- fproj.installProjectFacet( f1v1, null, null );
- fproj.installProjectFacet( f2v1, null, null );
-
- fproj.getProject().delete( false, false, null );
-
- fproj = ProjectFacetsManager.create( "abc", null, null );
-
- assertEquals( fproj.getFixedProjectFacets().size(), 0 );
- assertEquals( fproj.getProjectFacets().size(), 2 );
- assertTrue( fproj.hasProjectFacet( f1v1 ) );
- assertTrue( fproj.hasProjectFacet( f2v1 ) );
- assertEquals( fproj.getTargetedRuntimes().size(), 0 );
- assertNull( fproj.getPrimaryRuntime() );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject,boolean,IProgressMonitor)}
- * method. In this scenario project is not faceted and convertIfNecessary
- * is set to true.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromNonFacetedProject1()
-
- throws CoreException, IOException
-
- {
- final IProject project = ws.getRoot().getProject( "abc" );
- final IProjectDescription desc = ws.newProjectDescription( "abc" );
-
- desc.setLocation( null );
-
- project.create( desc, null );
- project.open( null );
-
- this.resourcesToCleanup.add( project );
-
- final IFacetedProject fproj
- = ProjectFacetsManager.create( project, true, null );
-
- assertEquals( fproj.getFixedProjectFacets().size(), 0 );
- assertEquals( fproj.getProjectFacets().size(), 0 );
- assertEquals( fproj.getTargetedRuntimes().size(), 0 );
- assertNull( fproj.getPrimaryRuntime() );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject,boolean,IProgressMonitor)}
- * method. In this scenario project is faceted and convertIfNecessary
- * is set to true.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromNonFacetedProject2()
-
- throws CoreException, IOException
-
- {
- final IFacetedProject prior
- = ProjectFacetsManager.create( "abc", null, null );
-
- final IProject project = prior.getProject();
-
- this.resourcesToCleanup.add( project );
-
- final IFacetedProject fproj
- = ProjectFacetsManager.create( project, true, null );
-
- assertEquals( fproj.getFixedProjectFacets().size(), 0 );
- assertEquals( fproj.getProjectFacets().size(), 0 );
- assertEquals( fproj.getTargetedRuntimes().size(), 0 );
- assertNull( fproj.getPrimaryRuntime() );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject,boolean,IProgressMonitor)}
- * method. In this scenario project is faceted and convertIfNecessary
- * is set to false.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromNonFacetedProject3()
-
- throws CoreException, IOException
-
- {
- final IFacetedProject prior
- = ProjectFacetsManager.create( "abc", null, null );
-
- final IProject project = prior.getProject();
-
- this.resourcesToCleanup.add( project );
-
- final IFacetedProject fproj
- = ProjectFacetsManager.create( project, false, null );
-
- assertEquals( fproj.getFixedProjectFacets().size(), 0 );
- assertEquals( fproj.getProjectFacets().size(), 0 );
- assertEquals( fproj.getTargetedRuntimes().size(), 0 );
- assertNull( fproj.getPrimaryRuntime() );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject,boolean,IProgressMonitor)}
- * method. In this scenario project is not faceted and convertIfNecessary
- * is set to false.
- *
- * @throws CoreException
- * @throws IOException
- */
-
- public void testCreationFromNonFacetedProject4()
-
- throws CoreException, IOException
-
- {
- final IProject project = ws.getRoot().getProject( "abc" );
- final IProjectDescription desc = ws.newProjectDescription( "abc" );
-
- desc.setLocation( null );
-
- project.create( desc, null );
- project.open( null );
-
- this.resourcesToCleanup.add( project );
-
- assertNull( ProjectFacetsManager.create( project, false, null ) );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject)} method. This scenario
- * validates that the wrapper cache is working and the same instance is
- * returned when the create method is called multiple times.
- *
- * @throws CoreException
- */
-
- public void testWrapperCreation1()
-
- throws CoreException
-
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( "abc", null, null );
-
- final IProject proj = fproj.getProject();
- this.resourcesToCleanup.add( proj );
-
- assertTrue( fproj == ProjectFacetsManager.create( proj ) );
- assertTrue( fproj == ProjectFacetsManager.create( proj ) );
- assertTrue( fproj == ProjectFacetsManager.create( proj ) );
- assertTrue( fproj == ProjectFacetsManager.create( proj ) );
- assertTrue( fproj == ProjectFacetsManager.create( proj ) );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject)} method. In this
- * scenario, the input project does not exist.
- *
- * @throws CoreException
- */
-
- public void testWrapperCreation2()
-
- throws CoreException
-
- {
- final IProject proj = ws.getRoot().getProject( "abc" );
- assertNull( ProjectFacetsManager.create( proj ) );
- }
-
- /**
- * Tests {@see ProjectFacetsManager.create(IProject)} method. In this
- * scenario, the input project is closed.
- *
- * @throws CoreException
- */
-
- public void testWrapperCreation3()
-
- throws CoreException
-
- {
- final IFacetedProject fproj
- = ProjectFacetsManager.create( "abc", null, null );
-
- final IProject proj = fproj.getProject();
- this.resourcesToCleanup.add( proj );
-
- proj.close( null );
-
- assertNull( ProjectFacetsManager.create( proj ) );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/CustomVersionComparator.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/CustomVersionComparator.java
deleted file mode 100644
index cab08f0..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/CustomVersionComparator.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.wst.common.project.facet.core.DefaultVersionComparator;
-import org.eclipse.wst.common.project.facet.core.VersionFormatException;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class CustomVersionComparator
-
- extends DefaultVersionComparator
-
-{
- protected String getSeparators()
- {
- return ".#";
- }
-
- protected Comparable parse( final String version,
- final String segment,
- final int position )
-
- throws VersionFormatException
-
- {
- if( position == 2 )
- {
- return new Inverter( segment );
- }
- else
- {
- return super.parse( version, segment, position );
- }
- }
-
- public static class Inverter
-
- implements Comparable
-
- {
- private final Comparable base;
-
- public Inverter( final Comparable base )
- {
- this.base = base;
- }
-
- public boolean equals( final Object obj )
- {
- if( ! ( obj instanceof Inverter ) )
- {
- return false;
- }
- else
- {
- return this.base.equals( ( (Inverter) obj ).base );
- }
- }
-
- public int compareTo( final Object obj )
- {
- return -1 * this.base.compareTo( ( (Inverter) obj ).base );
- }
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1InstallDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1InstallDelegate.java
deleted file mode 100644
index ee7af79..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1InstallDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet1InstallDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet1.txt" );
- TestUtils.writeToFile( file, fv.getVersionString() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1UninstallDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1UninstallDelegate.java
deleted file mode 100644
index 8836770..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1UninstallDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet1UninstallDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet1.txt" );
- file.delete( true, null );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1VersionChangeDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1VersionChangeDelegate.java
deleted file mode 100644
index 3934e03..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet1VersionChangeDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet1VersionChangeDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet1.txt" );
- TestUtils.writeToFile( file, fv.getVersionString() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aInstallDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aInstallDelegate.java
deleted file mode 100644
index 664d7f2..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aInstallDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet3aInstallDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet3a.txt" );
- TestUtils.writeToFile( file, fv.getVersionString() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aUninstallDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aUninstallDelegate.java
deleted file mode 100644
index c85a107..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aUninstallDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet3aUninstallDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet3a.txt" );
- file.delete( true, null );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aVersionChangeDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aVersionChangeDelegate.java
deleted file mode 100644
index 5d7c86a..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/Facet3aVersionChangeDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class Facet3aVersionChangeDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
-
- throws CoreException
-
- {
- final IFile file = project.getFile( "facet3a.txt" );
- TestUtils.writeToFile( file, fv.getVersionString() );
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/NoOpDelegate.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/NoOpDelegate.java
deleted file mode 100644
index 1d2f3ba..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/NoOpDelegate.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.common.project.facet.core.IDelegate;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class NoOpDelegate
-
- implements IDelegate
-
-{
- public void execute( final IProject project,
- final IProjectFacetVersion fv,
- final Object config,
- final IProgressMonitor monitor )
- {
- // do nothing
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/TestUtils.java b/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/TestUtils.java
deleted file mode 100644
index 218cee6..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/src/org/eclipse/wst/common/project/facet/core/tests/support/TestUtils.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005-2007 BEA Systems, Inc.
- * 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
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.wst.common.project.facet.core.tests.support;
-
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.io.UnsupportedEncodingException;
-import java.util.Arrays;
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import junit.framework.TestCase;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public class TestUtils
-{
- public static void writeToFile( final IFile file,
- final String contents )
-
- throws CoreException
-
- {
- try
- {
- final byte[] bytes = contents.getBytes( "UTF-8" );
-
- if( file.exists() )
- {
- file.setContents( new ByteArrayInputStream( bytes ),
- false, false, null );
- }
- else
- {
- file.create( new ByteArrayInputStream( bytes ), false, null );
- }
- }
- catch( UnsupportedEncodingException e )
- {
- throw new RuntimeException( e );
- }
- }
-
- public static String readFromFile( final IFile file )
-
- throws CoreException, IOException
-
- {
- TestCase.assertTrue( file.exists() );
-
- final StringBuffer buf = new StringBuffer();
- final Reader r = new InputStreamReader( file.getContents() );
-
- try
- {
- char[] chars = new char[ 1024 ];
-
- for( int count; ( count = r.read( chars ) ) != -1; )
- {
- buf.append( chars, 0, count );
- }
- }
- finally
- {
- try
- {
- r.close();
- }
- catch( IOException e ) {}
- }
-
- return buf.toString();
- }
-
-
- public static void assertEquals( final IFile file,
- final String expectedContents )
-
- throws CoreException, IOException
-
- {
- TestCase.assertEquals( readFromFile( file ), expectedContents );
- }
-
- public static void assertFileContains( final IFile file,
- final String str )
-
- throws CoreException, IOException
-
- {
- TestCase.assertTrue( readFromFile( file ).indexOf( str ) != -1 );
- }
-
- public static void waitForCondition( final ICondition condition )
- {
- waitForCondition( condition, 10 );
- }
-
- public static void waitForCondition( final ICondition condition,
- final int seconds )
- {
- for( int i = 0; i < seconds && ! condition.check(); i++ )
- {
- try
- {
- Thread.sleep( 1000 );
- }
- catch( InterruptedException e ) {}
- }
-
- TestCase.assertTrue( condition.check() );
- }
-
- public static interface ICondition
- {
- boolean check();
- }
-
- public static <T> Set<T> asSet( final T... objects )
- {
- final Set<T> set = new LinkedHashSet<T>();
- set.addAll( Arrays.asList( objects ) );
- return set;
- }
-
-}
diff --git a/tests/org.eclipse.wst.common.project.facet.core.tests/test.xml b/tests/org.eclipse.wst.common.project.facet.core.tests/test.xml
deleted file mode 100644
index f1b343d..0000000
--- a/tests/org.eclipse.wst.common.project.facet.core.tests/test.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="testsuite" default="run" basedir=".">
-
- <echo message="basedir ${basedir}" />
- <echo message="eclipse place ${eclipse-home}" />
-
- <property name="plugin-name" value="org.eclipse.wst.common.project.facet.core.tests"/>
- <property name="library-file" value="${eclipse-home}/plugins/org.eclipse.test_3.1.0/library.xml"/>
-
- <!-- This target holds all initialization code that needs to be done for -->
- <!-- all tests that are to be run. Initialization for individual tests -->
- <!-- should be done within the body of the suite target. -->
-
- <target name="init">
- <tstamp/>
- <delete>
- <fileset dir="${eclipse-home}" includes="${plugin-name}*.xml"/>
- </delete>
- </target>
-
- <!-- This target defines the tests that need to be run. -->
-
- <target name="suite">
- <property name="wst-folder" value="${eclipse-home}/wst_folder"/>
- <delete dir="${wst-folder}" quiet="true"/>
- <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">
- <property name="data-dir" value="${wst-folder}"/>
- <property name="plugin-name" value="${plugin-name}"/>
- <property name="classname" value="org.eclipse.wst.common.project.facet.core.tests.AllTests" />
- <property name="plugin-path" value="${eclipse-home}/plugins/${plugin-name}"/>
- </ant>
- </target>
-
- <!-- This target holds code to cleanup the testing environment after -->
- <!-- after all of the tests have been run. You can use this target to -->
- <!-- delete temporary files that have been created. -->
-
- <target name="cleanup">
- </target>
-
- <!-- This target runs the test suite. Any actions that need to happen -->
- <!-- after all the tests have been run should go here. -->
-
- <target name="run" depends="init,suite,cleanup">
- <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
- <property name="includes" value="${plugin-name}*.xml"/>
- <property name="output-file" value="${plugin-name}.xml"/>
- </ant>
- </target>
-
-</project>
\ No newline at end of file
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/.classpath b/tests/org.eclipse.wst.common.project.facet.ui.tests/.classpath
deleted file mode 100644
index 304e861..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/.cvsignore b/tests/org.eclipse.wst.common.project.facet.ui.tests/.cvsignore
deleted file mode 100644
index 3bfac44..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build.xml
-javaCompiler.tests.jar.args
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/.project b/tests/org.eclipse.wst.common.project.facet.ui.tests/.project
deleted file mode 100644
index 6b5d310..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.wst.common.project.facet.ui.tests</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.ManifestBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.pde.SchemaBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/.settings/org.eclipse.jdt.core.prefs b/tests/org.eclipse.wst.common.project.facet.ui.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 7a5f1c3..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,7 +0,0 @@
-#Fri Feb 02 16:51:39 PST 2007
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.5
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/META-INF/MANIFEST.MF b/tests/org.eclipse.wst.common.project.facet.ui.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 5c053c4..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Vendor: Eclipse.org
-Bundle-Name: Facet UI Tests Plug-in
-Bundle-SymbolicName: org.eclipse.wst.common.project.facet.ui.tests;singleton:=true
-Bundle-Version: 1.3.0.qualifier
-Require-Bundle: org.eclipse.wst.common.project.facet.ui,
- org.eclipse.wst.common.project.facet.core.tests,
- org.eclipse.core.resources
-Bundle-ClassPath: tests.jar
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Bundle-Localization: plugin
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/about.html b/tests/org.eclipse.wst.common.project.facet.ui.tests/about.html
deleted file mode 100644
index 9e73bda..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June 06, 2007</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in
-("Content"). Unless otherwise indicated below, the Content is provided to you
-under the terms and conditions of the Eclipse Public License Version 1.0
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>.
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the
-Content is being redistributed by another party ("Redistributor") and different
-terms and conditions may apply to your use of any object code in the Content.
-Check the Redistributor's license that was provided with the Content. If no such
-license exists, contact the Redistributor. Unless otherwise indicated below, the
-terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/build.properties b/tests/org.eclipse.wst.common.project.facet.ui.tests/build.properties
deleted file mode 100644
index e3df3db..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/build.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-bin.includes = META-INF/,\
- plugin.xml,\
- tests.jar,\
- about.html,\
- plugin.properties,\
- images/
-jars.compile.order = tests.jar
-source.tests.jar = src/
-output.tests.jar = bin/
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/images/unknown.gif b/tests/org.eclipse.wst.common.project.facet.ui.tests/images/unknown.gif
deleted file mode 100644
index 7ccc6a7..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/images/unknown.gif
+++ /dev/null
Binary files differ
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.properties b/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.properties
deleted file mode 100644
index a3370ff..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-#Properties file for org.eclipse.wst.common.project.facet.ui.tests
-Bundle-Vendor.0 = Eclipse.org
-Bundle-Name.0 = Facet UI Tests Plug-in
-wizard.name.0 = Faceted Project Test Wizard
-wizard.description.0 = This wizard is used to test the Faceted Project Wizard.
\ No newline at end of file
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.xml b/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.xml
deleted file mode 100644
index 1cc0f6a..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/plugin.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.2"?>
-
-<plugin>
-
- <extension point="org.eclipse.wst.common.project.facet.core.facets">
-
- <category id="ui.category">
- <label>UI Test Category</label>
- <description>This is the category description.</description>
- </category>
-
- <project-facet id="ui.f1">
- <label>Facet 1</label>
- <description>This is the description of facet1.</description>
- <member category="ui.category"/>
- </project-facet>
-
- <project-facet-version facet="ui.f1" version="1.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <project-facet id="ui.f2">
- <label>Facet 2</label>
- <description>This is the description of facet2.</description>
- <member category="ui.category"/>
- </project-facet>
-
- <project-facet-version facet="ui.f2" version="1.0">
- <action type="INSTALL">
- <delegate class="org.eclipse.wst.common.project.facet.core.tests.support.NoOpDelegate"/>
- </action>
- </project-facet-version>
-
- <template id="ui.base.wizard.template">
- <label>Faceted Project</label>
- </template>
-
- </extension>
-
- <extension point="org.eclipse.ui.newWizards">
- <wizard
- name="%wizard.name.0"
- id="org.eclipse.wst.common.project.facet.ui.tests.TestProjectWizard"
- class="org.eclipse.wst.common.project.facet.ui.tests.TestProjectWizard"
- icon="images/unknown.gif"
- project="true">
- <description>
- %wizard.description.0
- </description>
- <selection class="org.eclipse.core.resources.IResource"/>
- </wizard>
- </extension>
-
-</plugin>
diff --git a/tests/org.eclipse.wst.common.project.facet.ui.tests/src/org/eclipse/wst/common/project/facet/ui/tests/TestProjectWizard.java b/tests/org.eclipse.wst.common.project.facet.ui.tests/src/org/eclipse/wst/common/project/facet/ui/tests/TestProjectWizard.java
deleted file mode 100644
index aff122a..0000000
--- a/tests/org.eclipse.wst.common.project.facet.ui.tests/src/org/eclipse/wst/common/project/facet/ui/tests/TestProjectWizard.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.eclipse.wst.common.project.facet.ui.tests;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.wst.common.project.facet.core.IFacetedProjectTemplate;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.ui.FacetedProjectWizard;
-
-public final class TestProjectWizard
-
- extends FacetedProjectWizard
-
-{
- public TestProjectWizard()
- {
- setCategoryExpandedState( ProjectFacetsManager.getCategory( "ui.category" ), true );
- }
-
- @Override
- protected ImageDescriptor getDefaultPageImageDescriptor()
- {
- return null;
- }
-
- @Override
- protected String getPageDescription()
- {
- return "This wizard is used to test the Faceted Project Wizard.";
- }
-
- @Override
- protected IFacetedProjectTemplate getTemplate()
- {
- return ProjectFacetsManager.getTemplate( "ui.base.wizard.template" );
- }
-
-}