This commit was manufactured by cvs2svn to create tag 'v20021112H1100'.

Sprout from master 2002-11-12 15:37:43 UTC Christopher Elek <celek> 'profiling'
Cherrypick from master 2002-11-03 14:13:45 UTC Dejan Glozic <dejan> '*** empty log message ***':
    update/org.eclipse.update.ui/doc/searchCategory.html
Delete:
    ant/org.eclipse.ant.core/.classpath
    ant/org.eclipse.ant.core/.cvsignore
    ant/org.eclipse.ant.core/.options
    ant/org.eclipse.ant.core/.project
    ant/org.eclipse.ant.core/about.html
    ant/org.eclipse.ant.core/build.properties
    ant/org.eclipse.ant.core/buildnotes_platform-ant.html
    ant/org.eclipse.ant.core/doc/hglegal.htm
    ant/org.eclipse.ant.core/doc/ngibmcpy.gif
    ant/org.eclipse.ant.core/doc/org_eclipse_ant_core.html
    ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTasks.html
    ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTypes.html
    ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_extraClasspathEntries.html
    ant/org.eclipse.ant.core/lib/.cvsignore
    ant/org.eclipse.ant.core/plugin.properties
    ant/org.eclipse.ant.core/plugin.xml
    ant/org.eclipse.ant.core/r2_0_buildnotes_platform-ant.html
    ant/org.eclipse.ant.core/scripts/buildExtraJAR.xml
    ant/org.eclipse.ant.core/scripts/exportplugin.xml
    ant/org.eclipse.ant.core/scripts/updateTarget.xml
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePlugin.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePreferences.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntRunner.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntSecurityException.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Property.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/TargetInfo.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Task.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Type.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/core/package.html
    ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntClassLoader.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntObject.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/IAntCoreConstants.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.java
    ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.properties
    ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/AntSecurityManager.java
    ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.java
    ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.properties
    ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntRunner.java
    ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/ProgressBuildListener.java
    ant/org.eclipse.ant.tests.core/.classpath
    ant/org.eclipse.ant.tests.core/.cvsignore
    ant/org.eclipse.ant.tests.core/.project
    ant/org.eclipse.ant.tests.core/about.html
    ant/org.eclipse.ant.tests.core/build.properties
    ant/org.eclipse.ant.tests.core/lib/antTestsSupport.jar
    ant/org.eclipse.ant.tests.core/plugin.properties
    ant/org.eclipse.ant.tests.core/plugin.xml
    ant/org.eclipse.ant.tests.core/scripts/buildAntTestsSupportJAR.xml
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntFileRunner.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestChecker.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestPlugin.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/Main.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/NewMain.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/ProjectHelper.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestPluginLauncher.java
    ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestWorkbench.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/inputHandlers/AntTestInputHandler.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTask.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTaskWithCustomType.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildListener.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildLogger.java
    ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/types/AntTestType.java
    ant/org.eclipse.ant.tests.core/test.xml
    ant/org.eclipse.ant.tests.core/testlib/classpathOrdering1.jar
    ant/org.eclipse.ant.tests.core/testlib/classpathOrdering2.jar
    ant/org.eclipse.ant.tests.core/testresources/AntTestTask.java
    ant/org.eclipse.ant.tests.core/testresources/test.properties
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AbstractAntTest.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AutomatedSuite.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/ProjectCreationDecorator.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/FrameworkTests.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/OptionTests.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/ProjectTests.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TargetTests.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TaskTests.java
    ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TypeTests.java
    ant/org.eclipse.ant.tests.core/testscripts/ClasspathOrdering.xml
    ant/org.eclipse.ant.tests.core/testscripts/CustomTask.xml
    ant/org.eclipse.ant.tests.core/testscripts/CustomType.xml
    ant/org.eclipse.ant.tests.core/testscripts/NoDefault.xml
    ant/org.eclipse.ant.tests.core/testscripts/TestForEcho.xml
    ant/org.eclipse.ant.tests.core/testscripts/build.xml
    ant/org.eclipse.ant.tests.core/testscripts/echoing.xml
    ant/org.eclipse.ant.tests.core/testscripts/input.xml
    ant/org.eclipse.ant.tests.core/testscripts/javac.xml
    ant/org.eclipse.ant.ui/.classpath
    ant/org.eclipse.ant.ui/.cvsignore
    ant/org.eclipse.ant.ui/.project
    ant/org.eclipse.ant.ui/README.txt
    platform/org.eclipse.platform/.classpath
    platform/org.eclipse.platform/.cvsignore
    platform/org.eclipse.platform/.eclipseproduct
    platform/org.eclipse.platform/.project
    platform/org.eclipse.platform/about.html
    platform/org.eclipse.platform/about.ini
    platform/org.eclipse.platform/about.mappings
    platform/org.eclipse.platform/about.properties
    platform/org.eclipse.platform/build.properties
    platform/org.eclipse.platform/cpl-v10.html
    platform/org.eclipse.platform/eclipse.gif
    platform/org.eclipse.platform/eclipse32.gif
    platform/org.eclipse.platform/eclipse_lg.gif
    platform/org.eclipse.platform/install.ini
    platform/org.eclipse.platform/notice.html
    platform/org.eclipse.platform/plugin.properties
    platform/org.eclipse.platform/plugin.xml
    platform/org.eclipse.platform/plugin_customization.ini
    platform/org.eclipse.platform/plugin_customization.properties
    platform/org.eclipse.platform/splash.bmp
    platform/org.eclipse.platform/src/org/eclipse/core/launcher/Main.java
    platform/org.eclipse.platform/src/org/eclipse/core/launcher/package.html
    platform/org.eclipse.platform/welcome.xml
    update/org.eclipse.update.core.linux/.classpath
    update/org.eclipse.update.core.linux/.cvsignore
    update/org.eclipse.update.core.linux/.project
    update/org.eclipse.update.core.linux/about.html
    update/org.eclipse.update.core.linux/build.properties
    update/org.eclipse.update.core.linux/fragment.xml
    update/org.eclipse.update.core.linux/os/linux/libupdate.so
    update/org.eclipse.update.core.linux/src/build.xml
    update/org.eclipse.update.core.linux/src/update.cpp
    update/org.eclipse.update.core.linux/src/update.h
    update/org.eclipse.update.examples/bin/org/eclipse/update/examples/buildzip/java.page.jpage
    update/org.eclipse.update.ui.forms/.classpath
    update/org.eclipse.update.ui.forms/.cvsignore
    update/org.eclipse.update.ui.forms/.project
    update/org.eclipse.update.ui.forms/about.html
    update/org.eclipse.update.ui.forms/build.properties
    update/org.eclipse.update.ui.forms/plugin.properties
    update/org.eclipse.update.ui.forms/plugin.xml
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractSectionForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/CustomWorkbook.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ExpandableGroup.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormButton.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormEntry.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormLabel.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormSection.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormWidgetFactory.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPlugin.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPluginResources.properties
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HTMLTableLayout.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkAdapter.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkHandler.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkSettings.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormPage.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormSelectionListener.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormTextListener.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormWorkbook.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IHyperlinkListener.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/NoTabsWorkbook.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ScrollableSectionForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionChangeManager.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableControl.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableFormLabel.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableData.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableLayoutTest.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ToggleControl.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/WebForm.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/BulletParagraph.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngine.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngineLayout.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HTTPAction.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkAction.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IBulletParagraph.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IHyperlinkSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IImageSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IObjectReference.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraph.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraphSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextModel.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ImageSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Locator.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Paragraph.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ParagraphSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextModel.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextSegment.java
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/index.xml
    update/org.eclipse.update/.classpath
    update/org.eclipse.update/.cvsignore
    update/org.eclipse.update/.vcm_meta
    update/org.eclipse.update/about.html
    update/org.eclipse.update/build.properties
    update/org.eclipse.update/icons/full/ctool16/new.gif
    update/org.eclipse.update/icons/full/ctool16/update.gif
    update/org.eclipse.update/icons/full/wizban/new.gif
    update/org.eclipse.update/icons/full/wizban/revert.gif
    update/org.eclipse.update/icons/full/wizban/update.gif
    update/org.eclipse.update/plugin.properties
    update/org.eclipse.update/plugin.xml
    update/org.eclipse.update/plugin.xml.off
    update/org.eclipse.update/src/org/eclipse/update/internal/core/ISessionDefiner.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/IUMLock.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMLock.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionDefinerReferenceUpdate.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManager.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManagerEntry.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManagerMessage.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManagerOperation.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManagerParcel.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UMSessionManagerSession.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/URLHandler.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UpdateManager.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UpdateManagerException.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UpdateManagerPlugin.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UpdateManagerStrings.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/UpdateManagerURLComparator.java
    update/org.eclipse.update/src/org/eclipse/update/internal/core/updatemanagerstrings.properties
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/AuthorizationDatabase.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/Installation.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/JarVerificationDialog.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/JarVerificationResult.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/JarVerificationService.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/JarVerifier.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/KeyStores.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/Main.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMApplication.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMApplicationUserInterface.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMApplicationUserInterfaceProperties.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMApplicationWindow.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMDialog.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMDialogAction.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMPreferencePageSettings.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizard.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageComplete.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageInstallable.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageInstalling.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageLaunchHistory.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageLaunchHistoryComplete.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageLocations.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageURLComplete.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageURLInstall.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageURLInstallable.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPageURLInstalling.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardPersistentProperties.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardProductComponentNew.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardProductComponentRevert.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardProductComponentURLInstall.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardProductComponentUpdate.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardTreeItem.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardTreeItemComparator.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UMWizardURLNamePairComparator.java
    update/org.eclipse.update/src/org/eclipse/update/internal/ui/UserValidationDialog.java
diff --git a/ant/org.eclipse.ant.core/.classpath b/ant/org.eclipse.ant.core/.classpath
deleted file mode 100644
index 0946172..0000000
--- a/ant/org.eclipse.ant.core/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="src/"/>
-    <classpathentry kind="src" path="src_ant/"/>
-    <classpathentry kind="src" path="/org.apache.xerces"/>
-    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="src" path="/org.apache.ant"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/ant/org.eclipse.ant.core/.cvsignore b/ant/org.eclipse.ant.core/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/ant/org.eclipse.ant.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/ant/org.eclipse.ant.core/.options b/ant/org.eclipse.ant.core/.options
deleted file mode 100644
index 04b34d5..0000000
--- a/ant/org.eclipse.ant.core/.options
+++ /dev/null
@@ -1,7 +0,0 @@
-# Debugging options for the org.eclipse.ant.core plugin.
-
-# Turn on debugging for the org.eclipse.ant.core plugin.
-org.eclipse.ant.core/debug=true
-
-# Displays buildfile run times.
-org.eclipse.ant.core/buildfile/timing=false
diff --git a/ant/org.eclipse.ant.core/.project b/ant/org.eclipse.ant.core/.project
deleted file mode 100644
index 4df3a06..0000000
--- a/ant/org.eclipse.ant.core/.project
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.ant.core</name>
-	<comment></comment>
-	<projects>
-		<project>org.apache.ant</project>
-		<project>org.apache.xerces</project>
-		<project>org.eclipse.core.boot</project>
-		<project>org.eclipse.core.runtime</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
-			<arguments>
-				<dictionary>
-					<key>!{tool_show_log}</key>
-					<value>true</value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_refresh}</key>
-					<value>${none}</value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_name}</key>
-					<value>org.eclipse.ant.core extra builder</value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_dir}</key>
-					<value></value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_args}</key>
-					<value>-DbuildType=${build_type}</value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_loc}</key>
-					<value>${workspace_loc:/org.eclipse.ant.core/scripts/buildExtraJAR.xml}</value>
-				</dictionary>
-				<dictionary>
-					<key>!{tool_type}</key>
-					<value>org.eclipse.ui.externaltools.type.ant</value>
-				</dictionary>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/ant/org.eclipse.ant.core/about.html b/ant/org.eclipse.ant.core/about.html
deleted file mode 100644
index 756efe8..0000000
--- a/ant/org.eclipse.ant.core/about.html
+++ /dev/null
@@ -1,89 +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">
-<h2>About This Content</h2>
-
-<p>16th October, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Third Party Content</h3>
-
-<p>The Content includes items that have been sourced from third parties as follows:</p>
-
-<p><b>Ant 1.5.1</b></p>
-<p>The plug-in is based on software developed by The Apache Software Foundation as part of the Jakarta project.  Therefore:</p>
-
-<blockquote>
-This product includes software developed by the Apache Software Foundation (<a href="http://www.apache.org/">http://www.apache.org/</a>).
-</blockquote>
-
-<p>The following classes (&quot;Ant Derivative Work&quot;) are based on Ant code:</p>
-
-<ul>
-	<li>InternalAntRunner contained in antsupportlib.jar and antsupportlibsrc.zip</li>
-</ul>
-
-<p>The Ant Derivative Work is:</p>
-
-<blockquote>Copyright (c) 2000-2002 The Apache Software Foundation. All rights reserved.</blockquote>
-
-<p>Your use of the Ant Derivative Work is subject to the terms and conditions of the Apache Software License 1.1 which
-is available at <a href="http://jakarta.apache.org/ant/manual/LICENSE">http://jakarta.apache.org/ant/manual/LICENSE</a>.
-More specifically:</p>
-<blockquote>
-	1. Redistributions of source code must retain the above copyright notice, this list of<br />
-	conditions and the following disclaimer.<br />
-<br />
-	2. Redistributions in binary form must reproduce the above copyright notice, this list of<br />
-	conditions and the following disclaimer in the documentation and/or other materials<br />
-	provided with the distribution.<br />
-<br />
-	3. The end-user documentation included with the redistribution, if any, must include the<br />
-	following acknowledgment:<br />
-	<blockquote>
-		&quot;This product includes software developed by the Apache Software Foundation<br />
-		(<a href="http://www.apache.org/">http://www.apache.org/</a>).&quot;
-	</blockquote>
-	Alternately, this acknowledgment may appear in the software itself, if and wherever such<br />
-	third-party acknowledgments normally appear.<br />
-<br />
-	4. The names &quot;Ant&quot; and &quot;Apache Software Foundation&quot; must not be used to endorse or<br />
-	promote products derived from this software without prior written permission. For written<br />
-	permission, please contact <a href="mailto:apache@apache.org">apache@apache.org</a>.<br />
-<br />
-	5. Products derived from this software may not be called &quot;Apache&quot;, nor may &quot;Apache&quot; appear<br />
-	in their name, without prior written permission of the Apache Software Foundation.<br />
-<br />
-	THIS SOFTWARE IS PROVIDED &quot;AS IS&quot; AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT<br />
-	LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR<br />
-	PURPOSE ARE	DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS<br />
-	CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR<br />
-	CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR<br />
-	SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON<br />
-	ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,	OR TORT (INCLUDING<br />
-	NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT	OF THE USE OF THIS SOFTWARE, EVEN IF<br />
-	ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-</blockquote>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/build.properties b/ant/org.eclipse.ant.core/build.properties
deleted file mode 100644
index 2147d49..0000000
--- a/ant/org.eclipse.ant.core/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-source.antsupport.jar=src/
-source.lib/antsupportlib.jar=src_ant/
-src.includes=about.html
-bin.includes=plugin.xml,plugin.properties,about.html,*.jar,lib/*.jar,.options
-jars.compile.order=antsupport.jar,lib/antsupportlib.jar
-jars.extra.classpath=../org.apache.ant/ant.jar
-javadoc.packages=org.eclipse.*
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/buildnotes_platform-ant.html b/ant/org.eclipse.ant.core/buildnotes_platform-ant.html
deleted file mode 100644
index 5318f1b..0000000
--- a/ant/org.eclipse.ant.core/buildnotes_platform-ant.html
+++ /dev/null
@@ -1,158 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.7 [en] (WinNT; I) [Netscape]">
-   <title>Eclipse Platform Release Notes Ant</title>
-</head>
-<body>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Nov 12, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25759">25759</a>: NPE trying to open the antview preferences page<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Nov 05, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25509">25509</a>: NPE from InternalAntRunner<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25639">25639</a>: Double click in tasks and types tabs should invoke edit<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25656">25656</a>: [ant] Cannot add multiple Jars to ant classpath at the same time<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25693">25693</a>: Implement support for the -diagnostics option<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25647">25647</a>: Add Ant View to Eclipse<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25698">25698</a>: Global properties<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25699">25699</a>: Global property files<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25702">25702</a>:  [External Tools] Restore defaults does not work<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24525">24525</a>:  Active targets not shown in ant tool property page<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24578">24578</a>:  Can't add variable to tool arguments<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 29, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24847">24847</a>: duplicate options not handled the same as cmd line Ant<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25133">25133</a>: Implement support for the 1.5.1 feature: -propertyfile<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25213">25213</a>: -propertyfile should not abort build if the property file is not found<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24580">24580</a>: Expose more information in TargetInfo<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17803">17803</a>: [ExternalTools] AntPage table should scroll horizontally<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18294">18294</a>: [ExternalTools] Ant preference page: classpath list too wide<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24383">24383</a>: Update the printUsage of InternalAntRunner<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24824">24824</a>: DefaultLogger should be used for headless Ant<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20576">20576</a>: [ExternalTools] Should specify order of jars on classpath<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24234">24234</a>: Ant test suite<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24318">24318</a>: Move to Ant 1.5.1<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=25134">25134</a>: Implement support for the 1.5.1 feature: -inputhandler<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 22, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24756">24756</a>: -projecthelp indicates BUILD SUCCESSFUL<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24831">24831</a>: Same URL multiple times in the AntClassLoader<br>
-
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 16, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15821">15821</a>: [ExternalTools] Minor: Ant console "steals" focus<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22400">22400</a>: [ExternalTools] Run Ant... action displayed for invalid resources (build I0813)<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 15, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6020">6020</a>: Tasks calling System.exit crash Eclipse<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23651">23651</a>: [doc] AntTasks and AntTypes refer to non-existant API<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23653">23653</a>: [doc] Extra Ant classpath entries extension<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24459">24459</a>: AntCorePlugin startup<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19899">19899</a>: If the user never changes the Ant classpath, it should always be computed<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23917">23917</a>: logfile not created in the correct location when path not fully specified<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24587">24587</a>: Project properties not set properly if no arguments passed<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24696">24696</a>: ExternalTools antrunner.jar is still in the HEAD stream<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24418">24418</a>: Option without necessary corresponding argument not handled correctly<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24594">24594</a>: Targets specified as arguments not recognized<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23995">23995</a>: deadlock while running build.xml<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24733">24733</a>: Help text is wrong<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24710">24710</a>: Custom ant task classes not found<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 09, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24527">24527</a>: java.io.FileNotFoundException occurs when invoking AntRunner<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 08, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20557">20557</a>: Running an empty ant script takes about 2 seconds<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22459">22459</a>: AntRunner prints stack trace on OperationCanceledException<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23383">23383</a>: API: Add @since tags<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24290">24290</a>: Ant preferences are only saved at shutdown<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23584">23584</a>: Java should be capitalized<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17484">17484</a>: [ExternalTools] Adding tasks from JARs in the Ant Preference Page<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23664">23664</a>: Better reporting of errors when reading Ant build file<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24415">24415</a>: Running an Ant script with console logging turned off writes to OS console<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=24452">24452</a>: Key clashes within extension point definitions<br>
-
-<h3>
-Problem Reports Closed</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23350">23350</a>: Possible NPE<br>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build Oct 01, 2002
-
-<h3>
-Resolved Bugs</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23482">23482</a>: Rework the Core Ant code to be able to use the NLS tools<br> 
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14180">14180</a>: Ant -help not function<br> 
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19801">19801</a>: AntCorePreferences, Type, Tasks could be a public class<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23881">23881</a>: Same error logged three times<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23913">23913</a>: Issues with InternalAntRunner#printHelp(Project)<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22714">22714</a>: Arguments line lose spaces when printed to console<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23132">23132</a>: -logfile option for ant doesnt seem to work<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16740">16740</a>: [ExternalTools] Irrelevant stack trace for errors in Ant build file<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19838">19838</a>: Error codes for Ant Core should be public<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21478">21478</a>: Insufficient Ant activation error reporting<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23658">23658</a>: Build file is not logged to log console view<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22465">22465</a>: Wrong ant script causes fatal error written to console<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23924">23924</a>: handling of incorrect / unrecognized arguments<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23720">23720</a>: [doc] Extension point listing is incorrect<br>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22702">22702</a>: XmlLogger not working?<br>
-
-<h3>
-Problem Reports Closed</h3>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21479">21479</a>: Ant classpath refers to old 'xerces.jar'<br> 
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23832">23832</a>: Update Ant pages on dev.eclipse.org<br>
-
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/doc/hglegal.htm b/ant/org.eclipse.ant.core/doc/hglegal.htm
deleted file mode 100644
index b071dbd..0000000
--- a/ant/org.eclipse.ant.core/doc/hglegal.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">

-<html>

-<head>

-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

-   <meta name="GENERATOR" content="Mozilla/4.73 [en] (Win98; U) [Netscape]">

-   <title>Legal Notices</title>

-</head>

-<body>

-

-<h3>

-<a NAME="Notices"></a>Notices</h3>

-(c) Copyright IBM Corp. 2000, 2001. All Rights Reserved.

-</body>

-</html>

diff --git a/ant/org.eclipse.ant.core/doc/ngibmcpy.gif b/ant/org.eclipse.ant.core/doc/ngibmcpy.gif
deleted file mode 100644
index 360f8e9..0000000
--- a/ant/org.eclipse.ant.core/doc/ngibmcpy.gif
+++ /dev/null
Binary files differ
diff --git a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core.html b/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core.html
deleted file mode 100644
index 26f22bb..0000000
--- a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <title>Ant Build Tool Core extension-points</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-Ant Build Tool Core Plug-in</h1></center>
-This document lists all of the extension points that the Ant Build Tool Core
-plug-in makes available to tool developers.
-<p>
-<hr WIDTH="100%">
-<h1>
-General Extension Points</h1>
-The following extension points can be used to extend the fundamental capabilities
-of the Ant core plug-in:
-<ul>
-<li>
-<a href="org_eclipse_ant_core_antTasks.html">org.eclipse.ant.core.antTasks</a></li>
-
-<li>
-<a href="org_eclipse_ant_core_antTypes.html">org.eclipse.ant.core.antTypes</a></li>
-<li>
-<a href="org_eclipse_ant_core_extraClasspathEntries.html">org.eclipse.ant.core.extraClasspathEntries</a></li>
-</ul>
-<a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001.  All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTasks.html b/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTasks.html
deleted file mode 100644
index a84b7a8..0000000
--- a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTasks.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.7 [en] (WinNT; I) [Netscape]">
-   <title>AntTasks</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-AntTasks</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.ant.core.antTasks
-<p><b><i>Description: </i></b>Allows plug-ins to define arbitrary Ant tasks
-for use by the Ant infrastructure.&nbsp; The standard Ant infrastructure
-allows for the addition of arbitrary tasks.&nbsp; Unfortunately, it is
-unlikely that the Ant Core plug-in would have the classes required by these
-tasks on its classpath (or that of any of its prerequisites).&nbsp; To
-address this, clients should define an extension which plugs into this
-extension-point and maps a task name onto a class.&nbsp; The Ant plug-in
-can then request that the declaring plug-in load the specified class.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT antTask EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST antTask</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; library&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-<ul>
-<li>
-<b>name -</b> name of the task to be defined</li>
-
-<li>
-<b>class</b> - the fully qualified name of a Java class implementing the
-task.&nbsp; Generally this class must be a subclass of&nbsp; <tt>org.apache.tools.ant.Task</tt>.</li>
-
-<li>
-<b>library</b> - a path relative to the plug-in install location for the
-library containing the task</li>
-</ul>
-<b><i>Examples: </i></b>The following is an example of an object declaration:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.ant.core.antTasks"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;antTask name="coolTask" class="com.example.CoolTask" library= "lib/examples.jar"/></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-<p><b><i>Supplied Implementation:</i></b> The platform itself supplies
-a number of tasks including <tt>incremental, javac and refreshLocal</tt>.
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001.  All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTypes.html b/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTypes.html
deleted file mode 100644
index a101a4c..0000000
--- a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_antTypes.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.7 [en] (WinNT; I) [Netscape]">
-   <title>AntObjects</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-AntTypes</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.ant.core.antTypes
-<p><b><i>Description: </i></b>Allows plug-ins to define arbitrary Ant datatypes
-for use by the Ant infrastructure.&nbsp; The standard Ant infrastructure
-allows for the addition of arbitrary datatypes.&nbsp; Unfortunately, it
-is unlikely that the Ant Core plug-in would have the classes required by
-these datatypes on its classpath (or that of any of its prerequisites).&nbsp;
-To address this, clients should define an extension which plugs into this
-extension-point and maps a datatype name onto a class.&nbsp; The Ant plug-in
-can then request that the declaring plug-in load the specified class.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT antType EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST antType</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; library&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-<ul>
-<li>
-<b>name -</b> name of the task to be defined</li>
-
-<li>
-<b>class</b> - the fully qualified name of a Java class implementing the
-datatype.&nbsp; Generally this class must be a subclass of&nbsp; <tt>org.apache.tools.ant.types.DataType</tt>.</li>
-
-<li>
-<b>library</b> - a path relative to the plug-in install location for the
-library containing the type</li>
-</ul>
-<b><i>Examples: </i></b>The following is an example of an object declaration:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.ant.core.antTypes"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;antTask name="coolType" class="com.example.CoolType" library="lib/example.jar"/></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001.  All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_extraClasspathEntries.html b/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_extraClasspathEntries.html
deleted file mode 100644
index eb099db..0000000
--- a/ant/org.eclipse.ant.core/doc/org_eclipse_ant_core_extraClasspathEntries.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.7 [en] (WinNT; I) [Netscape]">
-   <meta name="Author" content="Rodrigo Peretti">
-   <title>Extra Ant Classpath Entries</title>
-</head>
-<body link="#0000FF" vlink="#800080">
-
-<center>
-<h1>
-Extra Ant Classpath Entries</h1></center>
-<b><i>Identifier: </i></b>org.eclipse.ant.core.extraClasspathEntries
-<p><b><i>Description: </i></b>Allows plug-ins to define arbitrary JARs
-for use by the Ant infrastructure. These JARs are put into the Ant classpath
-at runtime. Besides the JAR, the plug-in classloader of the plug-in providing
-the JAR is also added to the classpath.
-<p><b><i>Configuration Markup:</i></b>
-<p><tt>&nbsp;&nbsp; &lt;!ELEMENT extraClasspathEntry EMPTY></tt>
-<br><tt>&nbsp;&nbsp; &lt;!ATTLIST extraClasspathEntry</tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; library&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
-CDATA #REQUIRED</tt>
-<br><tt>&nbsp;&nbsp; ></tt>
-<ul>
-<li>
-<b>library</b> - a path relative to the plug-in install location for the
-library</li>
-</ul>
-<b><i>Examples: </i></b>The following is an example of an object declaration:
-<p><tt>&nbsp;&nbsp; &lt;extension point="org.eclipse.ant.core.extraClasspathEntries"></tt>
-<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;extraClasspathEntry library="myExtraLibrary.jar"/></tt>
-<br><tt>&nbsp;&nbsp; &lt;/extension></tt>
-<p><b><i>Supplied Implementation:</i></b> The platform itself supplies
-an ant support jar
-<p><a href="hglegal.htm"><img SRC="ngibmcpy.gif" ALT="Copyright IBM Corp. 2000, 2001.  All Rights Reserved." BORDER=0 height=12 width=195></a>
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/lib/.cvsignore b/ant/org.eclipse.ant.core/lib/.cvsignore
deleted file mode 100644
index f0f30e5..0000000
--- a/ant/org.eclipse.ant.core/lib/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-antsupportlib.jar
diff --git a/ant/org.eclipse.ant.core/plugin.properties b/ant/org.eclipse.ant.core/plugin.properties
deleted file mode 100644
index 0793194..0000000
--- a/ant/org.eclipse.ant.core/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-######################################################################
-# Copyright (c) 2000, 2002 IBM Corp. and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-#    IBM Corporation - Initial implementation
-######################################################################
-
-pluginName = Ant Build Tool Core
-providerName = Eclipse.org
-classpathName = Extra Ant Classpath Entry Definitions
-tasksName = Ant Task Definitions
-typesName = Ant Type Definitions
diff --git a/ant/org.eclipse.ant.core/plugin.xml b/ant/org.eclipse.ant.core/plugin.xml
deleted file mode 100644
index bfc30b9..0000000
--- a/ant/org.eclipse.ant.core/plugin.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin
-   id="org.eclipse.ant.core"
-   name="%pluginName"
-   version="2.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.ant.core.AntCorePlugin">
-
-   <requires>
-     <import plugin="org.apache.xerces"/>
-   </requires>
-
-   <runtime>
-     <library name="antsupport.jar">
-       <export name="*"/>
-     </library>
-   </runtime>
-
-   <extension-point id="extraClasspathEntries" name="%classpathName"/>
-   <extension-point id="antTasks" name="%tasksName"/>
-   <extension-point id="antTypes" name="%typesName"/>
-
-   <!-- Applications -->
-   <extension
-     id="antRunner"
-     point="org.eclipse.core.runtime.applications">
-     <application>
-       <run
-         class="org.eclipse.ant.core.AntRunner">
-       </run>
-    </application>
-   </extension>
-
-   <!-- Extra Classpath -->
-   <extension point="org.eclipse.ant.core.extraClasspathEntries">
-      <extraClasspathEntry
-         library="lib/antsupportlib.jar">
-      </extraClasspathEntry>
-   </extension>
-
-</plugin>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/r2_0_buildnotes_platform-ant.html b/ant/org.eclipse.ant.core/r2_0_buildnotes_platform-ant.html
deleted file mode 100644
index 238d69a..0000000
--- a/ant/org.eclipse.ant.core/r2_0_buildnotes_platform-ant.html
+++ /dev/null
@@ -1,552 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="GENERATOR" content="Mozilla/4.7 [en] (WinNT; I) [Netscape]">
-   <title>Eclipse Platform Release Notes Core</title>
-</head>
-<body>
-
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020612
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F06%2F11&chfieldto=2002%2F06%2F12&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&field0-0-1=noop&type0-0-1=noop&value0-0-1=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020611
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F06%2F07&chfieldto=2002%2F06%2F11&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&field0-0-1=noop&type0-0-1=noop&value0-0-1=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020607
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F05%2F31&chfieldto=2002%2F06%2F07&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&field0-0-1=noop&type0-0-1=noop&value0-0-1=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020531
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F05%2F30&chfieldto=2002%2F05%2F31&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&field0-0-1=noop&type0-0-1=noop&value0-0-1=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<hr WIDTH="100%">
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020530
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F05%2F29&chfieldto=2002%2F05%2F30&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020529
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F05%2F21&chfieldto=2002%2F05%2F29&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020521
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-The plug-in <b><tt>org.eclipse.ant.ui</tt></b> has been removed in favor
-of <b><tt>org.eclipse.ui.externaltools</tt></b>.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F05%2F14&chfieldto=2002%2F05%2F21&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<hr WIDTH="100%">
-<h1>
-Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020514
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-Ant type eclipse.commapatternset has been removed.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F04%2F30&chfieldto=2002%2F05%2F14&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020430
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-Type commapatternset is now called eclipse.commapatternset .</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F04%2F12&chfieldto=2002%2F04%2F30&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020411
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F04%2F09&chfieldto=2002%2F04%2F12&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&namedcmd=Active&newqueryname=&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020409
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-<b><tt>org.eclipse.ant.core</tt></b> does not export <b><tt>org.apache.ant</tt></b>
-anymore. Plug-ins that need to have access to Ant classes need to require
-<b><tt>org.apache.ant</tt></b>
-directly.</li>
-
-<li>
-Tasks <b><tt>refreshLocal</tt></b> and <b><tt>incrementalBuild</tt></b>
-are not available anymore. Use <b><tt>eclipse.refreshLocal</tt></b> and
-<b><tt>eclipse.incrementalBuild</tt></b>
-instead.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-New property <b><tt>eclipse.running</tt></b> is set for scripts running
-inside Eclipse.</li>
-
-<li>
-It is now possible to extend the Ant classpath by adding new JARs, folders,
-tasks and types through a preference (Workbench->Preferences->Ant->Customize).</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2002%2F01%2F29&chfieldto=2002%2F04%2F09&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&namedcmd=Active&newqueryname=&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20020129
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2001%2F12%2F17&chfieldto=2002%2F01%2F29&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&namedcmd=ant&newqueryname=&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20011218
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2001%2F12%2F11&chfieldto=2001%2F12%2F17&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&namedcmd=ant&newqueryname=&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20011211
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-Ant code from Apache has moved to a new plug-in called org.apache.ant..</li>
-</ul>
-
-<h3>
-Resolved Bugs</h3>
-
-<ul>
-<li>
-<a href="http://dev.eclipse.org/bugs/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfield=bug_status&chfieldfrom=2001%2F11%2F27&chfieldto=2001%2F12%2F10&chfieldvalue=&product=Platform&component=Ant&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&namedcmd=Active&newqueryname=&order=Bug+Number">Click
-here</a> to see PRs which have been marked as RESOLVED, VERIFIED or CLOSED
-since the last integration build.</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20011127 (v213)
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5391">5391</a>&nbsp;
-Upgrade to Ant 1.4.1</li>
-</ul>
-
-<h1>
-
-<hr WIDTH="100%">Eclipse Platform Build Notes<br>
-Ant</h1>
-Eclipse SDK Build 20011120 (v211)
-<h2>
-What's new in this drop</h2>
-
-<h3>
-API changes</h3>
-
-<ul>
-<li>
-None.</li>
-</ul>
-
-<h3>
-Other highlights</h3>
-
-<ul>
-<li>
-<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5331">5331</a>&nbsp;
-Ant does not override optional tasks with org.eclipse.ant.core.antTasks
-extension point</li>
-</ul>
-
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/scripts/buildExtraJAR.xml b/ant/org.eclipse.ant.core/scripts/buildExtraJAR.xml
deleted file mode 100644
index 4989c68..0000000
--- a/ant/org.eclipse.ant.core/scripts/buildExtraJAR.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="org.eclipse.ant.core" default="main" basedir="..">
-
-	<property name="bootclasspath" value=""/>
-
-	<target name="main">
-		<condition property="fullBuild">
-			<equals arg1="${buildType}" arg2="full"/>
-		</condition>
-		<antcall target="build"/>
-	</target>
-
-	<target name="build" if="fullBuild">
-		<antcall target="clean"/>
-		<antcall target="lib/antsupportlib.jar"/>
-		<antcall target="refresh"/>
-	</target>
-
-	<target name="init" depends="properties">
-		<property name="plugin" value="org.eclipse.ant.core"/>
-		<property name="version.suffix" value="_2.1.0"/>
-		<property name="full.name" value="${plugin}${version.suffix}"/>
-		<property name="temp.folder" value="${basedir}/temp.folder"/>
-		<property name="plugin.destination" value="${basedir}"/>
-		<property name="build.result.folder" value="${basedir}"/>
-	</target>
-
-	<target name="properties" if="eclipse.running">
-		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
-	</target>
-
-	<target name="lib/antsupportlib.jar" depends="init">
-		<property name="destdir" value="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<delete dir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<mkdir dir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<!-- compile the source code -->
-		<javac target="1.3" source="1.3" destdir="${temp.folder}/lib/antsupportlib.jar.bin" failonerror="false" verbose="false" debug="on" includeAntRuntime="no" bootclasspath="${bootclasspath}" classpath="${basedir}/../org.eclipse.core.runtime/runtime.jar;${basedir}/../org.apache.ant/ant.jar;${basedir}/../org.apache.xerces/xercesImpl.jar;${basedir}/../org.apache.xerces/xmlParserAPIs.jar;${basedir}/bin;${basedir}/../org.eclipse.core.boot/boot.jar;">
-			<src path="src_ant/"/>
-		</javac>
-		<!-- copy necessary resources -->
-		<copy todir="${temp.folder}/lib/antsupportlib.jar.bin">
-			<fileset dir="src_ant/" excludes="**/*.java"/>
-		</copy>
-		<mkdir dir="${build.result.folder}/lib"/>
-		<jar jarfile="${build.result.folder}/lib/antsupportlib.jar" basedir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<delete dir="${temp.folder}"/>
-	</target>
-
-	<target name="clean" depends="init">
-		<delete file="${build.result.folder}/lib/antsupportlib.jar"/>
-		<delete dir="${temp.folder}"/>
-	</target>
-
-	<target name="refresh" depends="init" if="eclipse.running">
-		<eclipse.refreshLocal resource="${plugin}" depth="infinite"/>
-	</target>
-
-</project>
diff --git a/ant/org.eclipse.ant.core/scripts/exportplugin.xml b/ant/org.eclipse.ant.core/scripts/exportplugin.xml
deleted file mode 100644
index a17dd75..0000000
--- a/ant/org.eclipse.ant.core/scripts/exportplugin.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<!-- Export a jar of .class files for the org.eclipse.ant.core Eclipse plug-in
-     along with other important plugin files to the "plugin-export" subdirectory
-     of the target Eclipse installation -->
-<project name="org.eclipse.ant.core" default="export" basedir="..">
-
-	<!-- Set the timestamp and important properties -->
-	<target name="init">
-		<tstamp/>
-		<property name="destdir" value="../../plugin-export" />
-		<property name="dest"  value="${destdir}/org.eclipse.ant.core_2.1.0" />
-	</target>
-
-	<!-- Create the jar of .class files, and copy other important files to export dir -->
-	<target name="export" depends="init">
-		<mkdir dir="${destdir}" />
-		<delete dir="${dest}" />
-		<mkdir dir="${dest}" />
-		<delete dir="${dest}/lib"/>
-		<mkdir dir="${dest}/lib"/>
-		<jar 
-			jarfile="${dest}/antsupport.jar"
-			basedir="bin"
-		/>
-		<!-- Create the source zip -->
-		<zip zipfile="${dest}/antsupportsrc.zip">
-			<fileset dir="src"/>
-		</zip>
-		<copy file="plugin.xml" todir="${dest}"/>
-		<copy file="plugin.properties" todir="${dest}"/>
-		<copy file=".classpath" todir="${dest}"/>
-		<copy file=".options" todir="${dest}"/>
-		<ant antfile="scripts/buildExtraJAR.xml" target="build"/>
-		<copy file="lib/antsupportlib.jar" todir="${dest}/lib"/>
-	</target>
-	
-</project>
diff --git a/ant/org.eclipse.ant.core/scripts/updateTarget.xml b/ant/org.eclipse.ant.core/scripts/updateTarget.xml
deleted file mode 100644
index ae87671..0000000
--- a/ant/org.eclipse.ant.core/scripts/updateTarget.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<!--
-	For use in development of the Ant core plugin 
-	This script can be used to update a target for testing/debugging
-	Export a jar of .class files for the org.eclipse.ant.core Eclipse plugin
-    along with other important plugin files to the "plugin-export" subdirectory
-    of the target Eclipse installation
-	As well the export of the plugin is copied to a target installation.
- -->
-<project name="org.eclipse.ant.core" default="export" basedir="..">
-
-	<!-- Set the timestamp and important properties -->
-	<target name="init">
-		<tstamp/>
-		<property name="bootclasspath" value=""/>
-		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
-		<property name="destdir" value="../../plugin-export" />
-		<property name="pluginName" value= "org.eclipse.ant.core_2.1.0"/>
-		<property name="destBin"  value="${destdir}/${pluginName}" />
-		<property name="destSrc"  value="${destdir}/org.eclipse.platform.source/src/org.eclipse.ant.core_2.1.0" />
-		<property name="temp.folder" value="${destdir}/temp.folder"/>
-
-		<property name="currentBuild" value="../../Debugger/Ant/eclipse"/>
-		<property name="currentBuildPlugins" value="${currentBuild}/plugins/${pluginName}"/>
-	</target>
-
-	<!-- Create the jar of .class files, and copy other important files to export dir -->
-	<target name="export" depends="init">
-		<mkdir dir="${destdir}" />
-		<delete dir="${destBin}" />
-		<mkdir dir="${destBin}" />
-		<delete dir="${destSrc}" />
-		<mkdir dir="${destSrc}" />
-		<delete dir="${destBin}/lib" />
-		<jar 
-			jarfile="${destBin}/antsupport.jar"
-			basedir="bin"
-			excludes="bin/org/eclipse/ant/internal/core/ant"
-		/>
-		<!-- Create the source zip -->
-		<zip zipfile="${destSrc}/antsuppportsrc.zip">
-			<fileset dir="src"/>
-		</zip>
-		<copy file="plugin.xml" todir="${destBin}"/>
-		<copy file="plugin.properties" todir="${destBin}"/>
-		<copy file="about.html" todir="${destBin}"/>
-		<copy file=".classpath" todir="${destBin}"/>
-		<copy file=".options" todir="${destBin}"/>
-		
-		<delete dir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<mkdir dir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<!-- compile the source code -->
-		<javac destdir="${temp.folder}/lib/antsupportlib.jar.bin" failonerror="false" verbose="false" debug="on" includeAntRuntime="no" bootclasspath="${bootclasspath}" classpath="${basedir}/../org.eclipse.core.runtime/runtime.jar;${basedir}/../org.apache.ant/ant.jar;${basedir}/../org.apache.xerces/xercesImpl.jar;${basedir}/../org.apache.xerces/xmlParserAPIs.jar;${basedir}/bin;${basedir}/../org.eclipse.core.boot/boot.jar;">
-			<src path="src_ant/"/>
-		</javac>
-		<!-- copy necessary resources -->
-		<copy todir="${temp.folder}/lib/antsupportlib.jar.bin">
-			<fileset dir="src_ant/" excludes="**/*.java"/>
-		</copy>
-		<mkdir dir="${destBin}/lib"/>
-		<jar jarfile="${destBin}/lib/antsupportlib.jar" basedir="${temp.folder}/lib/antsupportlib.jar.bin"/>
-		<delete dir="${temp.folder}"/>
-		
-	</target>
-	
-	<target name="copy" depends="init">
-		<copy todir="${currentBuildPlugins}">
-			<fileset dir="${destBin}"/>
-		</copy>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePlugin.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePlugin.java
deleted file mode 100644
index 340c5d7..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePlugin.java
+++ /dev/null
@@ -1,212 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.URL;
-import java.util.Arrays;
-import java.util.List;
-
-import org.eclipse.ant.internal.core.AntClassLoader;
-import org.eclipse.ant.internal.core.IAntCoreConstants;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.Preferences.PropertyChangeEvent;
-
-/**
- * The plug-in runtime class for the Ant Core plug-in.
- */
-public class AntCorePlugin extends Plugin implements Preferences.IPropertyChangeListener {
-
-	/**
-	 * Status code indicating an unexpected internal error.
-	 * @since 2.1
-	 */
-	public static final int INTERNAL_ERROR = 120;		
-	
-	/**
-	 * The single instance of this plug-in runtime class.
-	 */
-	private static AntCorePlugin plugin;
-
-	/**
-	 * The preferences class for this plugin.
	 */
-	private AntCorePreferences preferences;
-	
-	/**
-	 * The cached class loader to use when executing Ant scripts
	 */
-	private ClassLoader classLoader;
-
-	/**
-	 * Unique identifier constant (value <code>"org.eclipse.ant.core"</code>)
-	 * for the Ant Core plug-in.
-	 */
-	public static final String PI_ANTCORE = "org.eclipse.ant.core"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"antTasks"</code>)
-	 * for the Ant tasks extension point.
-	 */
-	public static final String PT_TASKS = "antTasks"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"extraClasspathEntries"</code>)
-	 * for the extra classpath entries extension point.
-	 */
-	public static final String PT_EXTRA_CLASSPATH = "extraClasspathEntries"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"antTypes"</code>)
-	 * for the Ant types extension point.
-	 */
-	public static final String PT_TYPES = "antTypes"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"class"</code>)
-	 * of a tag that appears in Ant extensions.
-	 */
-	public static final String CLASS = "class"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"name"</code>)
-	 * of a tag that appears in Ant extensions.
-	 */
-	public static final String NAME = "name"; //$NON-NLS-1$
-
-	/**
-	 * Simple identifier constant (value <code>"library"</code>)
-	 * of a tag that appears in Ant extensions.
-	 */
-	public static final String LIBRARY = "library"; //$NON-NLS-1$
-
-	/**
-	 * Key to access the <code>IProgressMonitor</code> reference. When a
-	 * progress monitor is passed to the <code>AntRunner.run(IProgressMonitor)</code>
-	 * method, the object is available as a reference for the current
-	 * Ant project.
-	 */
-	public static final String ECLIPSE_PROGRESS_MONITOR = "eclipse.progress.monitor"; //$NON-NLS-1$
-	
-	/**
-	 * Status code indicating an error occurred running a script.
-	 * @since 2.1
	 */
-	public static final int ERROR_RUNNING_SCRIPT = 1;
-	
-	/**
-	 * Status code indicating an error occurred due to a malformed URL.
-	 * @since 2.1
-	 */
-	public static final int ERROR_MALFORMED_URL = 2;
-	
-	/**
-	 * Status code indicating an error occurred as a library was not specified
-	 * @since 2.1
-	 */
-	public static final int ERROR_LIBRARY_NOT_SPECIFIED = 3;
-
-	/** 
-	 * Constructs an instance of this plug-in runtime class.
-	 * <p>
-	 * An instance of this plug-in runtime class is automatically created 
-	 * when the facilities provided by the Ant Core plug-in are required.
-	 * <b>Clients must never explicitly instantiate a plug-in runtime class.</b>
-	 * </p>
-	 * 
-	 * @param pluginDescriptor the plug-in descriptor for the
-	 *   Ant Core plug-in
-	 */
-	public AntCorePlugin(IPluginDescriptor descriptor) {
-		super(descriptor);
-		plugin = this;
-	}
-
-	/**
-	 * @see Plugin#startup()
-	 */
-	public void startup() throws CoreException {
-	}
-
-	/**
-	 * @see Plugin#shutdown()
-	 */
-	public void shutdown() throws CoreException {
-		getPluginPreferences().removePropertyChangeListener(this);
-		if (preferences == null) {
-			return;
-		}
-		preferences.updatePluginPreferences();
-		savePluginPreferences();
-		
-	}
-
-	/**
-	 * Given an extension point name, extract its extensions and return them
-	 * as a List.
-	 */
-	private List extractExtensions(String point, String key) {
-		IExtensionPoint extensionPoint = getDescriptor().getExtensionPoint(point);
-		if (extensionPoint == null) {
-			return null;
-		}
-		IConfigurationElement[] extensions = extensionPoint.getConfigurationElements();
-		return Arrays.asList(extensions);
-	}
-
-	/**
-	 * Returns an object representing this plug-in's preferences.
-	 * 
-	 * @return the Ant core object representing the preferences for this plug-in.
-	 */
-	public AntCorePreferences getPreferences() {
-		if (preferences == null) {
-			preferences = new AntCorePreferences(extractExtensions(PT_TASKS, NAME), extractExtensions(PT_EXTRA_CLASSPATH, LIBRARY), extractExtensions(PT_TYPES, NAME));
-		}
-		return preferences;
-	}
-
-	/**
-	 * Returns this plug-in instance.
-	 *
-	 * @return the single instance of this plug-in runtime class
-	 */
-	public static AntCorePlugin getPlugin() {
-		return plugin;
-	}
-	
-	/**
-	 * Returns the cached class loader to use when executing Ant scripts.
-	 * 
	 * @return the cached class loader
	 */
-	protected ClassLoader getClassLoader() {
-		if (classLoader == null) {
-			AntCorePreferences preferences = getPreferences();
-			URL[] urls = preferences.getURLs();
-			ClassLoader[] pluginLoaders = preferences.getPluginClassLoaders();
-			classLoader= new AntClassLoader(urls, pluginLoaders, null);
-			getPluginPreferences().addPropertyChangeListener(this);
-		}
-		return classLoader;
-	}
-	
-	/**
-	 * @see org.eclipse.core.runtime.Preferences.IPropertyChangeListener#propertyChange(org.eclipse.core.runtime.Preferences.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		if (event.getProperty().equals(IAntCoreConstants.PREFERENCE_URLS)) {
-			classLoader= null;
-		}
-	}
-	
-	/**
-	 * Logs the specified throwable with this plug-in's log.
-	 * 
-	 * @param t throwable to log 
-	 * @since 2.1
-	 */
-	public static void log(Throwable t) {
-		IStatus status= new Status(IStatus.ERROR, PI_ANTCORE, INTERNAL_ERROR, "Error logged from Ant Core: ", t); //$NON-NLS-1$
-		getPlugin().getLog().log(status);
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePreferences.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePreferences.java
deleted file mode 100644
index 8490c36..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntCorePreferences.java
+++ /dev/null
@@ -1,612 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.text.MessageFormat;
-import java.util.*;
-
-import org.eclipse.ant.internal.core.IAntCoreConstants;
-import org.eclipse.ant.internal.core.InternalCoreAntMessages;
-import org.eclipse.core.runtime.*;
-
-
-/**
- * Represents the Ant Core plug-in's preferences providing utilities for
- * extracting, changing and updating the underlying preferences.
- */
-public class AntCorePreferences {
-
-	protected List defaultTasks;
-	protected List defaultTypes;
-	protected List defaultURLs;
-	protected URL[] defaultAntURLs;
-	
-	protected Task[] customTasks;
-	protected Type[] customTypes;
-	protected URL[] antURLs;
-	protected URL[] customURLs;
-	protected Property[] customProperties;
-	protected String[] customPropertyFiles;
-	
-	protected List pluginClassLoaders;
-	
-	private String antHome;
-
-	protected AntCorePreferences(List defaultTasks, List defaultExtraClasspath, List defaultTypes) {
-		initializePluginClassLoaders();
-		defaultURLs = new ArrayList(20);
-		this.defaultTasks = computeDefaultTasks(defaultTasks);
-		this.defaultTypes = computeDefaultTypes(defaultTypes);
-		computeDefaultExtraClasspathEntries(defaultExtraClasspath);
-		restoreCustomObjects();
-	}
-
-	protected void restoreCustomObjects() {
-		Preferences prefs = AntCorePlugin.getPlugin().getPluginPreferences();
-		// tasks
-		String tasks = prefs.getString(IAntCoreConstants.PREFERENCE_TASKS);
-		if (tasks.equals("")) { //$NON-NLS-1$
-			customTasks = new Task[0];
-		} else {
-			customTasks = extractTasks(prefs, getArrayFromString(tasks));
-		}
-		// types
-		String types = prefs.getString(IAntCoreConstants.PREFERENCE_TYPES);
-		if (types.equals("")) {//$NON-NLS-1$
-			customTypes = new Type[0];
-		} else {
-			customTypes = extractTypes(prefs, getArrayFromString(types));
-		}
-		// urls
-		String urls = prefs.getString(IAntCoreConstants.PREFERENCE_ANT_URLS);
-		if (urls.equals("")) {//$NON-NLS-1$
-			antURLs = getDefaultAntURLs();
-		} else {
-			antURLs = extractURLs(getArrayFromString(urls));
-		}
-		urls = prefs.getString(IAntCoreConstants.PREFERENCE_URLS);
-		if (urls.equals("")) {//$NON-NLS-1$
-			customURLs = new URL[0];
-		} else {
-			customURLs = extractURLs(getArrayFromString(urls));
-		}
-		
-		antHome= prefs.getString(IAntCoreConstants.PREFERENCE_ANT_HOME);
-		
-		// properties
-		String properties = prefs.getString(IAntCoreConstants.PREFERENCE_PROPERTIES);
-		if (properties.equals("")) {//$NON-NLS-1$
-			customProperties = new Property[0];
-		} else {
-			customProperties = extractProperties(prefs, getArrayFromString(properties));
-		}
-		
-		String propertyFiles= prefs.getString(IAntCoreConstants.PREFERENCE_PROPERTY_FILES);
-		if (propertyFiles.equals("")) { //$NON-NLS-1$
-			customPropertyFiles= new String[0];
-		} else {
-			customPropertyFiles= getArrayFromString(propertyFiles);
-		}
-	}
-
-	protected Task[] extractTasks(Preferences prefs, String[] tasks) {
-		List result = new ArrayList(tasks.length);
-		for (int i = 0; i < tasks.length; i++) {
-			try {
-				String taskName = tasks[i];
-				String[] values = getArrayFromString(prefs.getString(IAntCoreConstants.PREFIX_TASK + taskName));
-				Task task = new Task();
-				task.setTaskName(taskName);
-				task.setClassName(values[0]);
-				task.setLibrary(new URL(values[1]));
-				result.add(task);
-			} catch (MalformedURLException e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-			}
-		}
-		return (Task[]) result.toArray(new Task[result.size()]);
-	}
-
-	protected Type[] extractTypes(Preferences prefs, String[] types) {
-		List result = new ArrayList(types.length);
-		for (int i = 0; i < types.length; i++) {
-			try {
-				String typeName = types[i];
-				String[] values = getArrayFromString(prefs.getString(IAntCoreConstants.PREFIX_TYPE + typeName));
-				Type type = new Type();
-				type.setTypeName(typeName);
-				type.setClassName(values[0]);
-				type.setLibrary(new URL(values[1]));
-				result.add(type);
-			} catch (MalformedURLException e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e);  //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-			}
-		}
-		return (Type[]) result.toArray(new Type[result.size()]);
-	}
-	
-	protected Property[] extractProperties(Preferences prefs, String[] properties) {
-		Property[] result = new Property[properties.length];
-		for (int i = 0; i < properties.length; i++) {
-			String propertyName = properties[i];
-			String[] values = getArrayFromString(prefs.getString(IAntCoreConstants.PREFIX_PROPERTY + propertyName));
-			Property property = new Property();
-			property.setName(propertyName);
-			property.setValue(values[0]);
-			result[i]= property;
-		}
-		return result;
-	}
-
-	protected URL[] extractURLs(String[] urls) {
-		List result = new ArrayList(urls.length);
-		for (int i = 0; i < urls.length; i++) {
-			try {
-				result.add(new URL(urls[i]));
-			} catch (MalformedURLException e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e);  //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-			}
-		}
-		return (URL[]) result.toArray(new URL[result.size()]);
-	}
-
-	/**
-	 * Returns the array of URLs that is the default set of URLs defining
-	 * the Ant classpath.
-	 * 
-	 * Ant running through the command line tries to find tools.jar to help the
-	 * user. Try emulating the same behaviour here.
-	 *
	 * @return the default set of URLs defining the Ant classpath
	 */
-	public URL[] getDefaultAntURLs() {
-		if (defaultAntURLs == null) {
-			List result = new ArrayList(10);
-			IPluginDescriptor descriptor = Platform.getPlugin("org.apache.ant").getDescriptor(); //$NON-NLS-1$
-			addLibraries(descriptor, result);
-			descriptor = Platform.getPlugin("org.apache.xerces").getDescriptor(); //$NON-NLS-1$
-			addLibraries(descriptor, result);
-			URL toolsURL= getToolsJarURL();
-			if (toolsURL != null) {
-				result.add(toolsURL);
-			}
-			defaultAntURLs= (URL[]) result.toArray(new URL[result.size()]);
-		}
-		return defaultAntURLs;
-	}
-	
-	/**
-	 * Returns the array of URLs that is the set of URLs defining the Ant
-	 * classpath.
-	 * 
-	 * @return the set of URLs defining the Ant classpath
-	 */
-	public URL[] getAntURLs() {
-		return antURLs;
-	}
-
-	protected List computeDefaultTasks(List tasks) {
-		List result = new ArrayList(tasks.size());
-		for (Iterator iterator = tasks.iterator(); iterator.hasNext();) {
-			IConfigurationElement element = (IConfigurationElement) iterator.next();
-			Task task = new Task();
-			task.setTaskName(element.getAttribute(AntCorePlugin.NAME));
-			task.setClassName(element.getAttribute(AntCorePlugin.CLASS));
-			String library = element.getAttribute(AntCorePlugin.LIBRARY);
-			if (library == null) {
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_LIBRARY_NOT_SPECIFIED, MessageFormat.format(InternalCoreAntMessages.getString("AntCorePreferences.Library_not_specified_for__{0}_4"), new String[]{task.getTaskName()}), null); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-			IPluginDescriptor descriptor = element.getDeclaringExtension().getDeclaringPluginDescriptor();
-			try {
-				URL url = Platform.asLocalURL(new URL(descriptor.getInstallURL(), library));
-				task.setLibrary(url);
-				if (!defaultURLs.contains(url)) {
-					defaultURLs.add(url);
-				}
-			} catch (Exception e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-			result.add(task);
-			addPluginClassLoader(descriptor.getPluginClassLoader());
-		}
-		return result;
-	}
-
-	protected List computeDefaultTypes(List types) {
-		List result = new ArrayList(types.size());
-		for (Iterator iterator = types.iterator(); iterator.hasNext();) {
-			IConfigurationElement element = (IConfigurationElement) iterator.next();
-			Type type = new Type();
-			type.setTypeName(element.getAttribute(AntCorePlugin.NAME));
-			type.setClassName(element.getAttribute(AntCorePlugin.CLASS));
-			String library = element.getAttribute(AntCorePlugin.LIBRARY);
-			if (library == null) {
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_LIBRARY_NOT_SPECIFIED, MessageFormat.format(InternalCoreAntMessages.getString("AntCorePreferences.Library_not_specified_for__{0}_4"), new String[]{type.getTypeName()}), null); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-			IPluginDescriptor descriptor = element.getDeclaringExtension().getDeclaringPluginDescriptor();
-			try {
-				URL url = Platform.asLocalURL(new URL(descriptor.getInstallURL(), library));
-				type.setLibrary(url);
-				if (!defaultURLs.contains(url)) {
-					defaultURLs.add(url);
-				}
-			} catch (Exception e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-			result.add(type);
-			addPluginClassLoader(descriptor.getPluginClassLoader());
-		}
-		return result;
-	}
-
-	/**
-	 * Computes the extra classpath entries defined plugins and fragments.
-	 */
-	protected void computeDefaultExtraClasspathEntries(List entries) {
-		for (Iterator iterator = entries.iterator(); iterator.hasNext();) {
-			IConfigurationElement element = (IConfigurationElement) iterator.next();
-			String library = (String) element.getAttribute(AntCorePlugin.LIBRARY);
-			IPluginDescriptor descriptor = element.getDeclaringExtension().getDeclaringPluginDescriptor();
-			try {
-				URL url = Platform.asLocalURL(new URL(descriptor.getInstallURL(), library));
-				if (!defaultURLs.contains(url)) {
-					defaultURLs.add(url);
-				}
-			} catch (Exception e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e); //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-			addPluginClassLoader(descriptor.getPluginClassLoader());
-		}
-	}
-
-	public URL getToolsJarURL() {
-		IPath path = new Path(System.getProperty("java.home")); //$NON-NLS-1$
-		if (path.lastSegment().equalsIgnoreCase("jre")) { //$NON-NLS-1$
-			path = path.removeLastSegments(1);
-		}
-		path = path.append("lib").append("tools.jar"); //$NON-NLS-1$ //$NON-NLS-2$
-		File tools = path.toFile();
-		if (!tools.exists()) {
-			//attempt to find in the older 1.1.* 
-			path= path.removeLastSegments(1);
-			path= path.append("classes.zip"); //$NON-NLS-1$
-			tools = path.toFile();
-			if (!tools.exists()) {
-				return null;
-			}
-		}
-		try {
-			return new URL("file:" + tools.getAbsolutePath()); //$NON-NLS-1$
-		} catch (MalformedURLException e) {
-			// if the URL does not have a valid format, just log and ignore the exception
-			IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e);  //$NON-NLS-1$
-			AntCorePlugin.getPlugin().getLog().log(status);
-		}
-		return null;
-	}
-
-	protected void addLibraries(IPluginDescriptor source, List destination) {
-		URL root = source.getInstallURL();
-		ILibrary[] libraries = source.getRuntimeLibraries();
-		for (int i = 0; i < libraries.length; i++) {
-			try {
-				URL url = new URL(root, libraries[i].getPath().toString());
-				destination.add(Platform.asLocalURL(url));
-			} catch (Exception e) {
-				// if the URL does not have a valid format, just log and ignore the exception
-				IStatus status = new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_MALFORMED_URL, InternalCoreAntMessages.getString("AntCorePreferences.Malformed_URL._1"), e);  //$NON-NLS-1$
-				AntCorePlugin.getPlugin().getLog().log(status);
-				continue;
-			}
-		}
-	}
-
-	protected void addPluginClassLoader(ClassLoader loader) {
-		if (!pluginClassLoaders.contains(loader)) {
-			pluginClassLoaders.add(loader);
-		}
-	}
-
-	public URL[] getURLs() {
-		List result = new ArrayList(10);
-		if (defaultURLs != null) {
-			result.addAll(defaultURLs);
-		}
-		if (antURLs != null) {
-			result.addAll(Arrays.asList(antURLs));
-		}
-		if (customURLs != null) {
-			result.addAll(Arrays.asList(customURLs));
-		}
-		return (URL[]) result.toArray(new URL[result.size()]);
-	}
-
-	protected ClassLoader[] getPluginClassLoaders() {
-		return (ClassLoader[]) pluginClassLoaders.toArray(new ClassLoader[pluginClassLoaders.size()]);
-	}
-
-	protected void initializePluginClassLoaders() {
-		pluginClassLoaders = new ArrayList(10);
-		// ant.core should always be present
-		pluginClassLoaders.add(Platform.getPlugin(AntCorePlugin.PI_ANTCORE).getDescriptor().getPluginClassLoader());
-	}
-
-	/**
-	 * Returns the default and custom tasks.
-	 * 
-	 * @return the list of default and custom tasks.
-	 */
-	public List getTasks() {
-		List result = new ArrayList(10);
-		if (defaultTasks != null) {
-			result.addAll(defaultTasks);
-		}
-		if (customTasks != null) {
-			result.addAll(Arrays.asList(customTasks));
-		}
-		return result;
-	}
-
-	public Task[] getCustomTasks() {
-		return customTasks;
-	}
-
-	public Type[] getCustomTypes() {
-		return customTypes;
-	}
-
-	/**
-	 * Returns the custom user properties specified for Ant builds.
-	 * 
-	 * @return the properties defined for Ant builds.
-	 * @since 2.1
-	 */
-	public Property[] getCustomProperties() {
-		return customProperties;
-	}
-	
-	/**
-	 * Returns the custom property files specified for Ant builds.
-	 * 
-	 * @return the property files defined for Ant builds.
-	 * @since 2.1
-	 */
-	public String[] getCustomPropertyFiles() {
-		return customPropertyFiles;
-	}
-	
-	/**
-	 * Returns the custom URLs specified for the Ant classpath
-	 * 
-	 * @return the urls defining the Ant classpath
-	 */
-	public URL[] getCustomURLs() {
-		return customURLs;
-	}
-
-	public void setCustomTasks(Task[] tasks) {
-		customTasks = tasks;
-	}
-
-	public void setCustomTypes(Type[] types) {
-		customTypes = types;
-	}
-
-	/**
-	 * Sets the custom URLs specified for the Ant classpath.
-	 * To commit the changes, updatePluginPreferences must be
-	 * called.
-	 * 
-	 * @param the urls defining the Ant classpath
-	 */
-	public void setCustomURLs(URL[] urls) {
-		customURLs = urls;
-	}
-	
-	/**
-	 * Sets the Ant URLs specified for the Ant classpath. To commit the changes,
-	 * updatePluginPreferences must be called.
-	 * 
-	 * @param the urls defining the Ant classpath
-	 */
-	public void setAntURLs(URL[] urls) {
-		antURLs = urls;
-	}
-	
-	/**
-	 * Sets the custom property files specified for Ant builds. To commit the
-	 * changes, updatePluginPreferences must be called.
-	 * 
-	 * @param the absolute paths defining the property files to use.
-	 * @since 2.1
-	 */
-	public void setCustomPropertyFiles(String[] paths) {
-		customPropertyFiles = paths;
-	}
-	
-	/**
-	 * Sets the custom user properties specified for Ant builds. To commit the
-	 * changes, updatePluginPreferences must be called.
-	 * 
-	 * @param the properties defining the Ant properties
-	 * @since 2.1
-	 */
-	public void setCustomProperties(Property[] properties) {
-		customProperties = properties;
-	}
-
-	/**
-	 * Returns the default and custom types.
-	 * 
-	 * @return all of the defined types
-	 */
-	public List getTypes() {
-		List result = new ArrayList(10);
-		if (defaultTypes != null) {
-			result.addAll(defaultTypes);
-		}
-		if (customTypes != null) {
-			result.addAll(Arrays.asList(customTypes));
-		}
-		return result;
-	}
-
-	/**
-	 * Convert a list of tokens into an array using "," as the tokenizer.
-	 */
-	protected String[] getArrayFromString(String list) {
-		String separator= ","; //$NON-NLS-1$
-		if (list == null || list.trim().equals("")) { //$NON-NLS-1$
-			return new String[0];
-		}
-		ArrayList result = new ArrayList();
-		for (StringTokenizer tokens = new StringTokenizer(list, separator); tokens.hasMoreTokens();) {
-			String token = tokens.nextToken().trim();
-			if (!token.equals("")) { //$NON-NLS-1$
-				result.add(token);
-			}
-		}
-		return (String[]) result.toArray(new String[result.size()]);
-	}
-
-	/**
-	 * Updates the underlying plugin preferences to the current state.
	 */
-	public void updatePluginPreferences() {
-		Preferences prefs = AntCorePlugin.getPlugin().getPluginPreferences();
-		updateTasks(prefs);
-		updateTypes(prefs);
-		updateAntURLs(prefs);
-		updateURLs(prefs);
-		updateProperties(prefs);
-		updatePropertyFiles(prefs);
-		AntCorePlugin.getPlugin().savePluginPreferences();
-	}
-
-	protected void updateTasks(Preferences prefs) {
-		if (customTasks.length == 0) {
-			prefs.setValue(IAntCoreConstants.PREFERENCE_TASKS, ""); //$NON-NLS-1$
-			return;
-		}
-		StringBuffer tasks = new StringBuffer();
-		for (int i = 0; i < customTasks.length; i++) {
-			tasks.append(customTasks[i].getTaskName());
-			tasks.append(',');
-			prefs.setValue(IAntCoreConstants.PREFIX_TASK + customTasks[i].getTaskName(), customTasks[i].getClassName() + "," + customTasks[i].getLibrary().toExternalForm()); //$NON-NLS-1$
-		}
-		prefs.setValue(IAntCoreConstants.PREFERENCE_TASKS, tasks.toString());
-	}
-
-	protected void updateTypes(Preferences prefs) {
-		if (customTypes.length == 0) {
-			prefs.setValue(IAntCoreConstants.PREFERENCE_TYPES, ""); //$NON-NLS-1$
-			return;
-		}
-		StringBuffer types = new StringBuffer();
-		for (int i = 0; i < customTypes.length; i++) {
-			types.append(customTypes[i].getTypeName());
-			types.append(',');
-			prefs.setValue(IAntCoreConstants.PREFIX_TYPE + customTypes[i].getTypeName(), customTypes[i].getClassName() + "," + customTypes[i].getLibrary().toExternalForm()); //$NON-NLS-1$
-		}
-		prefs.setValue(IAntCoreConstants.PREFERENCE_TYPES, types.toString());
-	}
-	
-	protected void updateProperties(Preferences prefs) {
-		if (customProperties.length == 0) {
-			prefs.setValue(IAntCoreConstants.PREFERENCE_PROPERTIES, ""); //$NON-NLS-1$
-			return;
-		}
-		StringBuffer properties = new StringBuffer();
-		for (int i = 0; i < customProperties.length; i++) {
-			properties.append(customProperties[i].getName());
-			properties.append(',');
-			prefs.setValue(IAntCoreConstants.PREFIX_PROPERTY + customProperties[i].getName(), customProperties[i].getValue()); //$NON-NLS-1$
-		}
-		prefs.setValue(IAntCoreConstants.PREFERENCE_PROPERTIES, properties.toString());
-	}
-
-	protected void updateURLs(Preferences prefs) {
-		StringBuffer urls = new StringBuffer();
-		for (int i = 0; i < customURLs.length; i++) {
-			urls.append(customURLs[i].toExternalForm());
-			urls.append(',');
-		}
-		
-		prefs.setValue(IAntCoreConstants.PREFERENCE_URLS, urls.toString());
-		String prefAntHome= ""; //$NON-NLS-1$
-		if (antHome != null) {
-			prefAntHome= antHome;
-		} 
-		prefs.setValue(IAntCoreConstants.PREFERENCE_ANT_HOME, prefAntHome);
-	}
-	
-	protected void updateAntURLs(Preferences prefs) {
-		//see if the custom URLS are just the default URLS
-		URL[] dcUrls= getDefaultAntURLs();
-		boolean dflt= false;
-		if (dcUrls.length == antURLs.length) {
-			dflt= true;
-			for (int i = 0; i < antURLs.length; i++) {
-				if (!antURLs[i].equals(dcUrls[i])) {
-					dflt= false;
-					break;
-				}
-			}
-		}
-		if (dflt) {
-			//always want to recalculate the default Ant urls
-			//to pick up any changes in the default Ant classpath
-			prefs.setValue(IAntCoreConstants.PREFERENCE_ANT_URLS, ""); //$NON-NLS-1$
-			return;
-		}
-		StringBuffer urls = new StringBuffer();
-		for (int i = 0; i < antURLs.length; i++) {
-			urls.append(antURLs[i].toExternalForm());
-			urls.append(',');
-		}
-		
-		prefs.setValue(IAntCoreConstants.PREFERENCE_URLS, urls.toString());
-	}
-	
-	protected void updatePropertyFiles(Preferences prefs) {
-		StringBuffer files = new StringBuffer();
-		for (int i = 0; i < customPropertyFiles.length; i++) {
-			files.append(customPropertyFiles[i]);
-			files.append(',');
-		}
-		
-		prefs.setValue(IAntCoreConstants.PREFERENCE_PROPERTY_FILES, files.toString());
-	}
-	
-	public void setAntHome(String antHome) {
-		this.antHome= antHome;
-	}
-	
-	public String getAntHome() {
-		return antHome;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntRunner.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntRunner.java
deleted file mode 100644
index 3faabbf..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntRunner.java
+++ /dev/null
@@ -1,434 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.text.MessageFormat;
-import java.util.*;
-
-import org.eclipse.ant.internal.core.IAntCoreConstants;
-import org.eclipse.ant.internal.core.InternalCoreAntMessages;
-import org.eclipse.core.boot.BootLoader;
-import org.eclipse.core.boot.IPlatformRunnable;
-import org.eclipse.core.runtime.*;
-
-/**
- * Entry point for running Ant scripts inside Eclipse.
- */
-public class AntRunner implements IPlatformRunnable {
-
-	protected String buildFileLocation = IAntCoreConstants.DEFAULT_BUILD_FILENAME;
-	protected List buildListeners;
-	protected String[] targets;
-	protected Map userProperties;
-	protected int messageOutputLevel = 2; // Project.MSG_INFO
-	protected String buildLoggerClassName;
-	protected String inputHandlerClassName;
-	protected String[] arguments;
-	protected String[] propertyFiles;
-
-	/** 
-	 * Constructs an instance of this class.
-	 */
-	public AntRunner() {
-	}
-
-	/**
-	 * Sets the build file location on the file system.
-	 * 
-	 * @param buildFileLocation the file system location of the build file
-	 */
-	public void setBuildFileLocation(String buildFileLocation) {
-		if (buildFileLocation == null) {
-			this.buildFileLocation = IAntCoreConstants.DEFAULT_BUILD_FILENAME;
-		} else {
-			this.buildFileLocation = buildFileLocation;
-		}
-	}
-
-	/**
-	 * Set the message output level.
-	 * <p>
-	 * Valid values are:
-	 * <ul>
-	 * <li><code>org.apache.tools.ant.Project.ERR</code>, 
-	 * <li><code>org.apache.tools.ant.Project.WARN</code>,
-	 * <li><code>org.apache.tools.ant.Project.INFO</code>,
-	 * <li><code>org.apache.tools.ant.Project.VERBOSE</code> or
-	 * <li><code>org.apache.tools.ant.Project.DEBUG</code>
-	 * </ul>
-	 * 
-	 * @param level the message output level
-	 */
-	public void setMessageOutputLevel(int level) {
-		messageOutputLevel = level;
-	}
-
-	/**
-	 * Sets the arguments to be passed to the script (e.g. -Dos=win32 -Dws=win32 -verbose).
-	 * 
-	 * @param arguments the arguments to be passed to the script
-	 */
-	public void setArguments(String arguments) {
-		this.arguments = getArray(arguments);
-	}
-
-	/**
-	 * Helper method to ensure an array is converted into an ArrayList.
-	 */
-	private String[] getArray(String args) {
-		StringBuffer sb = new StringBuffer();
-		boolean waitingForQuote = false;
-		ArrayList result = new ArrayList();
-		for (StringTokenizer tokens = new StringTokenizer(args, ", \"", true); tokens.hasMoreTokens();) { //$NON-NLS-1$
-			String token = tokens.nextToken();
-			if (waitingForQuote) {
-				if (token.equals("\"")) { //$NON-NLS-1$
-					result.add(sb.toString());
-					sb.setLength(0);
-					waitingForQuote = false;
-				} else {
-					sb.append(token);
-				}
-			} else {
-				if (token.equals("\"")) { //$NON-NLS-1$
-					// test if we have something like -Dproperty="value"
-					if (result.size() > 0) {
-						int index = result.size() - 1;
-						String last = (String) result.get(index);
-						if (last.charAt(last.length() - 1) == '=') {
-							result.remove(index);
-							sb.append(last);
-						}
-					}
-					waitingForQuote = true;
-				} else {
-					if (!(token.equals(",") || token.equals(" "))) //$NON-NLS-1$ //$NON-NLS-2$
-						result.add(token);
-				}
-			}
-		}
-		return (String[]) result.toArray(new String[result.size()]);
-	}
-
-	/**
-	 * Sets the arguments to be passed to the script (e.g. -Dos=win32 -Dws=win32 -verbose).
-	 * 
-	 * @param arguments the arguments to be passed to the script
-	 * @since 2.1
-	 */
-	public void setArguments(String[] arguments) {
-		this.arguments = arguments;
-	}
-
-	/**
-	 * Sets the targets and execution order.
-	 * 
-	 * @param executionTargets which targets should be run and in which order
-	 */
-	public void setExecutionTargets(String[] executionTargets) {
-		this.targets = executionTargets;
-	}
-
-	/**
-	 * Adds a build listener. The parameter <code>className</code>
-	 * is the class name of a <code>org.apache.tools.ant.BuildListener</code>
-	 * implementation. The class will be instantiated at runtime and the
-	 * listener will be called on build events
-	 * (<code>org.apache.tools.ant.BuildEvent</code>).
-	 *
-	 * @param className a build listener class name
-	 */
-	public void addBuildListener(String className) {
-		if (className == null) {
-			return;
-		}
-		if (buildListeners == null) {
-			buildListeners = new ArrayList(5);
-		}
-		buildListeners.add(className);
-	}
-
-	/**
-	 * Sets the build logger. The parameter <code>className</code>
-	 * is the class name of a <code>org.apache.tools.ant.BuildLogger</code>
-	 * implementation. The class will be instantiated at runtime and the
-	 * logger will be called on build events
-	 * (<code>org.apache.tools.ant.BuildEvent</code>).  
-	 * Only one build logger is permitted for any build.
-	 * 
-	 *
-	 * @param className a build logger class name
-	 */
-	public void addBuildLogger(String className) {
-		buildLoggerClassName = className;
-	}
-
-	/**
-	 * Adds user-defined properties. Keys and values must be String objects.
-	 * 
-	 * @param properties a Map of user-defined properties
-	 */
-	public void addUserProperties(Map properties) {
-		userProperties = properties;
-	}
-
-	/**
-	 * Returns the build file target information.
-	 * 
-	 * @return an array containing the target information
-	 * 
-	 * @see TargetInfo
-	 * @since 2.1
-	 */
-	public TargetInfo[] getAvailableTargets() throws CoreException {
-		Class classInternalAntRunner= null;
-		Object runner= null;
-		try {
-			ClassLoader loader = AntCorePlugin.getPlugin().getClassLoader();
-			classInternalAntRunner = loader.loadClass("org.eclipse.ant.internal.core.ant.InternalAntRunner"); //$NON-NLS-1$
-			runner = classInternalAntRunner.newInstance();
-			// set build file
-			Method setBuildFileLocation = classInternalAntRunner.getMethod("setBuildFileLocation", new Class[] { String.class }); //$NON-NLS-1$
-			setBuildFileLocation.invoke(runner, new Object[] { buildFileLocation });
-			// get the info for each targets
-			Method getTargets = classInternalAntRunner.getMethod("getTargets", null); //$NON-NLS-1$
-			Object results = getTargets.invoke(runner, null);
-			// get the default target
-			Method getDefault= classInternalAntRunner.getMethod("getDefaultTarget", null); //$NON-NLS-1$
-			String defaultName= (String)getDefault.invoke(runner, null);
-			// collect the info into target objects
-			List infos = (List) results;
-			Iterator iter= infos.iterator();
-			List info;
-			TargetInfo[] targets= new TargetInfo[infos.size()];
-			int i= 0;
-			while (iter.hasNext()) {
-				info= (List)iter.next();
-				targets[i++] = new TargetInfo((String)info.get(0), (String)info.get(1), (String)info.get(2), (String[])info.get(3), info.get(0).equals(defaultName));
-			}
-			return targets;
-		} catch (NoClassDefFoundError e) {
-			problemLoadingClass(e);
-			//not possible to reach this line
-			return new TargetInfo[0];
-		} catch (ClassNotFoundException e) {
-			problemLoadingClass(e);
-			//not possible to reach this line
-			return new TargetInfo[0];
-		} catch (InvocationTargetException e) {
-			handleInvocationTargetException(runner, classInternalAntRunner, e);
-			//not possible to reach this line
-			return new TargetInfo[0];
-		} catch (Exception e) {
-			String message = (e.getMessage() == null) ? InternalCoreAntMessages.getString("AntRunner.Build_Failed._3") : e.getMessage(); //$NON-NLS-1$
-			throw new CoreException(new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_RUNNING_SCRIPT, message, e));
-		}
-	}
-
-	/**
-	 * Runs the build script. If a progress monitor is specified it will
-	 * be available during the script execution as a reference in the
-	 * Ant Project (<code>org.apache.tools.ant.Project.getReferences()</code>).
-	 * A long-running task could, for example, get the monitor during its
-	 * execution and check for cancellation. The key value to retrieve the
-	 * progress monitor instance is <code>AntCorePlugin.ECLIPSE_PROGRESS_MONITOR</code>.
-	 * 
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void run(IProgressMonitor monitor) throws CoreException {
-		long startTime = 0;
-		if (IAntCoreConstants.DEBUG_BUILDFILE_TIMING) {
-			startTime = System.currentTimeMillis();
-		}
-		Object runner= null;
-		Class classInternalAntRunner= null;
-		try {
-			ClassLoader loader = AntCorePlugin.getPlugin().getClassLoader();
-			classInternalAntRunner = loader.loadClass("org.eclipse.ant.internal.core.ant.InternalAntRunner"); //$NON-NLS-1$
-			runner = classInternalAntRunner.newInstance();
-			// set build file
-			Method setBuildFileLocation = classInternalAntRunner.getMethod("setBuildFileLocation", new Class[] { String.class }); //$NON-NLS-1$
-			setBuildFileLocation.invoke(runner, new Object[] { buildFileLocation });
-			// add listeners
-			if (buildListeners != null) {
-				Method addBuildListeners = classInternalAntRunner.getMethod("addBuildListeners", new Class[] { List.class }); //$NON-NLS-1$
-				addBuildListeners.invoke(runner, new Object[] { buildListeners });
-			}
-			
-			if (buildLoggerClassName == null) {
-				//indicate that the default logger is not to be used
-				buildLoggerClassName= ""; //$NON-NLS-1$
-			}
-			// add build logger
-			Method addBuildLogger = classInternalAntRunner.getMethod("addBuildLogger", new Class[] { String.class }); //$NON-NLS-1$
-			addBuildLogger.invoke(runner, new Object[] { buildLoggerClassName });
-			
-			if (inputHandlerClassName != null) {	
-				// add the input handler
-				Method setInputHandler = classInternalAntRunner.getMethod("setInputHandler", new Class[] { String.class }); //$NON-NLS-1$
-				setInputHandler.invoke(runner, new Object[] { inputHandlerClassName });
-			}
-			
-			// add progress monitor
-			if (monitor != null) {
-				Method setProgressMonitor = classInternalAntRunner.getMethod("setProgressMonitor", new Class[] { IProgressMonitor.class }); //$NON-NLS-1$
-				setProgressMonitor.invoke(runner, new Object[] { monitor });
-			}
-			// add properties
-			if (userProperties != null) {
-				Method addUserProperties = classInternalAntRunner.getMethod("addUserProperties", new Class[] { Map.class }); //$NON-NLS-1$
-				addUserProperties.invoke(runner, new Object[] { userProperties });
-			}
-			
-			// add property files
-			if (propertyFiles != null) {
-				Method addPropertyFiles = classInternalAntRunner.getMethod("addPropertyFiles", new Class[] { String[].class }); //$NON-NLS-1$
-				addPropertyFiles.invoke(runner, new Object[] { propertyFiles });
-			}
-			
-			// set message output level
-			Method setMessageOutputLevel = classInternalAntRunner.getMethod("setMessageOutputLevel", new Class[] { int.class }); //$NON-NLS-1$
-			setMessageOutputLevel.invoke(runner, new Object[] { new Integer(messageOutputLevel)});
-			// set execution targets
-			if (targets != null) {
-				Method setExecutionTargets = classInternalAntRunner.getMethod("setExecutionTargets", new Class[] { String[].class }); //$NON-NLS-1$
-				setExecutionTargets.invoke(runner, new Object[] { targets });
-			} 
-			// set extra arguments
-			if (arguments != null && arguments.length > 0) {
-				Method setArguments = classInternalAntRunner.getMethod("setArguments", new Class[] { String[].class }); //$NON-NLS-1$
-				setArguments.invoke(runner, new Object[] { arguments });
-			}
-			// run
-			Method run = classInternalAntRunner.getMethod("run", null); //$NON-NLS-1$
-			run.invoke(runner, null);
-		} catch (NoClassDefFoundError e) {
-			problemLoadingClass(e);
-		} catch (ClassNotFoundException e) {
-			problemLoadingClass(e);
-		} catch (InvocationTargetException e) {
-			handleInvocationTargetException(runner, classInternalAntRunner, e);
-		} catch (Exception e) {
-			String message = (e.getMessage() == null) ? InternalCoreAntMessages.getString("AntRunner.Build_Failed._3") : e.getMessage(); //$NON-NLS-1$
-			IStatus status= new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_RUNNING_SCRIPT, message, e);
-			throw new CoreException(status);
-		} finally {
-			if (IAntCoreConstants.DEBUG_BUILDFILE_TIMING) {
-				long finishTime = System.currentTimeMillis();
-				System.out.println(InternalCoreAntMessages.getString("AntRunner.Buildfile_run_took___9") + (finishTime - startTime) + InternalCoreAntMessages.getString("AntRunner._milliseconds._10")); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-	}
-
-	/**
-	 * Handles exceptions that are loaded by the Ant Class Loader by
-	 * asking the Internal Ant Runner class for the correct error message.
-	 * 
-	 * Handles nested NoClassDefFoundError and nested ClassNotFoundException
	 */
-	protected void handleInvocationTargetException(Object runner, Class classInternalAntRunner, InvocationTargetException e) throws CoreException {
-		Throwable realException = e.getTargetException();
-		String message= null;
-		if (runner != null) {
-			try {
-				Method getBuildErrorMessage = classInternalAntRunner.getMethod("getBuildExceptionErrorMessage", new Class[] { Throwable.class }); //$NON-NLS-1$
-				message= (String)getBuildErrorMessage.invoke(runner, new Object[] { realException });
-			} catch (Exception ex) {
-				//do nothing as already in error state
-			}
-		}
-		// J9 throws NoClassDefFoundError nested in a InvocationTargetException
-		if (message == null && ((realException instanceof NoClassDefFoundError) || (realException instanceof ClassNotFoundException))) {
-			problemLoadingClass(realException);
-			return;
-		}
-		if (message == null) {
-			message = (realException.getMessage() == null) ? InternalCoreAntMessages.getString("AntRunner.Build_Failed._3") : realException.getMessage(); //$NON-NLS-1$
-		}
-		IStatus status= new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_RUNNING_SCRIPT, message, realException);
-		AntCorePlugin.getPlugin().getLog().log(status);
-		throw new CoreException(status);
-	}
-
-	protected void problemLoadingClass(Throwable e) throws CoreException {
-		String missingClassName= e.getMessage();
-		String message;
-		if (missingClassName != null) {
-			missingClassName= missingClassName.replace('/', '.');
-			message= InternalCoreAntMessages.getString("AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._2"); //$NON-NLS-1$
-			message= MessageFormat.format(message, new String[]{missingClassName});
-		} else {
-			message= InternalCoreAntMessages.getString("AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._1"); //$NON-NLS-1$
-		}
-		IStatus status= new Status(IStatus.ERROR, AntCorePlugin.PI_ANTCORE, AntCorePlugin.ERROR_RUNNING_SCRIPT, message, e);
-		AntCorePlugin.getPlugin().getLog().log(status);
-		throw new CoreException(status);
-	}
-
-	/**
-	 * Runs the build script.
-	 */
-	public void run() throws CoreException {
-		run((IProgressMonitor) null);
-	}
-
-	/**
-	 * Invokes the building of a project object and executes a build using either a given
-	 * target or the default target. This method is called when running Eclipse headless
-	 * and specifying <code>org.eclipse.ant.core.antRunner</code> as the application.
-	 *
-	 * @param argArray the command line arguments
-	 * @exception Exception if a problem occurred during the script execution
-	 */
-	public Object run(Object argArray) throws Exception {
-		// Add debug information if necessary - fix for bug 5672.
-		// Since the platform parses the -debug command line arg
-		// and removes it from the args passed to the applications,
-		// we have to check if Eclipse is in debug mode in order to
-		// forward the -debug argument to Ant.
-		if (BootLoader.inDebugMode()) {
-			String[] args = (String[]) argArray;
-			String[] newArgs = new String[args.length + 1];
-			for (int i = 0; i < args.length; i++) {
-				newArgs[i] = args[i];
-			}
-			newArgs[args.length] = "-debug"; //$NON-NLS-1$
-			argArray = newArgs;
-		}
-		ClassLoader loader = AntCorePlugin.getPlugin().getClassLoader();
-		Class classInternalAntRunner = loader.loadClass("org.eclipse.ant.internal.core.ant.InternalAntRunner"); //$NON-NLS-1$
-		Object runner = classInternalAntRunner.newInstance();
-		Method run = classInternalAntRunner.getMethod("run", new Class[] { Object.class }); //$NON-NLS-1$
-		run.invoke(runner, new Object[] { argArray });
-		return null;
-	}
-	
-	/**
-	 * Sets the input handler. The parameter <code>className</code>
-	 * is the class name of a <code>org.apache.tools.ant.input.InputHandler</code>
-	 * implementation. The class will be instantiated at runtime and the
-	 * input handler will be used to respond to <input> requests
-	 * Only one input handler is permitted for any build.
-	 * 
-	 * @param className an input handler class name
-	 */
-	public void setInputHandler(String className) {
-		inputHandlerClassName= className;
-	}
-	
-	/**
-	 * Sets the user specified property files.
-	 * @param array of property file paths
-	 * @since 2.1
-	 */
-	public void setPropertyFiles(String[] propertyFiles) {
-		this.propertyFiles= propertyFiles;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntSecurityException.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntSecurityException.java
deleted file mode 100644
index 1077bf5..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/AntSecurityException.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/**
- * A security exception that is thrown by the AntSecurityManager if
- * an Ant task in some way attempts to halt or exit the Java Virtual Machine.
- * 
- * @since 2.1
 */
-public class AntSecurityException extends SecurityException {
-
-}
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Property.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Property.java
deleted file mode 100644
index ba4e789..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Property.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/**
- * Represents a Ant user property.
- * @since 2.1
- */
-public class Property {
-
-	private String name;
-	private String value;
-
-	public Property(String name, String value) {
-		this.name= name;
-		this.value= value;
-	}
-
-	public Property() {
-	}
-	/**
-	 * Gets the name
-	 * @return Returns a String
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * Sets the name
-	 * @param name The name to set
-	 */
-	public void setName(String name) {
-		this.name= name;
-	}
-	
-	/*
-	 * @see Object#equals()
-	 */	
-	public boolean equals(Object other) {
-		if (other.getClass().equals(getClass())) {
-			Property elem= (Property)other;
-			return name.equals(elem.getName());
-		}
-		return false;
-	}
-	
-	/*
-	 * @see Object#hashCode()
-	 */
-	public int hashCode() {
-		return name.hashCode();
-	}	
-	/**
-	 * Returns the value.
-	 * @return String
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 * Sets the value.
-	 * @param value The value to set
-	 */
-	public void setValue(String value) {
-		this.value = value;
-	}
-	/**
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		StringBuffer buff= new StringBuffer("\""); //$NON-NLS-1$
-		buff.append(getName());
-		buff.append("\"= \""); //$NON-NLS-1$
-		buff.append(getValue());
-		buff.append("\""); //$NON-NLS-1$
-		return buff.toString();
-	}
-}
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/TargetInfo.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/TargetInfo.java
deleted file mode 100644
index 911e6a8..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/TargetInfo.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/**
- * Represents information about a target within an Ant build file.
- * @since 2.1
- */
-public class TargetInfo {
-
-	private String name = null;
-	private String description = null;
-	private String project = null;
-	private String[] dependencies = null;
-	private boolean isDefault = false;
-
-	/**
-	 * Create a target information
-	 * 
-	 * @param name target name
-	 * @param description a brief explanation of the target's purpose
-	 * 		or <code>null</code> if not specified
-	 * @param project enclosing project's name
-	 * @param dependencies names of prerequisite projects 
-	 * @param isDefault whether this is the build file default target
-	 */
-	/*package*/
-	TargetInfo(String name, String description, String project, String[] dependencies, boolean isDefault) {
-		this.name = name == null ? "" : name; //$NON-NLS-1$
-		this.description = description;
-		this.project = project;
-		this.dependencies = dependencies;
-		this.isDefault = isDefault;
-	}
-
-	/**
-	 * Returns the target name.
-	 * 
-	 * @return the target name
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * Returns the target description or <code>null</code> if no
-	 * description is provided.
-	 * 
-	 * @return the target description or <code>null</code> if none
-	 */
-	public String getDescription() {
-		return description;
-	}
-	
-	/**
-	 * Returns the name of the enclosing project.
-	 * 
	 * @return the project name or <code>null</code> if
-	 * 	the enclosing project has no name
	 */
-	public String getProject() {
-		return project;
-	}
-	
-	/**
-	 * Return the names of the targets that this target depends on.
-	 * 
	 * @return the dependent names
	 */
-	public String[] getDependencies() {
-		return dependencies;
-	}
-
-	/**
-	 * Returns whether this is the build file default target.
-	 * 
-	 * @return whether this is the build file default target
-	 */
-	public boolean isDefault() {
-		return isDefault;
-	}
-	/**
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		if (!(obj instanceof TargetInfo)) {
-			return false;
-		}
-		TargetInfo other= (TargetInfo)obj;
-		return getName().equals(other.getName());
-	}
-
-	/**
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return getName().hashCode();
-	}
-
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Task.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Task.java
deleted file mode 100644
index b6b88c0..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Task.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.eclipse.ant.internal.core.AntObject;
-
-/**
- * Represents an Ant task.
- * @since 2.1
- */
-public class Task extends AntObject {
-
-	/**
-	 * Returns the name of the task
-	 * @return the name of the task
-	 */
-	public String getTaskName() {
-		return fName;
-	}
-
-	/**
-	 * Sets the name of the task
-	 * @param taskName The taskName to set
-	 */
-	public void setTaskName(String taskName) {
-		fName= taskName;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Type.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Type.java
deleted file mode 100644
index b101c34..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/Type.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.eclipse.ant.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.eclipse.ant.internal.core.AntObject;
-
-/**
- * Represents an Ant type.
- * @since 2.1
- */
-public class Type extends AntObject {
-
-	/**
-	 * Returns the type name
-	 * @return Returns a String
-	 */
-	public String getTypeName() {
-		return fName;
-	}
-
-	/**
-	 * Sets the taskName.
-	 * @param taskName The taskName to set
-	 */
-	public void setTypeName(String taskName) {
-		fName = taskName;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/package.html b/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/package.html
deleted file mode 100644
index a931089..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/core/package.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-   <title>Package-level Javadoc</title>
-</head>
-<body>
-Provides support for running the Ant build tool in the platform.
-<h2>
-Package Specification</h2>
-This package defines a number of task and data types and various infrastructure
-pieces which make Ant in the platform easier and more powerful.
-</body>
-</html>
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntClassLoader.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntClassLoader.java
deleted file mode 100644
index ab365fd..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntClassLoader.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package org.eclipse.ant.internal.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.URL;
-import java.net.URLClassLoader;
-
-public class AntClassLoader extends URLClassLoader {
-
-	protected ClassLoader[] pluginLoaders;
-
-	public AntClassLoader(URL[] urls, ClassLoader[] pluginLoaders, ClassLoader parent) {
-		super(urls, parent);
-		this.pluginLoaders = pluginLoaders;
-	}
-
-	public Class loadClass(String name) throws ClassNotFoundException {
-		Class result = loadClassParent(name);
-		if (result == null)
-			result = loadClassURLs(name);
-		if (result == null)
-			result = loadClassPlugins(name);
-		if (result == null)
-			throw new ClassNotFoundException(name);
-		return result;
-	}
-
-	protected Class loadClassParent(String name) {
-		try {
-			ClassLoader parent = getParent();
-			if (parent != null)
-				return parent.loadClass(name);
-		} catch (ClassNotFoundException e) {
-			// Ignore exception now. If necessary we'll throw
-			// a ClassNotFoundException in loadClass(String)
-		}
-		return null;
-	}
-
-	protected Class loadClassURLs(String name) {
-		try {
-			return super.loadClass(name);
-		} catch (ClassNotFoundException e) {
-			// Ignore exception now. If necessary we'll throw
-			// a ClassNotFoundException in loadClass(String)
-		}
-		return null;
-	}
-
-	protected Class loadClassPlugins(String name) {
-		Class result = null;
-		if (pluginLoaders != null) {
-			for (int i = 0;
-				(i < pluginLoaders.length) && (result == null);
-				i++) {
-				try {
-					result = pluginLoaders[i].loadClass(name);
-				} catch (ClassNotFoundException e) {
-					// Ignore exception now. If necessary we'll throw
-					// a ClassNotFoundException in loadClass(String)
-				}
-			}
-		}
-		return result;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntObject.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntObject.java
deleted file mode 100644
index f3b491b..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/AntObject.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package org.eclipse.ant.internal.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.URL;
-
-public abstract class AntObject {
-
-	protected String fClassName;
-	protected URL fLibrary;
-	protected String fName;
-	
-	/**
-	 * Gets the className.
-	 * @return Returns a String
-	 */
-	public String getClassName() {
-		return fClassName;
-	}
-	/**
-	 * Sets the className.
-	 * @param className The className to set
-	 */
-	public void setClassName(String className) {
-		fClassName = className;
-	}
-	/**
-	 * Gets the library.
-	 * @return Returns a URL
-	 */
-	public URL getLibrary() {
-		return fLibrary;
-	}
-	/**
-	 * Sets the library.
-	 * @param library The library to set
-	 */
-	public void setLibrary(URL library) {
-		fLibrary = library;
-	}
-	
-	/**
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return fName;
-	}
-}
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/IAntCoreConstants.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/IAntCoreConstants.java
deleted file mode 100644
index 5246536..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/IAntCoreConstants.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package org.eclipse.ant.internal.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/**
- * Common constants.
- */
-public interface IAntCoreConstants {
-
-	// default values
-	public static final String DEFAULT_BUILD_FILENAME = "build.xml"; //$NON-NLS-1$
-
-	// preferences
-	public static final String PREFERENCE_TASKS = "tasks"; //$NON-NLS-1$
-	public static final String PREFERENCE_TYPES = "types"; //$NON-NLS-1$
-	public static final String PREFERENCE_URLS = "urls"; //$NON-NLS-1$
-	
-	public static final String PREFIX_TASK = "task."; //$NON-NLS-1$
-	public static final String PREFIX_TYPE = "type."; //$NON-NLS-1$
-	
-	/**
-	 * Debug constant
-	 * @since 2.1
-	 */
-	public static boolean DEBUG_BUILDFILE_TIMING = false;
-	
-	/**
-	 * Preferences
-	 * @since 2.1
-	 */
-	public static final String PREFERENCE_ANT_URLS = "ant_urls"; //$NON-NLS-1$
-	public static final String PREFERENCE_ANT_HOME = "ant_home"; //$NON-NLS-1$
-	public static final String PREFERENCE_PROPERTIES = "properties"; //$NON-NLS-1$
-	public static final String PREFERENCE_PROPERTY_FILES = "propertyfiles"; //$NON-NLS-1$
-	public static final String PREFIX_PROPERTY = "property."; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.java b/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.java
deleted file mode 100644
index 1a4ab0f..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.eclipse.ant.internal.core;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class InternalCoreAntMessages {
-
-	private static final String BUNDLE_NAME = "org.eclipse.ant.internal.core.InternalCoreAntMessages"; //$NON-NLS-1$
-
-	private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
-
-	private InternalCoreAntMessages() {
-	}
-
-	public static String getString(String key) {
-		try {
-			return RESOURCE_BUNDLE.getString(key);
-		} catch (MissingResourceException e) {
-			return '!' + key + '!';
-		}
-	}
-}
diff --git a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.properties b/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.properties
deleted file mode 100644
index 9a79743..0000000
--- a/ant/org.eclipse.ant.core/src/org/eclipse/ant/internal/core/InternalCoreAntMessages.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-######################################################################
-# Copyright (c) 2000, 2002 IBM Corp. and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-#    IBM Corporation - Initial implementation
-######################################################################
-
-AntCorePreferences.Malformed_URL._1=Malformed URL.
-AntCorePreferences.Library_not_specified_for__{0}_4=Library not specified for: {0}
-
-AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._1=Could not find one or more classes. Please check the Ant classpath.
-AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._2=Could not find one or more classes: \"{0}\". Please check the Ant classpath.
-AntRunner.Build_Failed._3=BUILD FAILED
-AntRunner.Buildfile_run_took___9=Buildfile run took: 
-AntRunner._milliseconds._10=\ milliseconds.
diff --git a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/AntSecurityManager.java b/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/AntSecurityManager.java
deleted file mode 100644
index a8c6306..0000000
--- a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/AntSecurityManager.java
+++ /dev/null
@@ -1,399 +0,0 @@
-package org.eclipse.ant.internal.core.ant;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.FileDescriptor;
-import java.net.InetAddress;
-import java.net.SocketPermission;
-import java.security.Permission;
-
-import org.eclipse.ant.core.AntSecurityException;
-
-/**
- * A security manager that always throws an <code>AntSecurityException</code>
- * if the calling thread attempts to cause the Java Virtual Machine to 
- * exit/halt.
- * Otherwise this manager just delegates to the pre-existing manager
- * passed in the constructor.
 */
-public class AntSecurityManager extends SecurityManager {
-
-	protected SecurityManager securityManager= null;
-	
-	protected AntSecurityManager(SecurityManager securityManager) {
-		this.securityManager= securityManager;
-	}
-	/**
-	 * @see java.lang.SecurityManager#checkExit(int)
-	 */
-	public void checkExit(int status) {
-		//no exit allowed...System.exit is being called
-		//by some ant task...do not want Eclipse to exit if
-		//in the same VM,
-		//The message is used in loggers to determine that this is
-		//not really an exception case.
-		throw new AntSecurityException();
-	}
-	/**
-	 * @see java.lang.SecurityManager#checkAccept(java.lang.String, int)
-	 */
-	public void checkAccept(String host, int port) {
-		if (securityManager != null) {
-			securityManager.checkAccept(host, port);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkAccess(java.lang.Thread)
-	 */
-	public void checkAccess(Thread t) {
-		if (securityManager != null) {
-			securityManager.checkAccess(t);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkAccess(java.lang.ThreadGroup)
-	 */
-	public void checkAccess(ThreadGroup g) {
-		if (securityManager != null) {
-			securityManager.checkAccess(g);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkAwtEventQueueAccess()
-	 */
-	public void checkAwtEventQueueAccess() {
-		if (securityManager != null) {
-			securityManager.checkAwtEventQueueAccess();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkConnect(java.lang.String, int, java.lang.Object)
-	 */
-	public void checkConnect(String host, int port, Object context) {
-		if (securityManager != null) {
-			securityManager.checkConnect(host, port, context);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkConnect(java.lang.String, int)
-	 */
-	public void checkConnect(String host, int port) {
-		if (securityManager != null) {
-			securityManager.checkConnect(host, port);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkCreateClassLoader()
-	 */
-	public void checkCreateClassLoader() {
-		if (securityManager != null) {
-			securityManager.checkCreateClassLoader();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkDelete(java.lang.String)
-	 */
-	public void checkDelete(String file) {
-		if (securityManager != null) {
-			securityManager.checkDelete(file);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkExec(java.lang.String)
-	 */
-	public void checkExec(String cmd) {
-		if (securityManager != null) {
-			securityManager.checkExec(cmd);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkLink(java.lang.String)
-	 */
-	public void checkLink(String lib) {
-		if (securityManager != null) {
-			securityManager.checkLink(lib);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkListen(int)
-	 */
-	public void checkListen(int port) {
-		if (securityManager != null) {
-			securityManager.checkListen(port);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkMemberAccess(java.lang.Class, int)
-	 */
-	public void checkMemberAccess(Class clazz, int which) {
-		if (securityManager != null) {
-			securityManager.checkMemberAccess(clazz, which);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkMulticast(java.net.InetAddress, byte)
-	 * @deprecated
-	 */
-	public void checkMulticast(InetAddress maddr, byte ttl) {
-		if (securityManager != null) {
-			String host = maddr.getHostAddress();
-			if (!host.startsWith("[") && host.indexOf(':') != -1) { //$NON-NLS-1$
-	   			host = "[" + host + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-			}
-	    	checkPermission(new SocketPermission(host, "accept,connect")); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkMulticast(java.net.InetAddress)
-	 */
-	public void checkMulticast(InetAddress maddr) {
-		if (securityManager != null) {
-			securityManager.checkMulticast(maddr);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPackageAccess(java.lang.String)
-	 */
-	public void checkPackageAccess(String pkg) {
-		if (securityManager != null) {
-			securityManager.checkPackageAccess(pkg);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPackageDefinition(java.lang.String)
-	 */
-	public void checkPackageDefinition(String pkg) {
-		if (securityManager != null) {
-			securityManager.checkPackageDefinition(pkg);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPermission(java.security.Permission, java.lang.Object)
-	 */
-	public void checkPermission(Permission perm, Object context) {
-		if (securityManager != null) {
-			securityManager.checkPermission(perm, context);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPermission(java.security.Permission)
-	 */
-	public void checkPermission(Permission perm) {
-		if (securityManager != null) {
-			securityManager.checkPermission(perm);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPrintJobAccess()
-	 */
-	public void checkPrintJobAccess() {
-		if (securityManager != null) {
-			securityManager.checkPrintJobAccess();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPropertiesAccess()
-	 */
-	public void checkPropertiesAccess() {
-		if (securityManager != null) {
-			securityManager.checkPropertiesAccess();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkPropertyAccess(java.lang.String)
-	 */
-	public void checkPropertyAccess(String key) {
-		if (securityManager != null) {
-			securityManager.checkPropertyAccess(key);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkRead(java.io.FileDescriptor)
-	 */
-	public void checkRead(FileDescriptor fd) {
-		if (securityManager != null) {
-			securityManager.checkRead(fd);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkRead(java.lang.String, java.lang.Object)
-	 */
-	public void checkRead(String file, Object context) {
-		if (securityManager != null) {
-			securityManager.checkRead(file, context);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkRead(java.lang.String)
-	 */
-	public void checkRead(String file) {
-		if (securityManager != null) {
-			securityManager.checkRead(file);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkSecurityAccess(java.lang.String)
-	 */
-	public void checkSecurityAccess(String target) {
-		if (securityManager != null) {
-			securityManager.checkSecurityAccess(target);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkSetFactory()
-	 */
-	public void checkSetFactory() {
-		if (securityManager != null) {
-			securityManager.checkSetFactory();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkSystemClipboardAccess()
-	 */
-	public void checkSystemClipboardAccess() {
-		if (securityManager != null) {
-			securityManager.checkSystemClipboardAccess();
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkTopLevelWindow(java.lang.Object)
-	 */
-	public boolean checkTopLevelWindow(Object window) {
-		if (securityManager != null) {
-			return securityManager.checkTopLevelWindow(window);
-		}
-		return false;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkWrite(java.io.FileDescriptor)
-	 */
-	public void checkWrite(FileDescriptor fd) {
-		if (securityManager != null) {
-			securityManager.checkWrite(fd);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#checkWrite(java.lang.String)
-	 */
-	public void checkWrite(String file) {
-		if (securityManager != null) {
-			securityManager.checkWrite(file);
-		}
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#classDepth(java.lang.String)
-	 * @deprecated
-	 */
-	protected int classDepth(String name) {
-		return -1;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#classLoaderDepth()
-	 * @deprecated
-	 */
-	protected int classLoaderDepth() {
-		return -1;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#currentClassLoader()
-	 * @deprecated
-	 */
-	protected ClassLoader currentClassLoader() {
-		return null;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#currentLoadedClass()
-	 * @deprecated
-	 */
-	protected Class currentLoadedClass() {
-		return null;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#getClassContext()
-	 */
-	protected Class[] getClassContext() {
-		return super.getClassContext();
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#getInCheck()
-	 * @deprecated
-	 */
-	public boolean getInCheck() {
-		return false;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#getSecurityContext()
-	 */
-	public Object getSecurityContext() {
-		if (securityManager != null) {
-			return securityManager.getSecurityContext();
-		}
-		return null;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#getThreadGroup()
-	 */
-	public ThreadGroup getThreadGroup() {
-		if (securityManager != null) {
-			securityManager.getThreadGroup();
-		}
-		return null;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#inClass(java.lang.String)
-	 * @deprecated
-	 */
-	protected boolean inClass(String name) {
-		return false;
-	}
-
-	/**
-	 * @see java.lang.SecurityManager#inClassLoader()
-	 * @deprecated
-	 */
-	protected boolean inClassLoader() {
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.java b/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.java
deleted file mode 100644
index fd7366e..0000000
--- a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.eclipse.ant.internal.core.ant;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class InternalAntMessages {
-
-	private static final String BUNDLE_NAME = "org.eclipse.ant.internal.core.ant.InternalAntMessages"; //$NON-NLS-1$
-
-	private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
-
-	private InternalAntMessages() {
-	}
-
-	public static String getString(String key) {
-		try {
-			return RESOURCE_BUNDLE.getString(key);
-		} catch (MissingResourceException e) {
-			return '!' + key + '!';
-		}
-	}
-}
diff --git a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.properties b/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.properties
deleted file mode 100644
index 74069be..0000000
--- a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntMessages.properties
+++ /dev/null
@@ -1,74 +0,0 @@
-######################################################################
-# Copyright (c) 2000, 2002 IBM Corp. and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v10.html
-#
-# Contributors:
-#    IBM Corporation - Initial implementation
-######################################################################
-
-InternalAntRunner.Build_file__{0}_1=Buildfile: {0}
-InternalAntRunner.Arguments__{0}_2=Arguments: {0}
-InternalAntRunner.Default_target__3=Default target:
-InternalAntRunner.Main_targets__4=Main targets:
-InternalAntRunner.Subtargets__5=Subtargets:
-InternalAntRunner.Unable_to_instantiate_logger__{0}_6=Unable to instantiate logger: {0}
-InternalAntRunner.Ant_version__7=Ant version 
-InternalAntRunner.compiled_on__8=compiled on 
-InternalAntRunner.Could_not_load_the_version_information._{0}_9=Could not load the version information. {0}
-InternalAntRunner.Could_not_load_the_version_information._10=Could not load the version information.
-InternalAntRunner.options_13=options
-InternalAntRunner.target_15=target
-InternalAntRunner.Options___21=Options: 
-InternalAntRunner.print_this_message_23=print this message
-InternalAntRunner.print_project_help_information_25=print project help information
-InternalAntRunner.print_the_version_information_and_exit_27=print the version information and exit
-InternalAntRunner.be_extra_quiet_29=be extra quiet
-InternalAntRunner.be_extra_verbose_31=be extra verbose
-InternalAntRunner.print_debugging_information_33=print debugging information
-InternalAntRunner.produce_logging_information_without_adornments_35=produce logging information without adornments
-InternalAntRunner.use_given_file_for_log_37=use given file for log
-InternalAntRunner.the_class_which_is_to_perform_logging_39=the class which is to perform logging
-InternalAntRunner.add_an_instance_of_class_as_a_project_listener_41=add an instance of class as a project listener
-InternalAntRunner.use_given_buildfile_43=use given buildfile
-InternalAntRunner.use_value_for_given_property_45=use value for given property
-InternalAntRunner.Using_{0}_file_as_build_log._1=Using {0} file as build log.
-InternalAntRunner.Could_not_write_to_the_specified_log_file__{0}._Make_sure_the_path_exists_and_you_have_write_permissions._2=Cannot write on the specified log file: {0}. Make sure the path exists and you have write permissions.
-InternalAntRunner.BUILD_SUCCESSFUL_1=BUILD SUCCESSFUL
-InternalAntRunner.Unknown_argument__{0}_2=Unknown argument: {0}
-InternalAntRunner.Buildfile__{0}_does_not_exist_!_1=Buildfile: {0} does not exist\!
-InternalAntRunner.{0}_which_was_specified_to_be_a_build_listener_is_not_an_instance_of_org.apache.tools.ant.BuildListener._1={0} which was specified to be a build listener is not an instance of org.apache.tools.ant.BuildListener.
-InternalAntRunner.{0}_which_was_specified_to_perform_logging_is_not_an_instance_of_org.apache.tools.ant.BuildLogger._2={0} which was specified to perform logging is not an instance of org.apache.tools.ant.BuildLogger.
-InternalAntRunner.You_must_specify_a_classname_when_using_the_-listener_argument_1=You must specify a classname when using the -listener argument
-InternalAntRunner.You_must_specify_a_classname_when_using_the_-logger_argument_2=You must specify a classname when using the -logger argument
-InternalAntRunner.You_must_specify_a_log_file_when_using_the_-log_argument_3=You must specify a log file when using the -log argument
-InternalAntRunner.You_must_specify_a_buildfile_when_using_the_-buildfile_argument_4=You must specify a buildfile when using the -buildfile argument
-InternalAntRunner.find_option_not_yet_implemented_10=-find option not yet implemented
-InternalAntRunner.print_information_that_might_be_helpful_to_12=print information that might be helpful to
-InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tdiagnose_or_report_problems._13=\t\t\t\t\t\t\t\t\t\t\tdiagnose or report problems.
-InternalAntRunner._t_t_t_t_t_t_t_t_____15=\t\t\t\t\t\t\t\t\'\'
-InternalAntRunner.load_all_properties_from_file_with_-D_19=load all properties from file with -D
-InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tproperties_taking_precedence_20=\t\t\t\t\t\t\t\t\t\t\tproperties taking precedence
-InternalAntRunner.the_class_which_will_handle_input_requests_22=the class which will handle input requests
-InternalAntRunner.search_for_buildfile_towards_the_root_of_the_24=search for buildfile towards the root of the
-InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tfilesystem_and_use_it_25=\t\t\t\t\t\t\t\t\t\t\tfilesystem and use it
-InternalAntRunner._t_t_t_t_t_t_t_____1=\t\t\t\t\t\t\t\'\'
-InternalAntRunner.Class_{0}_not_found_for_task_{1}_1=Class {0} not found for task {1}
-InternalAntRunner.Class_{0}_not_found_for_type_{1}_2=Class {0} not found for type {1}
-InternalAntRunner.Only_one_logger_class_may_be_specified_1=Only one logger class may be specified
-InternalAntRunner.You_must_specify_a_classname_when_using_the_-inputhandler_argument_1=You must specify a classname when using the -inputhandler argument
-InternalAntRunner.Only_one_input_handler_class_may_be_specified._2=Only one input handler class may be specified.
-InternalAntRunner.You_must_specify_a_property_filename_when_using_the_-propertyfile_argument_3=You must specify a property filename when using the -propertyfile argument
-InternalAntRunner.Could_not_load_property_file_{0}__{1}_4=Could not load property file {0}: {1}
-InternalAntRunner.The_specified_input_handler_class_{0}_does_not_implement_the_org.apache.tools.ant.input.InputHandler_interface_5=The specified input handler class {0} does not implement the org.apache.tools.ant.input.InputHandler interface
-InternalAntRunner.Unable_to_instantiate_specified_input_handler_class_{0}___{1}_6=Unable to instantiate specified input handler class {0} : {1}
-InternalAntRunner.Specifying_an_InputHandler_is_an_Ant_1.5.*_feature._Please_update_your_Ant_classpath_to_include_an_Ant_version_greater_than_this._2=Specifying an InputHandler is an Ant 1.5.* feature. Please update your Ant classpath to include an Ant version greater than this.
-InternalAntRunner.The_diagnositics_options_is_an_Ant_1.5.*_feature._Please_update_your_Ant_classpath_to_include_an_Ant_version_greater_than_this._4=The diagnositics options is an Ant 1.5.* feature. Please update your Ant classpath to include an Ant version greater than this.
-InternalAntRunner.Specifying_property_files_is_a_Ant_1.5.*_feature._Please_update_your_Ant_classpath._6=Specifying property files is a Ant 1.5.* feature. Please update your Ant classpath to include an Ant version greater than this.
-InternalAntRunner.Default_target_{0}{1}{2}_does_not_exist_in_this_project_1=Default target {0}{1}{2} does not exist in this project
-InternalAntRunner.ANT_HOME_must_be_set_to_use_Ant_diagnostics_2=ANT_HOME must be set to use Ant diagnostics
-
-ProgressBuildListener.Build_cancelled._5=Build cancelled.
-
diff --git a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntRunner.java b/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntRunner.java
deleted file mode 100644
index f7c9519..0000000
--- a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/InternalAntRunner.java
+++ /dev/null
@@ -1,1315 +0,0 @@
-package org.eclipse.ant.internal.core.ant;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-/*
- * The Apache Software License, Version 1.1
- *
- * Copyright (c) 1999, 2000 The Apache Software Foundation.  All rights
- * reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. The end-user documentation included with the redistribution, if
- *    any, must include the following acknowlegement:
- *       "This product includes software developed by the
- *        Apache Software Foundation (http://www.apache.org/)."
- *    Alternately, this acknowlegement may appear in the software itself,
- *    if and wherever such third-party acknowlegements normally appear.
- *
- * 4. The names "The Jakarta Project", "Ant", and "Apache Software
- *    Foundation" must not be used to endorse or promote products derived
- *    from this software without prior written permission. For written
- *    permission, please contact apache@apache.org.
- *
- * 5. Products derived from this software may not be called "Apache"
- *    nor may "Apache" appear in their names without prior written
- *    permission of the Apache Group.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation.  For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- */
- 
-import java.io.*;
-import java.net.URL;
-import java.text.MessageFormat;
-import java.util.*;
-
-import org.apache.tools.ant.*;
-import org.apache.tools.ant.input.DefaultInputHandler;
-import org.apache.tools.ant.input.InputHandler;
-import org.eclipse.ant.core.*;
-import org.eclipse.core.runtime.*;
-
-/**
- * Eclipse application entry point into Ant. Derived from the original Ant Main class
- * to ensure that the functionality is equivalent when running in the platform.
- */
-public class InternalAntRunner {
-
-	public InternalAntRunner() {
-	}
-
-	protected IProgressMonitor monitor;
-
-	protected List buildListeners;
-
-	protected String buildFileLocation;
-
-	/** 
-	 * Targets we want to run.
	 */
-	protected Vector targets;
-
-	protected Map userProperties;
-	
-	protected Project currentProject;
-	
-	protected String defaultTarget;
-	
-	protected BuildLogger buildLogger= null;
-	
-	/**
-	 * Cache of the Ant version information when it has been loaded
	 */
-	protected static String antVersion= null;
-
-	/** Our current message output status. Follows Project.MSG_XXX */
-	protected int messageOutputLevel = Project.MSG_INFO;
-
-	/** Indicates whether output to the log is to be unadorned. */
-	protected boolean emacsMode = false;
-
-	/** Indicates we should only parse and display the project help information */
-	protected boolean projectHelp = false;
-
-	/** Stream that we are using for logging */
-	private PrintStream out = System.out;
-
-	/** Stream that we are using for logging error messages */
-	private PrintStream err = System.err;
-
-	/**
-	 * The Ant logger class. There may be only one logger. It will have the
-	 * right to use the 'out' PrintStream. The class must implement the BuildLogger
-	 * interface.  An empty String indicates that no logger is to be used.  A <code>null</code>
-	 * name indicates that the org.apache.tools.ant.DefaultLogger will be used.
-	 */
-	protected String loggerClassname = null;
-
-	/** Extra arguments to be parsed as command line arguments. */
-	protected String[] extraArguments = null;
-	
-	protected boolean scriptExecuted= false;
-	
-	protected List propertyFiles= new ArrayList();
-	
-	/**
-     * The Ant InputHandler class.  There may be only one input
-     * handler.
-     */
-    private String inputHandlerClassname = null;
-
-	private static final String PROPERTY_ECLIPSE_RUNNING = "eclipse.running"; //$NON-NLS-1$
-
-	/**
-	 * Adds a build listener.
-	 * 
-	 * @param buildListener a build listener
-	 */
-	public void addBuildListeners(List classNames) {
-		if (buildListeners == null) {
-			buildListeners = new ArrayList(classNames.size());
-		}
-		buildListeners.addAll(classNames);
-	}
-
-	/**
-	 * Adds a build logger.
-	 */
-	public void addBuildLogger(String className) {
-		loggerClassname = className;
-	}
-
-	/**
-	 * Adds user properties.
-	 */
-	public void addUserProperties(Map properties) {
-		userProperties = properties;
-	}
-	
-	/**
-	 * Adds user property files.
-	 * @since 2.1
-	 */
-	public void addPropertyFiles(String[] propertyFiles) {
-		this.propertyFiles.addAll(Arrays.asList(propertyFiles));
-	}
-
-	protected void addBuildListeners(Project project) {
-		String className= null;
-		try {
-			BuildLogger logger= createLogger();
-			if (logger != null) {
-				project.addBuildListener(logger);
-			}
-			if (buildListeners != null) {
-				for (Iterator iterator = buildListeners.iterator(); iterator.hasNext();) {
-					className = (String) iterator.next();
-					Class listener = Class.forName(className);
-					project.addBuildListener((BuildListener) listener.newInstance());
-				}
-			}
-		} catch (ClassCastException e) {
-			String message = MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.{0}_which_was_specified_to_be_a_build_listener_is_not_an_instance_of_org.apache.tools.ant.BuildListener._1"), new String[]{className}); //$NON-NLS-1$
-			logMessage(null, message, Project.MSG_ERR);
-			throw new BuildException(message, e);
-		} catch (BuildException e) {
-			throw e;
-		} catch (Exception e) {
-			throw new BuildException(e);
-		}
-	}
-
-	protected void setProperties(Project project) {
-		project.setUserProperty(PROPERTY_ECLIPSE_RUNNING, "true"); //$NON-NLS-1$
-		project.setUserProperty("ant.file", getBuildFileLocation()); //$NON-NLS-1$
-		project.setUserProperty("ant.version", getAntVersion()); //$NON-NLS-1$
-		
-		AntCorePreferences prefs= AntCorePlugin.getPlugin().getPreferences();
-		if (prefs.getAntHome() != null) {
-			System.setProperty("ant.home", prefs.getAntHome()); //$NON-NLS-1$
-		}
-		
-		Property[] properties= prefs.getCustomProperties();
-		if (properties != null) {
-			for (int i = 0; i < properties.length; i++) {
-				Property property = properties[i];
-				project.setUserProperty(property.getName(), property.getValue());
-			}
-		}
-		if (userProperties == null) {
-			return;
-		}
-		for (Iterator iterator = userProperties.entrySet().iterator(); iterator.hasNext();) {
-			Map.Entry entry = (Map.Entry) iterator.next();
-			project.setUserProperty((String) entry.getKey(), (String) entry.getValue());
-		}
-	}
-
-	protected void setTasks(Project project) {
-		List tasks = AntCorePlugin.getPlugin().getPreferences().getTasks();
-		
-		for (Iterator iterator = tasks.iterator(); iterator.hasNext();) {
-			org.eclipse.ant.core.Task task = (org.eclipse.ant.core.Task) iterator.next();
-			try {
-				Class taskClass = Class.forName(task.getClassName());
-				project.addTaskDefinition(task.getTaskName(), taskClass);
-			} catch (ClassNotFoundException e) {
-				throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Class_{0}_not_found_for_task_{1}_1"), new String[]{task.getTaskName(), task.getClassName()}), e); //$NON-NLS-1$
-			}
-		}
-	}
-
-	protected void setTypes(Project project) {
-		List types = AntCorePlugin.getPlugin().getPreferences().getTypes();
-		
-		for (Iterator iterator = types.iterator(); iterator.hasNext();) {
-			Type type = (Type) iterator.next();
-			try {
-				Class typeClass = Class.forName(type.getClassName());
-				project.addDataTypeDefinition(type.getTypeName(), typeClass);
-			} catch (ClassNotFoundException e) {
-				throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Class_{0}_not_found_for_type_{1}_2"), new String[]{type.getTypeName(), type.getClassName()}), e); //$NON-NLS-1$
-			}
-		}
-	}
-
-	/**
-	 * Parses the build script and adds necessary information into
-	 * the given project.
-	 */
-	protected void parseScript(Project project) {
-		File buildFile = new File(getBuildFileLocation());
-		if (!buildFile.exists()) {
-			throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Buildfile__{0}_does_not_exist_!_1"), //$NON-NLS-1$
-						 new String[]{buildFile.getAbsolutePath()}));
-		}
-		ProjectHelper.configureProject(project, buildFile);
-	}
-
-	/**
-	 * Gets all the target information from the build script.
-	 * Returns a list of lists. Each item in the enclosing list represents a
-	 * target, where the first element is the name, the
-	 * second element is the description, the third element is the
-	 * project name, and the last elements is an array of dependencies.
-	 */
-	public List getTargets() {
-		// create a project and initialize it
-		Project antProject = new Project();
-		antProject.init();
-		antProject.setProperty("ant.file", getBuildFileLocation()); //$NON-NLS-1$
-		parseScript(antProject);
-		defaultTarget = antProject.getDefaultTarget();
-		
-		Enumeration targets = antProject.getTargets().elements();
-		List infos= new ArrayList();
-		List info;
-		boolean defaultFound= false;
-		while (targets.hasMoreElements()) {
-			Target target = (Target) targets.nextElement();
-			info= new ArrayList(4);
-			info.add(target.getName());
-			if (target.getName().equals(defaultTarget)) {
-				defaultFound= true;
-			}
-			info.add(target.getDescription());
-			info.add(target.getProject().getName());
-			List dependencies= new ArrayList();
-			Enumeration enum= target.getDependencies();
-			while (enum.hasMoreElements()) {
-				dependencies.add(enum.nextElement());
-			}
-			String[] dependencyArray= new String[dependencies.size()];
-			dependencies.toArray(dependencyArray);
-			info.add(dependencyArray);
-			infos.add(info);
-		}
-		
-		if (!defaultFound) {
-			//default target must exist
-			throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Default_target_{0}{1}{2}_does_not_exist_in_this_project_1"), new String[]{"'", defaultTarget, "'"})); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-		return infos;
-	}
-	
-	/**
-	 * Returns the default target name that was last computed or <code>null</code>
-	 * if no default target has been computed.
	 * @return the default target name
	 */
-	public String getDefaultTarget() {
-		return defaultTarget;
-	}
-
-	/**
-	 * Runs the build script.
-	 */
-	public void run() {
-		run(getArrayList(extraArguments));
-	}
-
-	protected void printArguments(Project project) {
-		if ((messageOutputLevel != Project.MSG_DEBUG) && (messageOutputLevel != Project.MSG_VERBOSE)) {
-			return;
-		}
-		StringBuffer sb = new StringBuffer();
-		for (int i = 0; i < extraArguments.length; i++) {
-			sb.append(extraArguments[i]);
-			sb.append(' ');
-		}
-		project.log(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Arguments__{0}_2"), new String[]{sb.toString().trim()})); //$NON-NLS-1$
-	}
-
-	protected void createMonitorBuildListener(Project project) {
-		if (monitor == null) {
-			return;
-		}
-		List chosenTargets = targets;
-		if (chosenTargets == null || chosenTargets.isEmpty()) {
-			chosenTargets = new ArrayList(1);
-			String defltTarget= project.getDefaultTarget();
-			if (defltTarget != null) {
-				chosenTargets.add(defltTarget);
-			}
-		}
-		project.addBuildListener(new ProgressBuildListener(project, chosenTargets, monitor));
-	}
-
-	/**
-	 * Logs a message with the client that lists the targets
-	 * in a project
-	 * 
-	 * @param project the project to list targets from
-	 */
-	private void printTargets(Project project) {
-		// find the target with the longest name
-		int maxLength = 0;
-		Enumeration ptargets = project.getTargets().elements();
-		String targetName;
-		String targetDescription;
-		Target currentTarget;
-		// split the targets in top-level and sub-targets depending
-		// on the presence of a description
-		List topNames = new ArrayList();
-		List topDescriptions = new ArrayList();
-		List subNames = new ArrayList();
-
-		while (ptargets.hasMoreElements()) {
-			currentTarget = (Target) ptargets.nextElement();
-			targetName = currentTarget.getName();
-			targetDescription = currentTarget.getDescription();
-			if (targetDescription == null) {
-				subNames.add(targetName);
-			} else {
-				topNames.add(targetName);
-				topDescriptions.add(targetDescription);
-				if (targetName.length() > maxLength) {
-					maxLength = targetName.length();
-				}
-			}
-		}
-
-		Collections.sort(subNames);
-		Collections.sort(topNames);
-		Collections.sort(topDescriptions);
-		
-		String defaultTarget = project.getDefaultTarget();
-		if (defaultTarget != null && !"".equals(defaultTarget)) { // shouldn't need to check but... //$NON-NLS-1$
-			List defaultName = new ArrayList(1);
-			List defaultDesc = null;
-			defaultName.add(defaultTarget);
-
-			int indexOfDefDesc = topNames.indexOf(defaultTarget);
-			if (indexOfDefDesc >= 0) {
-				defaultDesc = new ArrayList(1);
-				defaultDesc.add(topDescriptions.get(indexOfDefDesc));
-			}
-			printTargets(project, defaultName, defaultDesc, InternalAntMessages.getString("InternalAntRunner.Default_target__3"), maxLength); //$NON-NLS-1$
-
-		}
-
-		printTargets(project, topNames, topDescriptions, InternalAntMessages.getString("InternalAntRunner.Main_targets__4"), maxLength); //$NON-NLS-1$
-		printTargets(project, subNames, null, InternalAntMessages.getString("InternalAntRunner.Subtargets__5"), 0); //$NON-NLS-1$
-	}
-
-	/**
-	 * Logs a message with the client that lists the target names and optional descriptions
-	 * 
-	 * @param names the targets names
-	 * @param descriptions the corresponding descriptions
-	 * @param heading the message heading
-	 * @param maxlen maximum length that can be allocated for a name
-	 */
-	private void printTargets(Project project, List names, List descriptions, String heading, int maxlen) {
-		// now, start printing the targets and their descriptions
-		String lSep = System.getProperty("line.separator"); //$NON-NLS-1$
-		
-		String spaces = "    "; //$NON-NLS-1$
-		while (spaces.length() < maxlen) {
-			spaces += spaces;
-		}
-		StringBuffer msg = new StringBuffer();
-		msg.append(heading + lSep + lSep);
-		for (int i = 0; i < names.size(); i++) {
-			msg.append(' ');
-			msg.append(names.get(i));
-			if (descriptions != null) {
-				msg.append(spaces.substring(0, maxlen - ((String) names.get(i)).length() + 2));
-				msg.append(descriptions.get(i));
-			}
-			msg.append(lSep);
-		}
-		logMessage(project, msg.toString(), Project.MSG_INFO);
-	}
-
-	/**
-	 * Invokes the building of a project object and executes a build using either a given
-	 * target or the default target.
-	 *
-	 * @param argArray the command line arguments
-	 * @exception execution exceptions
-	 */
-	public void run(Object argArray) throws Exception {
-		run(getArrayList((String[]) argArray));
-	}
-
-	/**
-	 * Note that the list passed to this method must support
-	 * List#remove(Object)
	 */
-	protected void run(List argList) {
-		setCurrentProject(new Project());
-		Throwable error = null;
-		PrintStream originalErr = System.err;
-		PrintStream originalOut = System.out;
-		SecurityManager originalSM= System.getSecurityManager();
-		setJavaClassPath();
-		scriptExecuted= true;
-		try {
-			getCurrentProject().init();
-			if (argList != null) {
-				scriptExecuted= preprocessCommandLine(argList);
-			
-				if (!scriptExecuted) {
-					return;
-				}
-			}
-			
-			addBuildListeners(getCurrentProject());
-		
-			processProperties(argList);
-			
-			setProperties(getCurrentProject());
-			
-			addInputHandler(getCurrentProject());
-			System.setOut(new PrintStream(new DemuxOutputStream(getCurrentProject(), false)));
-			System.setErr(new PrintStream(new DemuxOutputStream(getCurrentProject(), true)));
-
-			fireBuildStarted(getCurrentProject());
-			
-			if (argList != null && !argList.isEmpty()) {
-				try {
-					scriptExecuted= processCommandLine(argList);
-				} catch (BuildException e) {
-					scriptExecuted= false;
-					throw e;
-				}
-			}
-			if (!scriptExecuted) {
-				return;
-			}
-			
-			getCurrentProject().log(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Build_file__{0}_1"), new String[]{getBuildFileLocation()})); //$NON-NLS-1$
-
-			setTasks(getCurrentProject());
-			setTypes(getCurrentProject());
-			
-			parseScript(getCurrentProject());
-			validateDefaultTarget();
-			createMonitorBuildListener(getCurrentProject());
-			
-			if (projectHelp) {
-				printHelp(getCurrentProject());
-				scriptExecuted= false;
-				return;
-			}
-			
-			if (extraArguments != null) {
-				printArguments(getCurrentProject());
-			}
-			System.setSecurityManager(new AntSecurityManager(originalSM));
-			
-			if (targets != null && !targets.isEmpty()) {
-				getCurrentProject().executeTargets(targets);
-			} else {
-				getCurrentProject().executeTarget(getCurrentProject().getDefaultTarget());
-			}
-		} catch (OperationCanceledException e) {
-			scriptExecuted= false;
-			logMessage(getCurrentProject(), e.getMessage(), Project.MSG_INFO);
-			throw e;
-		} catch (AntSecurityException e) {
-			//expected
-		} catch (RuntimeException e) {
-			error = e;
-			throw e;
-		} catch (Error e) {
-			error = e;
-			throw e;
-		} finally {
-			System.setErr(originalErr);
-			System.setOut(originalOut);
-			System.setSecurityManager(originalSM);
-			//close any user specified build log
-			if (err != originalErr) {
-				err.close();
-			}
-			if (out != originalOut) {
-				out.close();
-			}
-			
-			fireBuildFinished(getCurrentProject(), error);
-		}
-	}
-	/**
-	 * Method validateDefaultTarget.
-	 */
-	private void validateDefaultTarget() {
-		defaultTarget = getCurrentProject().getDefaultTarget();
-		
-		Enumeration targets = getCurrentProject().getTargets().elements();
-		boolean defaultFound= false;
-		while (targets.hasMoreElements()) {
-			Target target = (Target) targets.nextElement();
-			if (target.getName().equals(defaultTarget)) {
-				defaultFound= true;
-				break;
-			}
-		}
-		
-		if (!defaultFound) {
-			//default target must exist
-			throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Default_target_{0}{1}{2}_does_not_exist_in_this_project_1"), new String[]{"'", defaultTarget, "'"})); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-	}
-	
-	/**
-	 * Prints the message of the Throwable if it is not null.
-	 * 
-	 * @param t the throwable whose message is to be displayed
-	 */
-	protected void printMessage(Throwable t) {
-		String message = t.getMessage();
-		if (message != null) {
-			logMessage(getCurrentProject(), message, Project.MSG_ERR);
-		}
-	}
-
-	/**
-	 * Creates and returns the default build logger for logging build events to the ant log.
-	 * 
-	 * @return the default build logger for logging build events to the ant log
-	 * 			can return <code>null</code> if no logging is to occur
-	 */
-	protected BuildLogger createLogger() {
-		if (loggerClassname == null) {
-			buildLogger= new DefaultLogger();
-		} else if (!"".equals(loggerClassname)) { //$NON-NLS-1$
-			try {
-				buildLogger = (BuildLogger) (Class.forName(loggerClassname).newInstance());
-			} catch (ClassCastException e) {
-				String message = MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.{0}_which_was_specified_to_perform_logging_is_not_an_instance_of_org.apache.tools.ant.BuildLogger._2"), new String[]{loggerClassname}); //$NON-NLS-1$
-				logMessage(null, message, Project.MSG_ERR);
-				throw new BuildException(message, e);
-			} catch (Exception e) {
-				String message = MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Unable_to_instantiate_logger__{0}_6"), new String[]{loggerClassname}); //$NON-NLS-1$
-				logMessage(null, message, Project.MSG_ERR);
-				throw new BuildException(message, e);
-			}
-		} 
-		
-		if (buildLogger != null) {
-			buildLogger.setMessageOutputLevel(messageOutputLevel);
-			buildLogger.setOutputPrintStream(out);
-			buildLogger.setErrorPrintStream(err);
-			buildLogger.setEmacsMode(emacsMode);
-		}
-
-		return buildLogger;
-	}
-
-	/**
-	 * We only have to do this because Project.fireBuildStarted is protected. If it becomes
-	 * public we should remove this method and call the appropriate one.
-	 */
-	private void fireBuildStarted(Project project) {
-		BuildEvent event = new BuildEvent(project);
-		for (Iterator iterator = project.getBuildListeners().iterator(); iterator.hasNext();) {
-			BuildListener listener = (BuildListener) iterator.next();
-			listener.buildStarted(event);
-		}
-	}
-
-	/**
-	 * We only have to do this because Project.fireBuildFinished is protected. If it becomes
-	 * public we should remove this method and call the appropriate one.
-	 */
-	private void fireBuildFinished(Project project, Throwable error) {
-		BuildEvent event = new BuildEvent(project);
-		
-		if(usingXmlLogger()) {
-			//generate the log file in the correct location
-			String fileName= project.getProperty("XmlLogger.file"); //$NON-NLS-1$
-			if (fileName == null) {
-				fileName= "log.xml"; //$NON-NLS-1$
-			}
-			String realPath= new Path(getBuildFileLocation()).toFile().getAbsolutePath();
-			IPath path= new Path(realPath);
-			path= path.removeLastSegments(1);
-			path= path.addTrailingSeparator();
-			path= path.append(fileName);
-		
-			project.setProperty("XmlLogger.file", path.toOSString()); //$NON-NLS-1$
-		}
-		if (error == null && scriptExecuted) {
-			logMessage(project, InternalAntMessages.getString("InternalAntRunner.BUILD_SUCCESSFUL_1"), Project.MSG_INFO); //$NON-NLS-1$
-		} else {
-			event.setException(error);
-		}
-		for (Iterator iterator = project.getBuildListeners().iterator(); iterator.hasNext();) {
-			BuildListener listener = (BuildListener) iterator.next();
-			listener.buildFinished(event);
-		}
-	}
-
-	private boolean usingXmlLogger() {
-		if (buildLogger instanceof XmlLogger) {
-			return true;
-		}
-		if (buildListeners != null) {
-			Enumeration e= getCurrentProject().getBuildListeners().elements();
-			while (e.hasMoreElements()) {
-				BuildListener element = (BuildListener) e.nextElement();
-				if (element instanceof XmlLogger) {
-					return true;
-				}
-			}
-		}
-		
-		return false;
-	}
-
-	protected void logMessage(Project project, String message, int priority) {
-		if (project != null) {
-			project.log(message, priority);	
-		} else {
-			if (buildListeners != null) {
-				project = new Project();
-				BuildEvent event = new BuildEvent(project);
-				event.setMessage(message, priority);
-				//notify the build listeners that are not registered as
-				//no project existed
-				for (Iterator iterator = buildListeners.iterator(); iterator.hasNext();) {
-					try {
-						BuildListener listener = (BuildListener) iterator.next();
-						listener.messageLogged(event);
-					} catch (ClassCastException e) {
-						//ignore we could be trying to log that a build listener is the
-						//wrong type of class
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Sets the buildFileLocation.
-	 * 
-	 * @param buildFileLocation the file system location of the build file
-	 */
-	public void setBuildFileLocation(String buildFileLocation) {
-		this.buildFileLocation = buildFileLocation;
-		if (getCurrentProject() != null) {
-			getCurrentProject().setUserProperty("ant.file", buildFileLocation); //$NON-NLS-1$
-		}
-	}
-	
-	/**
-	 * Sets the input handler class name.
-	 * 
-	 * @param inputHandlerClassname the name of the class to use for the input handler
-	 */
-	public void setInputHandler(String inputHandlerClassname) {
-		this.inputHandlerClassname= inputHandlerClassname;
-	}
-
-	protected String getBuildFileLocation() {
-		if (buildFileLocation == null) {
-			buildFileLocation = new File("build.xml").getAbsolutePath(); //$NON-NLS-1$
-		}
-		return buildFileLocation;
-	}
-
-	/**
-	 * Sets the message output level. Use -1 for none.
-	 */
-	public void setMessageOutputLevel(int level) {
-		messageOutputLevel = level;
-		if (buildLogger != null) {
-			buildLogger.setMessageOutputLevel(level);
-		}
-	}
-
-	/**
-	 * Sets the extra user arguments
-	 */
-	public void setArguments(String[] args) {
-		extraArguments = args;
-	}
-
-	/**
-	 * Sets the execution targets.
-	 */
-	public void setExecutionTargets(String[] executionTargets) {
-		targets = new Vector(executionTargets.length);
-		for (int i = 0; i < executionTargets.length; i++) {
-			targets.add(executionTargets[i]);
-		}
-	}
-
-	protected static String getAntVersion() throws BuildException {
-		if (antVersion == null) {
-			try {
-				Properties props = new Properties();
-				InputStream in = Main.class.getResourceAsStream("/org/apache/tools/ant/version.txt"); //$NON-NLS-1$
-				props.load(in);
-				in.close();
-
-				StringBuffer msg = new StringBuffer();
-				msg.append(InternalAntMessages.getString("InternalAntRunner.Ant_version__7")); //$NON-NLS-1$
-				msg.append(props.getProperty("VERSION")); //$NON-NLS-1$
-				msg.append(' ');
-				msg.append(InternalAntMessages.getString("InternalAntRunner.compiled_on__8")); //$NON-NLS-1$
-				msg.append(props.getProperty("DATE")); //$NON-NLS-1$
-				antVersion= msg.toString();
-			} catch (IOException ioe) {
-				throw new BuildException(MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Could_not_load_the_version_information._{0}_9"), new String[]{ioe.getMessage()})); //$NON-NLS-1$
-			} catch (NullPointerException npe) {
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.Could_not_load_the_version_information._10")); //$NON-NLS-1$
-			}
-		}
-		return antVersion;
-	}
-
-	protected boolean preprocessCommandLine(List commands) {
-		
-		String[] args = getArgument(commands, "-listener"); //$NON-NLS-1$
-		while (args != null) {
-			if (args.length == 0) {
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_classname_when_using_the_-listener_argument_1")); //$NON-NLS-1$
-			} 
-			if (buildListeners == null) {
-				buildListeners= new ArrayList(1);
-			}
-			buildListeners.add(args[0]);
-			args = getArgument(commands, "-listener"); //$NON-NLS-1$
-		}
-
-		args = getArgument(commands, "-logger"); //$NON-NLS-1$
-		if (args != null) {
-			if (args.length == 0) {
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_classname_when_using_the_-logger_argument_2")); //$NON-NLS-1$
-			} 
-			loggerClassname = args[0];
-		}
-		args = getArgument(commands, "-logger"); //$NON-NLS-1$
-		if (args != null) {
-			throw new BuildException(InternalAntMessages.getString("InternalAntRunner.Only_one_logger_class_may_be_specified_1")); //$NON-NLS-1$
-		}
-		
-		args = getArgument(commands, "-inputhandler"); //$NON-NLS-1$
-		if (args != null) {
-			if (getAntVersion().indexOf("1.5") == -1) { //$NON-NLS-1$
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.Specifying_an_InputHandler_is_an_Ant_1.5.*_feature._Please_update_your_Ant_classpath_to_include_an_Ant_version_greater_than_this._2")); //$NON-NLS-1$
-			}
-			if (args.length == 0) {
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_classname_when_using_the_-inputhandler_argument_1")); //$NON-NLS-1$
-			} 
-			inputHandlerClassname = args[0];
-		}
-		args = getArgument(commands, "-inputhandler"); //$NON-NLS-1$
-		if (args != null) {
-			throw new BuildException(InternalAntMessages.getString("InternalAntRunner.Only_one_input_handler_class_may_be_specified._2")); //$NON-NLS-1$
-		}
-		return true;
-	}
-	
-	/**
-	 * Looks for interesting command line arguments. 
-	 * Returns whether it is OK to run the script.
-	 */
-	protected boolean processCommandLine(List commands) {
-		
-		if (commands.remove("-help")) { //$NON-NLS-1$
-			printUsage();
-			return false;
-		}
-		
-		if (commands.remove("-version")) { //$NON-NLS-1$
-			printVersion();
-			return false;
-		}
-		
-		if (commands.remove("-verbose") || commands.remove("-v")) { //$NON-NLS-1$ //$NON-NLS-2$
-			printVersion();
-			setMessageOutputLevel(Project.MSG_VERBOSE);
-		}
-		
-		if (commands.remove("-debug")) { //$NON-NLS-1$
-			printVersion();
-			setMessageOutputLevel(Project.MSG_DEBUG);
-		}
-		
-		if (commands.remove("-quiet") || commands.remove("-q")) { //$NON-NLS-1$ //$NON-NLS-2$
-			setMessageOutputLevel(Project.MSG_WARN);
-		}
-
-		if (commands.remove("-emacs")) { //$NON-NLS-1$
-			emacsMode = true;
-		}
-		if (commands.remove("-projecthelp")) { //$NON-NLS-1$
-			projectHelp = true;
-		}
-		
-		if (commands.remove("-diagnostics")) { //$NON-NLS-1$
-			if (getAntVersion().indexOf("1.5") == -1) { //$NON-NLS-1$
-				throw new BuildException(InternalAntMessages.getString("InternalAntRunner.The_diagnositics_options_is_an_Ant_1.5.*_feature._Please_update_your_Ant_classpath_to_include_an_Ant_version_greater_than_this._4")); //$NON-NLS-1$
-			}
-			try {
-				Diagnostics.doReport(System.out);
-			} catch (NullPointerException e) {
-				logMessage(getCurrentProject(), InternalAntMessages.getString("InternalAntRunner.ANT_HOME_must_be_set_to_use_Ant_diagnostics_2"), Project.MSG_ERR); //$NON-NLS-1$
-			}
-			return false;
-		}
-		
-		String[] args = getArgument(commands, "-logfile"); //$NON-NLS-1$
-		if (args == null) {
-			args = getArgument(commands, "-l"); //$NON-NLS-1$
-		}
-		if (args != null) {
-			if (args.length == 0) {
-				String message= InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_log_file_when_using_the_-log_argument_3"); //$NON-NLS-1$
-				logMessage(currentProject, message, Project.MSG_ERR); 
-				throw new BuildException(message);
-			} 
-			try {
-				createLogFile(args[0]);
-			} catch (IOException e) {
-				// just log message and ignore exception
-				logMessage(getCurrentProject(), MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Could_not_write_to_the_specified_log_file__{0}._Make_sure_the_path_exists_and_you_have_write_permissions._2"), new String[]{args[0]}), Project.MSG_ERR); //$NON-NLS-1$
-				return false;
-			}
-		
-		}
-		
-		args = getArgument(commands, "-buildfile"); //$NON-NLS-1$
-		if (args == null) {
-			args = getArgument(commands, "-file"); //$NON-NLS-1$
-			if (args == null) {
-				args = getArgument(commands, "-f"); //$NON-NLS-1$
-			}
-		}
-		
-		if (args != null) {
-			if (args.length == 0) {
-				String message= InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_buildfile_when_using_the_-buildfile_argument_4"); //$NON-NLS-1$
-				logMessage(currentProject, message, Project.MSG_ERR); 
-				throw new BuildException(message);
-			} 
-			setBuildFileLocation(args[0]);
-		}
-		
-		args= getArgument(commands, "-find"); //$NON-NLS-1$
-		if (args != null) {
-			logMessage(currentProject, InternalAntMessages.getString("InternalAntRunner.find_option_not_yet_implemented_10"), Project.MSG_ERR); //$NON-NLS-1$
-			return false;
-		}
-
-		if (commands != null && !commands.isEmpty()) {
-			if (!processTargets(commands)) {
-				//unrecognized argument
-				return false;
-			}
-		}
-		
-		return true;
-	}
-
-	/**
-	 * Checks for targets specified at the command line.
-	 * Returns whether execution should continue; false if
-	 * an unrecognized argument is encountered.
	 */
-	protected boolean processTargets(List commands) {
-		if (targets == null) {
-			targets = new Vector(commands.size());
-		}
-		for (Iterator iter = commands.iterator(); iter.hasNext();) {
-			String arg = (String) iter.next();
-			if (!arg.startsWith("-")) { //$NON-NLS-1$
-				targets.add(arg);
-			} else {
-				//unrecognized args
-				logMessage(getCurrentProject(), MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Unknown_argument__{0}_2"), new Object[]{arg}), Project.MSG_ERR); //$NON-NLS-1$
-				printUsage();
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * Creates the log file with the name specified by the user.
-	 * If the fileName is not absolute, the file will be created in the
-	 * working directory if specified or in the same directory as the location
-	 * of the build file.
	 */
-	protected void createLogFile(String fileName) throws FileNotFoundException, IOException {
-		File logFile = getFileRelativeToBaseDir(fileName);
-		
-		//this stream is closed in the finally block of run(list)
-		out = new PrintStream(new FileOutputStream(logFile));
-		err = out;
-		logMessage(getCurrentProject(), MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Using_{0}_file_as_build_log._1"), new String[]{logFile.getCanonicalPath()}), Project.MSG_INFO); //$NON-NLS-1$
-		if (buildLogger != null) {
-			buildLogger.setErrorPrintStream(err);
-			buildLogger.setOutputPrintStream(out);
-		}
-	}
-
-	protected File getFileRelativeToBaseDir(String fileName) {
-		IPath path= new Path(fileName);
-		if (!path.isAbsolute()) {
-			String base= getCurrentProject().getUserProperty("basedir"); //$NON-NLS-1$
-			if (base != null) {
-				File baseDir= new File(base);
-				if (baseDir != null) {
-					//relative to the base dir
-					path= new Path(baseDir.getAbsolutePath());
-				} 
-			} else {
-				//relative to the build file location
-				path= new Path(getBuildFileLocation());
-				path= path.removeLastSegments(1);
-			}
-			path= path.addTrailingSeparator();
-			path= path.append(fileName);
-		}
-		
-		return path.toFile();
-	}
-
-	/**
-	 * Processes cmd line properties and adds the user properties
-	 * Any user properties that have been explicitly set are set as well.
-	 * Ensures that -D properties take precedence.
	 * 
	 */
-	protected void processProperties(List commands) {
-		//MULTIPLE property files are allowed
-		String[] args= getArgument(commands, "-propertyfile"); //$NON-NLS-1$
-		while(args != null) {
-			if (getAntVersion().indexOf("1.5") == -1) { //$NON-NLS-1$
-				logMessage(currentProject, InternalAntMessages.getString("InternalAntRunner.Specifying_property_files_is_a_Ant_1.5.*_feature._Please_update_your_Ant_classpath._6"), Project.MSG_ERR); //$NON-NLS-1$
-				break;
-			}
-			if (args.length == 0) {
-				String message= InternalAntMessages.getString("InternalAntRunner.You_must_specify_a_property_filename_when_using_the_-propertyfile_argument_3"); //$NON-NLS-1$
-				logMessage(currentProject, message, Project.MSG_ERR); 
-				throw new BuildException(message);
-			} 
-			
-			propertyFiles.add(args[0]);
-			args= getArgument(commands, "-propertyfile"); //$NON-NLS-1$
-		}
-		
-		String[] globalPropertyFiles= AntCorePlugin.getPlugin().getPreferences().getCustomPropertyFiles();
-		if (globalPropertyFiles.length > 0) {
-			if (propertyFiles == null) {
-				propertyFiles= new ArrayList(globalPropertyFiles.length);
-			}
-			propertyFiles.addAll(Arrays.asList(globalPropertyFiles));
-		}
-		
-		if (propertyFiles != null) {
-			loadPropertyFiles();
-		}
-		
-		if (commands == null) {
-			return;
-		}
-		args = (String[]) commands.toArray(new String[commands.size()]);
-		for (int i = 0; i < args.length; i++) {
-			String arg = args[i];
-			if (arg.startsWith("-D")) { //$NON-NLS-1$
-
-				/* Interestingly enough, we get to here when a user
-				 * uses -Dname=value. However, in some cases, the JDK
-				 * goes ahead and parses this out to args
-				 *   {"-Dname", "value"}
-				 * so instead of parsing on "=", we just make the "-D"
-				 * characters go away and skip one argument forward.
-				 *
-				 * I don't know how to predict when the JDK is going
-				 * to help or not, so we simply look for the equals sign.
-				 */
-
-				String name = arg.substring(2, arg.length());
-				String value = null;
-				int posEq = name.indexOf("="); //$NON-NLS-1$
-				if (posEq > 0) {
-					value = name.substring(posEq + 1);
-					name = name.substring(0, posEq);
-				} else if (i < args.length - 1) {
-					value = args[++i];
-				}
-				if (userProperties == null) {
-					userProperties= new HashMap();
-				}
-				userProperties.put(name, value);
-				commands.remove(args[i]);
-			}
-		}
-	}
-
-	/**
-	 * Print the project description, if any
-	 */
-	protected void printHelp(Project project) {
-		if (project.getDescription() != null) {
-			logMessage(project, project.getDescription(), Project.MSG_INFO);
-		}
-		printTargets(project);
-	}
-
-	/**
-	 * Logs a message with the client indicating the version of <b>Ant</b> that this class
-	 * fronts.
-	 */
-	protected void printVersion() {
-		logMessage(getCurrentProject(), getAntVersion(), Project.MSG_INFO);
-	}
-
-	/**
-	 * Logs a message with the client outlining the usage of <b>Ant</b>.
-	 */
-	protected void printUsage() {
-		String lSep = System.getProperty("line.separator"); //$NON-NLS-1$
-		StringBuffer msg = new StringBuffer();
-		msg.append("ant ["); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.options_13")); //$NON-NLS-1$
-		msg.append("] ["); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.target_15")); //$NON-NLS-1$
-		msg.append(" ["); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.target_15")); //$NON-NLS-1$
-		msg.append("2 ["); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.target_15")); //$NON-NLS-1$
-		msg.append("3] ...]]"); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append(InternalAntMessages.getString("InternalAntRunner.Options___21")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-help\t\t\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.print_this_message_23")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-projecthelp\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.print_project_help_information_25")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-version\t\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.print_the_version_information_and_exit_27")); //$NON-NLS-1$
-		msg.append(lSep); 
-	 	msg.append("\t-diagnostics\t\t\t\t\t\t"); //$NON-NLS-1$
-	 	msg.append(InternalAntMessages.getString("InternalAntRunner.print_information_that_might_be_helpful_to_12")); //$NON-NLS-1$
-	 	msg.append(lSep);
-        msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tdiagnose_or_report_problems._13")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-quiet, -q\t\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.be_extra_quiet_29")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-verbose, -v\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.be_extra_verbose_31")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-debug\t\t\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.print_debugging_information_33")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-emacs\t\t\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.produce_logging_information_without_adornments_35")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-logfile\t<file>\t\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.use_given_file_for_log_37")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t\t-l\t\t<file>"); //$NON-NLS-1$
		msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_t_____15")); //$NON-NLS-1$ //$NON-NLS-2$
-		msg.append(lSep);  
-		msg.append("\t-logger <classname>\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.the_class_which_is_to_perform_logging_39")); //$NON-NLS-1$
-		msg.append(lSep);  
-		msg.append("\t-listener <classname>\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.add_an_instance_of_class_as_a_project_listener_41")); //$NON-NLS-1$
-		msg.append(lSep); 
-		msg.append("\t-buildfile\t<file>\t\t\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.use_given_buildfile_43")); //$NON-NLS-1$
-		msg.append(lSep); 
-		msg.append("\t\t-file\t\t<file>"); //$NON-NLS-1$
		msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_____1")); //$NON-NLS-2$
-		msg.append(lSep);
-        msg.append("\t\t-f\t\t\t<file>"); //$NON-NLS-1$
        msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_____1")); //$NON-NLS-2$
-		msg.append(lSep);
-		msg.append("\t-D<property>=<value>\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.use_value_for_given_property_45")); //$NON-NLS-1$
-		msg.append(lSep);
-		msg.append("\t-propertyfile <name>\t\t"); //$NON-NLS-1$
-		msg.append(InternalAntMessages.getString("InternalAntRunner.load_all_properties_from_file_with_-D_19")); //$NON-NLS-1$
-		msg.append(lSep);
-        msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tproperties_taking_precedence_20")); //$NON-NLS-1$
-        msg.append(lSep);
-        msg.append("\t-inputhandler <class>\t\t"); //$NON-NLS-1$
       	msg.append(InternalAntMessages.getString("InternalAntRunner.the_class_which_will_handle_input_requests_22")); //$NON-NLS-2$
-        msg.append(lSep);
-        msg.append("\t-find <file>\t\t\t\t\t\t"); //$NON-NLS-1$
-        msg.append(InternalAntMessages.getString("InternalAntRunner.search_for_buildfile_towards_the_root_of_the_24")); //$NON-NLS-1$
-        msg.append(lSep);
-        msg.append(InternalAntMessages.getString("InternalAntRunner._t_t_t_t_t_t_t_t_t_t_tfilesystem_and_use_it_25")); //$NON-NLS-1$
-        msg.append(lSep);
-
-		logMessage(getCurrentProject(), msg.toString(), Project.MSG_INFO);
-	}
-
-	/**
-	 * From a command line list, get the array of arguments of a given parameter.
-	 * The parameter and its argument are removed from the list.
-	 * 
-	 * @return <code>null</code> if the parameter is not found 
-	 * 			or an empty array if no arguments are found
-	 */
-	protected String[] getArgument(List commands, String param) {
-		if (commands == null) {
-			return null;
-		}
-		int index = commands.indexOf(param);
-		if (index == -1) {
-			return null;
-		}
-		commands.remove(index);
-		if (index == commands.size()) {// if this is the last command
-			return new String[]{};
-		}
-		String[] args= new String[1];
-		
-		String command = (String) commands.get(index);
-		if (command.startsWith("-")) { //new parameter //$NON-NLS-1$
-			return new String[]{};
-		}
-		args[0]= command;
-		commands.remove(index);
-		
-		return args;
-	}
-
-	/**
-	 * Helper method to ensure an array is converted into an ArrayList.
-	 */
-	private ArrayList getArrayList(String[] args) {
-		if (args == null) {
-			return null;
-		}
-		// We could be using Arrays.asList() here, but it does not specify
-		// what kind of list it will return. We need a list that
-		// implements the method List.remove(Object) and ArrayList does.
-		ArrayList result = new ArrayList(args.length);
-		for (int i = 0; i < args.length; i++) {
-			result.add(args[i]);
-		}
-		return result;
-	}
-
-	/**
-	 * Sets the build progress monitor.
-	 */
-	public void setProgressMonitor(IProgressMonitor monitor) {
-		this.monitor = monitor;
-	}
-
-	protected Project getCurrentProject() {
-		return currentProject;
-	}
-
-	protected void setCurrentProject(Project currentProject) {
-		this.currentProject = currentProject;
-	}
-	
-	public String getBuildExceptionErrorMessage(Throwable t) {
-		if (t instanceof BuildException) {
-			return t.toString();
-		}
-		return null;
-	}
-	
-	/**
-	 * Load all properties from the files 
-	 * specified by -propertyfile.
	 */
-	protected void loadPropertyFiles() {
-		Iterator itr= propertyFiles.iterator();
-        while (itr.hasNext()) {
-            String filename= (String) itr.next();
-           	File file= getFileRelativeToBaseDir(filename);
-            Properties props = new Properties();
-            FileInputStream fis = null;
-            try {
-                fis = new FileInputStream(file);
-                props.load(fis);
-            } catch (IOException e) {
-            	String msg= MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Could_not_load_property_file_{0}__{1}_4"), new String[]{filename, e.getMessage()}); //$NON-NLS-1$
-            	logMessage(getCurrentProject(), msg, Project.MSG_ERR);
-            } finally {
-                if (fis != null) {
-                    try {
-                        fis.close();
-                    } catch (IOException e){
-                    }
-                }
-            }
-
-            if (userProperties == null) {
-            	userProperties= new HashMap();
-            }
-            Enumeration propertyNames = props.propertyNames();
-            while (propertyNames.hasMoreElements()) {
-                String name = (String) propertyNames.nextElement();
-            	userProperties.put(name, props.getProperty(name));
-            }
-        }
-	}
-	
-	/**
-     * Creates the InputHandler and adds it to the project.
-     *
-     * @exception BuildException if a specified InputHandler
-     *                           implementation could not be loaded.
-     */
-    private void addInputHandler(Project project) {
-    	if (getAntVersion().indexOf("1.5") == -1) { //$NON-NLS-1$
-			return;
-		}
-        InputHandler handler = null;
-        if (inputHandlerClassname == null) {
-            handler = new DefaultInputHandler();
-        } else {
-            try {
-                handler = (InputHandler)(Class.forName(inputHandlerClassname).newInstance());
-            } catch (ClassCastException e) {
-                String msg = MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.The_specified_input_handler_class_{0}_does_not_implement_the_org.apache.tools.ant.input.InputHandler_interface_5"), new String[]{inputHandlerClassname}); //$NON-NLS-1$
-                throw new BuildException(msg, e);
-            } catch (Exception e) {
-                String msg = MessageFormat.format(InternalAntMessages.getString("InternalAntRunner.Unable_to_instantiate_specified_input_handler_class_{0}___{1}_6"), new String[]{inputHandlerClassname, e.getClass().getName()}); //$NON-NLS-1$
-                throw new BuildException(msg, e);
-            }
-        }
-        project.setInputHandler(handler);
-    }
-
-	/**
-	 * Sets the Java class path in org.apache.tools.ant.types.Path
-	 */
-	private void setJavaClassPath() {
-		
-		AntCorePreferences prefs= AntCorePlugin.getPlugin().getPreferences();
-		URL[] antClasspath= prefs.getAntURLs();
-		StringBuffer buff= new StringBuffer();
-		for (int i = 0; i < antClasspath.length; i++) {
-			URL url = antClasspath[i];
-			IPath path= null;
-			try {
-				path = new org.eclipse.core.runtime.Path(Platform.asLocalURL(url).getFile());
-			} catch (IOException e) {
-				continue;
-			}
-			buff.append(path.toOSString());
-			buff.append("; "); //$NON-NLS-1$
-		}
-
-		org.apache.tools.ant.types.Path systemClasspath= new org.apache.tools.ant.types.Path(null, buff.substring(0, buff.length() - 2));
-		org.apache.tools.ant.types.Path.systemClasspath= systemClasspath;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/ProgressBuildListener.java b/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/ProgressBuildListener.java
deleted file mode 100644
index 105847b..0000000
--- a/ant/org.eclipse.ant.core/src_ant/org/eclipse/ant/internal/core/ant/ProgressBuildListener.java
+++ /dev/null
@@ -1,266 +0,0 @@
-package org.eclipse.ant.internal.core.ant;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.*;
-
-import org.apache.tools.ant.*;
-import org.apache.tools.ant.taskdefs.Ant;
-import org.apache.tools.ant.taskdefs.CallTarget;
-import org.eclipse.ant.core.AntCorePlugin;
-import org.eclipse.core.runtime.*;
-
-/**
- * Reports progress and checks for cancelation of a script execution.
- */
-public class ProgressBuildListener implements BuildListener {
-
-	protected Map projects;
-	protected Project mainProject;
-	protected Project parentProject;
-
-	/**
-	 *  Contains the progress monitor instances for the various
	 *	projects in a chain.
-	 */
-	protected class ProjectMonitors {
-		/**
-		 *  This field is null for the main project
		 */
-		private Target mainTarget;
-		private IProgressMonitor mainMonitor;
-		private IProgressMonitor targetMonitor;
-		private IProgressMonitor taskMonitor;
-		
-		protected IProgressMonitor getMainMonitor() {
-			return mainMonitor;
-		}
-
-		protected Target getMainTarget() {
-			return mainTarget;
-		}
-
-		protected IProgressMonitor getTargetMonitor() {
-			return targetMonitor;
-		}
-
-		protected IProgressMonitor getTaskMonitor() {
-			return taskMonitor;
-		}
-
-		protected void setMainMonitor(IProgressMonitor mainMonitor) {
-			this.mainMonitor = mainMonitor;
-		}
-
-		protected void setMainTarget(Target mainTarget) {
-			this.mainTarget = mainTarget;
-		}
-
-		protected void setTargetMonitor(IProgressMonitor targetMonitor) {
-			this.targetMonitor = targetMonitor;
-		}
-
-		protected void setTaskMonitor(IProgressMonitor taskMonitor) {
-			this.taskMonitor = taskMonitor;
-		}
-
-	}
-
-	public ProgressBuildListener(Project project, List targetNames, IProgressMonitor monitor) {
-		projects = new HashMap();
-		mainProject = project;
-		ProjectMonitors monitors = new ProjectMonitors();
-		if (monitor == null) {
-			monitor= new NullProgressMonitor();
-		}
-		monitors.setMainMonitor(monitor);
-		projects.put(mainProject, monitors);
-		Target[] targets = new Target[targetNames.size()];
-		for (int i = 0; i < targetNames.size(); i++) {
-			String targetName = (String) targetNames.get(i);
-			targets[i] = (Target) mainProject.getTargets().get(targetName);
-		}
-		int work = computeWork(targets);
-		monitors.getMainMonitor().beginTask("", work);  //$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildStarted(BuildEvent event) {
-		checkCanceled();
-	}
-
-	protected int computeWork(Target[] targets) {
-		int result = 0;
-		for (int i = 0; i < targets.length; i++) {
-			result = result + countTarget(targets[i]);
-		}
-		return result;
-	}
-
-	protected int countTarget(Target target) {
-		int result = 1;
-		Project project = target.getProject();
-		Hashtable targets= project.getTargets();
-		for (Enumeration dependencies = target.getDependencies(); dependencies.hasMoreElements();) {
-			String targetName = (String) dependencies.nextElement();
-			Target dependency = (Target)targets.get(targetName);
-			if (dependency != null) {
-				result = result + countTarget(dependency);
-			}
-		}
-		// we have to handle antcall tasks as well
-		Task[] tasks = target.getTasks();
-		for (int i = 0; i < tasks.length; i++) {
-			if (tasks[i] instanceof CallTarget) {
-				// As we do not have access to the information (at least in Ant 1.4.1)
-				// describing what target is executed by this antcall task, we assume
-				// a scenario where it depends on all targets of the project but itself.
-				result = result + (targets.size() - 1);
-			}
-		}
-		return result;
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildFinished(BuildEvent event) {
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(mainProject);
-		monitors.getMainMonitor().done();
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetStarted(BuildEvent event) {
-		checkCanceled();
-		Project currentProject = event.getProject();
-		if (currentProject == null) {
-			return;
-		}
-		Target target = event.getTarget();
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(currentProject);
-
-		// if monitors is null we are in a new script
-		if (monitors == null) {
-			monitors = createMonitors(currentProject, target);
-		}
-
-		monitors.setTargetMonitor(subMonitorFor(monitors.getMainMonitor(), 1));
-		int work = (target != null) ? target.getTasks().length : 100;
-		monitors.getTargetMonitor().beginTask("", work);  //$NON-NLS-1$
-	}
-
-	protected ProjectMonitors createMonitors(Project currentProject, Target target) {
-		ProjectMonitors monitors = new ProjectMonitors();
-		// remember the target so we can remove this monitors object later
-		monitors.setMainTarget(target);
-		int work = computeWork(new Target[] { target });
-		ProjectMonitors parentMonitors = null;
-		if (parentProject == null) {
-			parentMonitors = (ProjectMonitors) projects.get(mainProject);
-			monitors.setMainMonitor(subMonitorFor(parentMonitors.getMainMonitor(), 1));
-		} else {
-			parentMonitors = (ProjectMonitors) projects.get(parentProject);
-			parentProject = null;
-			monitors.setMainMonitor(subMonitorFor(parentMonitors.getTaskMonitor(), 1));
-		}
-		monitors.getMainMonitor().beginTask("", work);  //$NON-NLS-1$
-		projects.put(currentProject, monitors);
-		return monitors;
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetFinished(BuildEvent event) {
-		checkCanceled();
-		Project currentProject = event.getProject();
-		if (currentProject == null) {
-			return;
-		}
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(currentProject);
-		if (monitors == null) {
-			return;
-		}
-		monitors.getTargetMonitor().done();
-		// if this is not the main project test if we are done with this project
-		if ((currentProject != mainProject) && (monitors.getMainTarget() == event.getTarget())) {
-			monitors.getMainMonitor().done();
-			projects.remove(currentProject);
-		}
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskStarted(BuildEvent event) {
-		checkCanceled();
-		Project currentProject = event.getProject();
-		if (currentProject == null) {
-			return;
-		}
-		currentProject.getReferences().remove(AntCorePlugin.ECLIPSE_PROGRESS_MONITOR);
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(currentProject);
-		if (monitors == null) {
-			return;
-		}
-		Task task = event.getTask();
-		if (task == null) {
-			return;
-		}
-		monitors.setTaskMonitor(subMonitorFor(monitors.getTargetMonitor(), 1));
-		monitors.getTaskMonitor().beginTask("", 1);  //$NON-NLS-1$
-		// If this script is calling another one, track the project chain.
-		if (task instanceof Ant) {
-			parentProject = currentProject;
-		} else {
-			currentProject.addReference(AntCorePlugin.ECLIPSE_PROGRESS_MONITOR, monitors.getTaskMonitor());
-		}
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskFinished(BuildEvent event) {
-		checkCanceled();
-		Project project = event.getProject();
-		if (project == null) {
-			return;
-		}
-		project.getReferences().remove(AntCorePlugin.ECLIPSE_PROGRESS_MONITOR);
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(project);
-		if (monitors == null) {
-			return;
-		}
-		monitors.getTaskMonitor().done();
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#messageLogged(org.apache.tools.ant.BuildEvent)
-	 */
-	public void messageLogged(BuildEvent event) {
-	}
-
-	protected void checkCanceled() {
-		ProjectMonitors monitors = (ProjectMonitors) projects.get(mainProject);
-		if (monitors.getMainMonitor().isCanceled()) {
-			throw new OperationCanceledException(InternalAntMessages.getString("ProgressBuildListener.Build_cancelled._5")); //$NON-NLS-1$
-		}
-	}
-
-	protected IProgressMonitor subMonitorFor(IProgressMonitor monitor, int ticks) {
-		if (monitor == null) {
-			return new NullProgressMonitor();
-		}
-		if (monitor instanceof NullProgressMonitor) {
-			return monitor;
-		}
-		return new SubProgressMonitor(monitor, ticks);
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/.classpath b/ant/org.eclipse.ant.tests.core/.classpath
deleted file mode 100644
index 6026612..0000000
--- a/ant/org.eclipse.ant.tests.core/.classpath
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="test plugin"/>
-    <classpathentry kind="src" path="tests"/>
-    <classpathentry kind="src" path="test support"/>
-    <classpathentry kind="src" path="/org.apache.ant"/>
-    <classpathentry kind="src" path="/org.junit"/>
-    <classpathentry kind="src" path="/org.eclipse.core.resources"/>
-    <classpathentry kind="src" path="/org.apache.xerces"/>
-    <classpathentry kind="src" path="/org.eclipse.jdt.core"/>
-    <classpathentry kind="src" path="/org.eclipse.ui"/>
-    <classpathentry kind="src" path="/org.eclipse.ant.core"/>
-    <classpathentry kind="src" path="/org.eclipse.update.core"/>
-    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/ant/org.eclipse.ant.tests.core/.cvsignore b/ant/org.eclipse.ant.tests.core/.cvsignore
deleted file mode 100644
index 57b480f..0000000
--- a/ant/org.eclipse.ant.tests.core/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-lib
diff --git a/ant/org.eclipse.ant.tests.core/.project b/ant/org.eclipse.ant.tests.core/.project
deleted file mode 100644
index 87d1449..0000000
--- a/ant/org.eclipse.ant.tests.core/.project
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.ant.tests.core</name>
-	<comment></comment>
-	<projects>
-		<project>org.apache.ant</project>
-		<project>org.apache.xerces</project>
-		<project>org.eclipse.ant.core</project>
-		<project>org.eclipse.core.boot</project>
-		<project>org.eclipse.core.resources</project>
-		<project>org.eclipse.core.runtime</project>
-		<project>org.eclipse.jdt.core</project>
-		<project>org.eclipse.ui</project>
-		<project>org.eclipse.update.core</project>
-		<project>org.junit</project>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/ant/org.eclipse.ant.tests.core/about.html b/ant/org.eclipse.ant.tests.core/about.html
deleted file mode 100644
index d57b432..0000000
--- a/ant/org.eclipse.ant.tests.core/about.html
+++ /dev/null
@@ -1,30 +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">
-<h2>About This Content</h2>
- 
-<p>16th October, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/build.properties b/ant/org.eclipse.ant.tests.core/build.properties
deleted file mode 100644
index d2b2da2..0000000
--- a/ant/org.eclipse.ant.tests.core/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-bin.includes = plugin.xml,\
-			   plugin.properties,\
-               test.xml,\
-               about.html,\
-               testscripts/,\
-               testresources/,\
-               testlib/,\
-               lib/,\
-               *.jar
-               
-source.anttestscore.jar = test plugin/,\
-                         tests/,\
-                         test support/,\
-                         testresources/,\
-                         scripts/
diff --git a/ant/org.eclipse.ant.tests.core/lib/antTestsSupport.jar b/ant/org.eclipse.ant.tests.core/lib/antTestsSupport.jar
deleted file mode 100644
index fd793ca..0000000
--- a/ant/org.eclipse.ant.tests.core/lib/antTestsSupport.jar
+++ /dev/null
Binary files differ
diff --git a/ant/org.eclipse.ant.tests.core/plugin.properties b/ant/org.eclipse.ant.tests.core/plugin.properties
deleted file mode 100644
index 0c331bc..0000000
--- a/ant/org.eclipse.ant.tests.core/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-######################################################################
-# Copyright (c) 2000, 2002 IBM Corp. and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Common Public License v0.5
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/cpl-v05.html
-#
-# Contributors:
-#    IBM Corporation - Initial implementation
-######################################################################
-
-pluginName=Ant Core Test Plugin
-providerName=Eclipse.org
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/plugin.xml b/ant/org.eclipse.ant.tests.core/plugin.xml
deleted file mode 100644
index 7c27732..0000000
--- a/ant/org.eclipse.ant.tests.core/plugin.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<plugin
-   id="org.eclipse.ant.tests.core"
-   name="%pluginName"
-   version="2.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.ant.tests.core.testplugin.AntTestPlugin">
-   
-   <requires>
-      <import plugin="org.apache.ant"/>
-	  <import plugin="org.junit"/>   
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.apache.xerces"/>
-      <import plugin="org.eclipse.jdt.core"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.ant.core"/>
-      <import plugin="org.eclipse.update.core"/>
-   </requires>
-
-<runtime>
-  <library name="anttestscore.jar" >
-     <export name = "*"/>
-  </library> 
-</runtime>
-
-<extension id="app" point="org.eclipse.core.runtime.applications">
-  <application> 
-     <run class="org.eclipse.ant.tests.core.testplugin.TestWorkbench">
-		<parameter name="productInfo" value="product.ini"/>
-     </run>
-  </application>
-</extension>
-
-<extension point="org.eclipse.ant.core.extraClasspathEntries">
-		<extraClasspathEntry
-		library="lib/antTestsSupport.jar">
-	</extraClasspathEntry>
-</extension>
-
-</plugin>
diff --git a/ant/org.eclipse.ant.tests.core/scripts/buildAntTestsSupportJAR.xml b/ant/org.eclipse.ant.tests.core/scripts/buildAntTestsSupportJAR.xml
deleted file mode 100644
index 7a0ca1c..0000000
--- a/ant/org.eclipse.ant.tests.core/scripts/buildAntTestsSupportJAR.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="build tests support jar" default="build" basedir="..">
-
-	<property name="bootclasspath" value=""/>
-
-	<target name="build">
-		<antcall target="clean"/>
-		<antcall target="lib/antTestsSupport.jar"/>
-		<antcall target="refresh"/>
-	</target>
-
-	<target name="init" depends="properties">
-		<property name="plugin" value="org.eclipse.ant.tests.core"/>
-		<property name="version.suffix" value="_2.1.0"/>
-		<property name="full.name" value="${plugin}${version.suffix}"/>
-		<property name="temp.folder" value="${basedir}/temp.folder"/>
-		<property name="plugin.destination" value="${basedir}"/>
-		<property name="build.result.folder" value="${basedir}"/>
-		<property name="win32.jar" value="${basedir}/../org.eclipse.swt.win32/ws/win32/swt.jar"/>
-		<property name="gtk.jar" value="${basedir}/../org.eclipse.swt.gtk/ws/gtk/swt.jar"/>
-		<property name="motif.jar" value="${basedir}/../org.eclipse.swt.motif/ws/motif/swt.jar"/>
-		<available file="${win32.jar}" property="swt.jar" value="${win32.jar}"/>
-		<available file="${gtk.jar}" property="swt.jar" value="${gtk.jar}"/>
-		<available file="${motif.jar}" property="swt.jar" value="${motif.jar}"/>
-	</target>
-
-	<target name="properties" if="eclipse.running">
-		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
-	</target>
-
-	<target name="lib/antTestsSupport.jar" depends="init">
-		<property name="destdir" value="${temp.folder}/lib/antTestsSupport.jar.bin"/>
-		<delete dir="${temp.folder}/lib/antTestsSupport.jar.bin"/>
-		<mkdir dir="${temp.folder}/lib/antTestsSupport.jar.bin"/>
-		<!-- compile the source code -->
-		<javac target="1.3" source="1.3" destdir="${temp.folder}/lib/antTestsSupport.jar.bin" failonerror="false" verbose="false" debug="on" includeAntRuntime="no" bootclasspath="${bootclasspath}" classpath="${basedir}/../org.eclipse.core.runtime/runtime.jar;${basedir}/../org.apache.ant/ant.jar;${basedir}/../org.apache.xerces/xercesImpl.jar;${basedir}/../org.apache.xerces/xmlParserAPIs.jar;${basedir}/bin;${basedir}/../org.eclipse.core.boot/boot.jar;${basedir}/../org.eclipse.ant.core/bin">
-			<src path="test support/"/>
-		</javac>
-		<mkdir dir="${build.result.folder}/lib"/>
-		<jar jarfile="${build.result.folder}/lib/antTestsSupport.jar" basedir="${temp.folder}/lib/antTestsSupport.jar.bin"/>
-		<delete dir="${temp.folder}"/>
-	</target>
-
-	<target name="clean" depends="init">
-		<delete file="${build.result.folder}/lib/antTestsSupport.jar"/>
-		<delete dir="${temp.folder}"/>
-	</target>
-
-	<target name="refresh" depends="init" if="eclipse.running">
-		<eclipse.refreshLocal resource="${plugin}" depth="infinite"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntFileRunner.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntFileRunner.java
deleted file mode 100644
index 684638d..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntFileRunner.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.eclipse.ant.core.AntRunner;
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * Responsible for running test ant build files.
- */
-public class AntFileRunner {
-	
-	private static final String BASE_DIR_PREFIX = "-Dbasedir="; //$NON-NLS-1$
-
-	public void run(IFile buildFile, String[] targets, String[] args, String baseDir, boolean captureOutput) throws CoreException {
-	
-		AntRunner runner = new AntRunner();
-
-		String[] runnerArgs = args;
-
-		if (baseDir.length() > 0) {
-			// Ant requires the working directory to be specified
-			// as one of the arguments, so it needs to be appended.
-			int length = 1;
-			if (args != null) {
-				length = args.length + 1;
-			} 
-			
-			runnerArgs = new String[length];
-			if (args != null) {
-				System.arraycopy(args, 0, runnerArgs, 0, args.length);
-			}
-			runnerArgs[length - 1] = BASE_DIR_PREFIX + baseDir;
-		}
-		runner.setArguments(runnerArgs);
-
-		if (buildFile != null) {
-			runner.setBuildFileLocation(buildFile.getLocation().toFile().toString());
-		}
-		if (targets != null && targets.length > 0) {
-			runner.setExecutionTargets(targets);
-		}
-		if (captureOutput) {
-			runner.addBuildLogger(AbstractAntTest.ANT_TEST_BUILD_LOGGER);
-		}
-
-		runner.run(null);
-	}
-	
-	public void run(String[] args, String baseDir) throws Exception {
-	
-		AntRunner runner = new AntRunner();
-
-		String[] runnerArgs = args;
-
-		if (baseDir.length() > 0) {
-			// Ant requires the working directory to be specified
-			// as one of the arguments, so it needs to be appended.
-			runnerArgs = new String[args.length + 1];
-			System.arraycopy(args, 0, runnerArgs, 0, args.length);
-			runnerArgs[args.length] = BASE_DIR_PREFIX + baseDir;
-		}
-		runner.setArguments(runnerArgs);
-
-		runner.run(args);
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestChecker.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestChecker.java
deleted file mode 100644
index ccd1ec6..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestChecker.java
+++ /dev/null
@@ -1,224 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.*;
-import java.util.ArrayList;
-import java.util.List;
-
-public class AntTestChecker {
-	
-	private static AntTestChecker deflt= null;
-	
-	private int taskStartedCount;
-	
-	private int taskFinishedCount;
-	
-	private int targetsStartedCount;
-	
-	private int targetsFinishedCount;
-	
-	private int buildsStartedCount;
-	
-	private int buildsFinishedCount;
-	
-	private List messages= new ArrayList();
-	
-	private List targets= new ArrayList();
-	
-	private List tasks= new ArrayList();
-	
-	private List projects= new ArrayList();
-	
-	private String currentProject;
-	
-	private String currentTask;
-	
-	private String currentTarget;
-	
-	private Hashtable userProperties;
-	
-	private List nameOfListeners= new ArrayList();
-	
-	private AntTestChecker()  {
-	}
-	
-	/**
-	 * Returns the singleton AntLoggerChecker
-	 */
-	public static AntTestChecker getDefault() {
-		if (deflt == null) {
-			deflt= new AntTestChecker();
-		}
-		return deflt;
-	}
-	
-	/**
-	 * Returns the singleton AntLoggerChecker
-	 */
-	public static void reset() {
-		if (deflt != null) {
-			deflt.resetState();
-		}
-	}
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildFinished(String projectName) {
-		buildsFinishedCount++;
-	}
-
-	
-	public void buildStarted(String projectName) {
-		buildsStartedCount++;
-		projects.add(projectName);
-		currentProject= projectName;
-	}
-
-	
-	public void messageLogged(String message) {
-		messages.add(message);
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetFinished(String targetName) {
-		targetsFinishedCount++;
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetStarted(String targetName) {
-		targetsStartedCount++;
-		targets.add(targetName);
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskFinished(String taskName) {
-		taskFinishedCount++;
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskStarted(String taskName) {
-		taskStartedCount++;
-		tasks.add(taskName);
-	}
-	
-	/**
-	 * Returns the buildsFinishedCount.
-	 * @return int
-	 */
-	public int getBuildsFinishedCount() {
-		return buildsFinishedCount;
-	}
-
-	/**
-	 * Returns the buildsStartedCount.
-	 * @return int
-	 */
-	public int getBuildsStartedCount() {
-		return buildsStartedCount;
-	}
-
-	/**
-	 * Returns the messagesLoggedCount.
-	 * @return int
-	 */
-	public int getMessagesLoggedCount() {
-		return messages.size();
-	}
-
-	/**
-	 * Returns the targetsFinishedCount.
-	 * @return int
-	 */
-	public int getTargetsFinishedCount() {
-		return targetsFinishedCount;
-	}
-
-	/**
-	 * Returns the targetsStartedCount.
-	 * @return int
-	 */
-	public int getTargetsStartedCount() {
-		return targetsStartedCount;
-	}
-
-	/**
-	 * Returns the taskFinishedCount.
-	 * @return int
-	 */
-	public int getTaskFinishedCount() {
-		return taskFinishedCount;
-	}
-
-	/**
-	 * Returns the taskStartedCount.
-	 * @return int
-	 */
-	public int getTaskStartedCount() {
-		return taskStartedCount;
-	}
-	
-	protected void resetState() {
-		taskStartedCount= 0;
-		taskFinishedCount= 0;
-		targetsStartedCount= 0;
-		targetsFinishedCount= 0;
-		buildsStartedCount= 0;
-		buildsFinishedCount= 0;
-		messages= new ArrayList();
-		tasks= new ArrayList();
-		targets= new ArrayList();
-		projects= new ArrayList();
-		userProperties= null;
-		currentProject= null;
-		currentTarget= null;
-		currentTask= null;
-		nameOfListeners= new ArrayList();
-	}
-	
-	
-	public String getLastMessageLogged() {
-		if (messages.isEmpty()) {
-			return null;
-		}
-		return (String) messages.get(messages.size() - 1);
-	}
-	
-	public void setUserProperties(Hashtable userProperties) {
-		this.userProperties= userProperties;
-	}
-
-	public String getUserProperty(String name) {
-		return (String)userProperties.get(name);
-	}
-	
-	public List getMessages() {
-		return messages;
-	}
-	
-	public List getListeners() {
-		return nameOfListeners;
-	}
-	
-	public String getLastListener() {
-		return (String)nameOfListeners.get(nameOfListeners.size() - 1);
-	}
-
-
-	public void addNameOfListener(String nameOfListener) {
-		this.nameOfListeners.add(nameOfListener);
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestPlugin.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestPlugin.java
deleted file mode 100644
index 947b1ea..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/AntTestPlugin.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-
-public class AntTestPlugin extends AbstractUIPlugin {
-	
-	private static AntTestPlugin deflt;
-	
-	public AntTestPlugin(IPluginDescriptor descriptor) {
-		super(descriptor);
-		deflt= this;
-	}
-	
-	public static AntTestPlugin getDefault() {
-		return deflt;
-	}
-	
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-	
-	public static void enableAutobuild(boolean enable) throws CoreException {
-		// disable auto build
-		IWorkspace workspace= AntTestPlugin.getWorkspace();
-		IWorkspaceDescription desc= workspace.getDescription();
-		desc.setAutoBuilding(enable);
-		workspace.setDescription(desc);
-	}
-	
-	public File getFileInPlugin(IPath path) {
-		try {
-			URL installURL= new URL(getDescriptor().getInstallURL(), path.toString());
-			URL localURL= Platform.asLocalURL(installURL);
-			return new File(localURL.getFile());
-		} catch (IOException e) {
-			return null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/Main.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/Main.java
deleted file mode 100644
index e44d2f2..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/Main.java
+++ /dev/null
@@ -1,531 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-// copied from startup.jar. planned to be removed soon
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-import java.io.FileFilter;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.net.*;
-import java.util.*;
-
-/**
- * Startup class for Eclipse. Creates a class loader using
- * supplied URL of platform installation, loads and calls
- * the Eclipse Boot Loader.  The startup arguments are as follows:
- * <dl>
- * <dd>
- *    -application &lt;id&gt;: the identifier of the application to run
- * </dd>
- * <dd>
- *    -boot &lt;location&gt;: the location, expressed as a URL, of the platform's boot.jar
- * </dd>
- * <dd>
- *    -consolelog : enables log to the console. Handy when combined with -debug
- * </dd>
- * <dd>
- *    -data &lt;location&gt;: sets the workspace location and the default location for projects
- * </dd>
- * <dd>
- *    -debug [options file]: turns on debug mode for the platform and optionally specifies a location
- * for the .options file. This file indicates what debug points are available for a
- * plug-in and whether or not they are enabled. If a location is not specified, the platform searches
- * for the .options file under the install directory
- * </dd>
- * <dd>
- *    -dev [entries]: turns on dev mode and optionally specifies comma-separated class path entries
- * which are added to the class path of each plug-in
- * </dd>
- * <dd>
- *    -keyring &lt;location&gt;: the location of the authorization database on disk. This argument
- * has to be used together with the -password argument
- * </dd>
- * <dd>
- *    -password &lt;passwd&gt;: the password for the authorization database
- * </dd>
- * <dd>
- *    -plugins &lt;location&gt;: The arg is a URL pointing to a file which specs the plugin 
- * path for the platform.  The file is in property file format where the keys are user-defined 
- * names and the values are comma separated lists of either explicit paths to plugin.xml 
- * files or directories containing plugins. (e.g., .../eclipse/plugins).
- * </dd>
- * <dd>
- *    -ws &lt;window system&gt;: sets the window system value
- * </dd>
- * </dl>
- */
-public class Main {
-	/**
-	 * Indicates whether this instance is running in debug mode.
-	 */
-	protected boolean debug = false;
-	
-	/**
-	 * The location of the launcher to run.
-	 */
-	protected String bootLocation = null;
-	
-	/**
-	 * The identifier of the application to run.
-	 */
-	protected String application;
-	
-	/**
-	 * The path for finding find plugins.
-	 */
-	protected URL pluginPathLocation;
-	
-	/**
-	 * The boot path location.
-	 */
-	protected String location;
-	
-	/**
-	 * Indicates whether items for UNinstallation should be looked for.
-	 */
-	protected boolean uninstall = false;
-	
-	/**
-	 * The item to be uninstalled.
-	 */
-	protected String uninstallCookie;
-	
-	/**
-	 * The class path entries.
-	 */
-	protected String devClassPath = null;
-	
-	/**
-	 * Indicates whether this instance is running in development mode.
-	 */
-	protected boolean inDevelopmentMode = false;
-
-	// static token describing how to take down the splash screen
-	private static String endSplash = null;
-	
-	// constants
-	private static final String APPLICATION = "-application";
-	private static final String BOOT = "-boot";
-	private static final String DEBUG = "-debug";
-	private static final String DEV = "-dev";
-	private static final String ENDSPLASH = "-endsplash";
-	private static final String UNINSTALL = "-uninstall";
-	private static final String PI_BOOT = "org.eclipse.core.boot";
-	private static final String BOOTLOADER = "org.eclipse.core.boot.BootLoader";
-	private static final String UPDATELOADER = "org.eclipse.core.internal.boot.LaunchInfo";
-
-	// The project containing the boot loader code.  This is used to construct
-	// the correct class path for running in VAJ and VAME.
-	private static final String PROJECT_NAME = "Eclipse Core Boot";
-
-	private static boolean inVAJ;
-	static {
-		try {
-			Class.forName("com.ibm.uvm.lang.ProjectClassLoader");
-			inVAJ = true;
-		} catch (Exception e) {
-			inVAJ = false;
-		}
-	}
-	private static boolean inVAME;
-	static {
-		try {
-			Class.forName("com.ibm.eclipse.core.VAME");
-			inVAME = true;
-		} catch (Exception e) {
-			inVAME = false;
-		}
-	}
-
-/**
- * Executes the launch.
- * 
- * @return the result of performing the launch
- * @param args command-line arguments
- * @exception Exception thrown if a problem occurs during the launch
- */
-protected Object basicRun(String[] args) throws Exception {
-	Class clazz = getBootLoader(bootLocation);
-	Method method = clazz.getDeclaredMethod("run", new Class[] { String.class, URL.class, String.class, String[].class });
-	try {
-		return method.invoke(clazz, new Object[] { application, pluginPathLocation, location, args });
-	} catch (InvocationTargetException e) {
-		if (e.getTargetException() instanceof Error)
-			throw (Error) e.getTargetException();
-		else
-			throw e;
-	}
-}
-
-/**
- * Returns the result of converting a list of comma-separated tokens into an array
- * 
- * @return the array of string tokens
- * @param prop the initial comma-separated string
- */
-private String[] getArrayFromList(String prop) {
-	if (prop == null || prop.trim().equals(""))
-		return new String[0];
-	Vector list = new Vector();
-	StringTokenizer tokens = new StringTokenizer(prop, ",");
-	while (tokens.hasMoreTokens()) {
-		String token = tokens.nextToken().trim();
-		if (!token.equals(""))
-			list.addElement(token);
-	}
-	return list.isEmpty() ? new String[0] : (String[]) list.toArray(new String[0]);
-}
-/**
- * Creates and returns a platform <code>BootLoader</code> which can be used to start
- * up and run the platform.  The given base, if not <code>null</code>,
- * is the location of the boot loader code.  If the value is <code>null</code>
- * then the boot loader is located relative to this class.
- * 
- * @return the new boot loader
- * @param base the location of the boot loader
- */
-public Class getBootLoader(String base) throws Exception {
-	URLClassLoader loader = new URLClassLoader(getBootPath(base), null);
-	return loader.loadClass(BOOTLOADER);
-}
-/**
- * Returns the <code>URL</code>-based class path describing where the boot classes
- * are located when running in development mode.
- * 
- * @return the url-based class path
- * @param base the base location
- * @exception MalformedURLException if a problem occurs computing the class path
- */
-protected URL[] getDevPath(URL base) throws MalformedURLException {
-	URL url;
-	String devBase = base.toExternalForm();
-	if (!inDevelopmentMode) {
-		url = new URL(devBase + "boot.jar");
-		return new URL[] {url};
-	}
-	String[] locations = getArrayFromList(devClassPath);
-	ArrayList result = new ArrayList(locations.length);
-	for (int i = 0; i < locations.length; i++) {
-		String spec = devBase + locations[i];
-		char lastChar = spec.charAt(spec.length() - 1);
-		if ((spec.endsWith(".jar") || (lastChar == '/' || lastChar == '\\')))
-			url = new URL (spec);
-		else
-			url = new URL(spec + "/");
-		//make sure URL exists before adding to path
-		if (new java.io.File(url.getFile()).exists())
-			result.add(url);
-	}
-	url = new URL(devBase + "boot.jar");
-	if (new java.io.File(url.getFile()).exists())
-		result.add(url);
-	return (URL[])result.toArray(new URL[result.size()]);
-}
-
-/**
- * Returns the <code>URL</code>-based class path describing where the boot classes are located.
- * 
- * @return the url-based class path
- * @param base the base location
- * @exception MalformedURLException if a problem occurs computing the class path
- */
-protected URL[] getBootPath(String base) throws MalformedURLException {
-	URL url = null;
-	// if the given location is not null, assume it is correct and use it. 
-	if (base != null) {
-		url = new URL(base);
-		if (debug)
-			System.out.println("Boot URL: " + url.toExternalForm());
-		return new URL[] {url};	
-	}
-	// Create a URL based on the location of this class' code.
-	// strip off jar file and/or last directory to get 
-	// to the directory containing projects.
-	URL[] result = null;
-	url = getClass().getProtectionDomain().getCodeSource().getLocation();
-	String path = url.getFile();
-	if (path.endsWith(".jar"))
-		path = path.substring(0, path.lastIndexOf("/"));
-	else 
-		if (path.endsWith("/"))
-			path = path.substring(0, path.length() - 1);
-	if (inVAJ || inVAME) {
-		int ix = path.lastIndexOf("/");
-		path = path.substring(0, ix + 1);
-		path = path + PROJECT_NAME + "/";
-		url = new URL(url.getProtocol(), url.getHost(), url.getPort(), path);
-		result = new URL[] {url};
-	} else {
-		path = searchForPlugins(path);
-		path = searchForBoot(path);
-		// add on any dev path elements
-		url = new URL(url.getProtocol(), url.getHost(), url.getPort(), path);
-		result = getDevPath(url);
-	}
-	if (debug) {
-		System.out.println("Boot URL:");
-		for (int i = 0; i < result.length; i++)
-			System.out.println("    " + result[i].toExternalForm());	
-	}
-	return result;
-}
-
-/**
- * Searches for a plugins root starting at a given location.  If one is
- * found then this location is returned; otherwise an empty string is
- * returned.
- * 
- * @return the location where plugins were found, or an empty string
- * @param start the location to begin searching at
- */
-protected String searchForPlugins(String start) {
-	File path = new File(start);
-	while (path != null) {
-		File test = new File(path, "plugins");
-		if (test.exists())
-			return test.toString();
-		path = path.getParentFile();
-		path = (path == null || path.length() == 1)  ? null : path;
-	}
-	return "";
-}
-/**
- * Searches for a boot directory starting at a given location.  If one
- * is found then this location is returned; otherwise an empty string
- * is returned.
- * 
- * @return the location where plugins were found, or an empty string
- * @param start the location to begin searching at
- */
-protected String searchForBoot(String start) {
-	FileFilter filter = new FileFilter() {
-		public boolean accept(File candidate) {
-			return candidate.getName().startsWith(PI_BOOT);
-		}
-	};
-	File[] boots = new File(start).listFiles(filter);
-	String result = null;
-	String maxVersion = null;
-	for (int i = 0; i < boots.length; i++) {
-		String name = boots[i].getName();
-		int index = name.lastIndexOf('_');
-		if (index == -1) {
-			result = boots[i].getAbsolutePath();
-			i = boots.length;
-		} else {
-			if (index > 0) {
-				String version = name.substring(index + 1);
-				if (maxVersion == null) {
-					result = boots[i].getAbsolutePath();
-					maxVersion = version;
-				} else
-					if (maxVersion.compareTo(version) == -1) {
-						result = boots[i].getAbsolutePath();
-						maxVersion = version;
-					}						
-			}
-		}
-	}
-	if (result == null)
-		throw new RuntimeException("Could not find bootstrap code. Check location of boot plug-in or specify -boot.");
-	return result.replace(File.separatorChar, '/') + "/";
-}
-/**
- * Returns the update loader for the given boot path.
- * 
- * @return the update loader
- * @param base the boot path base
- * @exception Exception thrown is a problem occurs determining this loader
- */
-public Class getUpdateLoader(String base) throws Exception {
-	URLClassLoader loader = new URLClassLoader(getBootPath(base), null);
-	return loader.loadClass(UPDATELOADER);
-}
-/**
- * Runs the platform with the given arguments.  The arguments must identify
- * an application to run (e.g., <code>-application com.example.application</code>).
- * After running the application <code>System.exit(N)</code> is executed.
- * The value of N is derived from the value returned from running the application.
- * If the application's return value is an <code>Integer</code>, N is this value.
- * In all other cases, N = 0.
- * <p>
- * Clients wishing to run the platform without a following <code>System.exit</code>
- * call should use <code>run()</code>.
- *
- * @see #run
- * 
- * @param args the command line arguments
- */
-public static void main(String[] args) {
-	Object result = null;
-	try {
-		result = new Main().run(args);
-	} catch (Throwable e) {
-		// try and take down the splash screen.
-		endSplash();
-		System.out.println("Exception launching the Eclipse Platform:");
-		e.printStackTrace();
-	}
-	int exitCode = result instanceof Integer ? ((Integer) result).intValue() : 0;
-	System.exit(exitCode);
-}
-/**
- * Tears down the currently-displayed splash screen.
- */
-public static void endSplash() {
-	if (endSplash == null)
-		return;
-	try {
-		Runtime.getRuntime().exec(endSplash);
-	} catch (Exception e) {
-	}
-}
-
-/**
- * Runs this launcher with the arguments specified in the given string.
- * 
- * @param argString the arguments string
- * @exception Exception thrown if a problem occurs during launching
- */
-public static void main(String argString) throws Exception {
-	Vector list = new Vector(5);
-	for (StringTokenizer tokens = new StringTokenizer(argString, " "); tokens.hasMoreElements();)
-		list.addElement((String) tokens.nextElement());
-	main((String[]) list.toArray(new String[list.size()]));
-}
-
-/**
- * Processes the command line arguments
- * 
- * @return the arguments to pass through to the launched application
- * @param args the command line arguments
- */
-protected String[] processCommandLine(String[] args) throws Exception {
-	int[] configArgs = new int[100];
-	configArgs[0] = -1; // need to initialize the first element to something that could not be an index.
-	int configArgIndex = 0;
-	for (int i = 0; i < args.length; i++) {
-		boolean found = false;
-		// check for args without parameters (i.e., a flag arg)
-		// check if debug should be enabled for the entire platform
-		if (args[i].equalsIgnoreCase(DEBUG)) {
-			debug = true;
-			// passed thru this arg (i.e., do not set found = true
-			continue;
-		}
-		
-		// check if development mode should be enabled for the entire platform
-		// If this is the last arg or there is a following arg (i.e., arg+1 has a leading -), 
-		// simply enable development mode.  Otherwise, assume that that the following arg is
-		// actually some additional development time class path entries.  This will be processed below.
-		if (args[i].equalsIgnoreCase(DEV) && ((i + 1 == args.length) || ((i + 1 < args.length) && (args[i + 1].startsWith("-"))))) {
-			inDevelopmentMode = true;
-			// do not mark the arg as found so it will be passed through
-			continue;
-		}
-
-		// done checking for args.  Remember where an arg was found 
-		if (found) {
-			configArgs[configArgIndex++] = i;
-			continue;
-		}
-		// check for args with parameters. If we are at the last argument or if the next one
-		// has a '-' as the first character, then we can't have an arg with a parm so continue.
-		if (i == args.length - 1 || args[i + 1].startsWith("-")) 
-			continue;
-		String arg = args[++i];
-
-		// look for the laucher to run
-		if (args[i - 1].equalsIgnoreCase(BOOT)) {
-			bootLocation = arg;
-			found = true;
-		}
-
-		// look for the development mode and class path entries.  
-		if (args[i - 1].equalsIgnoreCase(DEV)) {
-			inDevelopmentMode = true;
-			devClassPath = arg;
-			continue;
-		}
-
-		// look for the application to run
-		if (args[i - 1].equalsIgnoreCase(APPLICATION)) {
-			application = arg;
-			found = true;
-		}
-
-		// look for token to use to end the splash screen
-		if (args[i - 1].equalsIgnoreCase(ENDSPLASH)) {
-			endSplash = arg;
-			continue;
-		}
-
-		// look for items to uninstall
-		if (args[i - 1].equalsIgnoreCase(UNINSTALL)) {
-			uninstall = true;
-			uninstallCookie = arg;
-			found = true;
-		}
-
-		// done checking for args.  Remember where an arg was found 
-		if (found) {
-			configArgs[configArgIndex++] = i - 1;
-			configArgs[configArgIndex++] = i;
-		}
-	}
-	// remove all the arguments consumed by this argument parsing
-	if (configArgIndex == 0)
-		return args;
-	String[] passThruArgs = new String[args.length - configArgIndex];
-	configArgIndex = 0;
-	int j = 0;
-	for (int i = 0; i < args.length; i++) {
-		if (i == configArgs[configArgIndex])
-			configArgIndex++;
-		else
-			passThruArgs[j++] = args[i];
-	}
-	return passThruArgs;
-}
-/**
- * Runs the application to be launched.
- * 
- * @return the return value from the launched application
- * @param args the arguments to pass to the application
- * @exception thrown if a problem occurs during launching
- */
-public Object run(String[] args) throws Exception {
-	String[] passThruArgs = processCommandLine(args);
-	if (uninstall)
-		return updateRun(UNINSTALL, uninstallCookie, passThruArgs);
-	else
-		return basicRun(passThruArgs);
-}
-/**
- * Performs an update run.
- * 
- * @return the return value from the update loader
- * @param flag flag to give to the update loader
- * @param value value to give to the update loader
- * @param args arguments to give to the update loader.
- * @exception Exception thrown if a problem occurs during execution
- */
-protected Object updateRun(String flag, String value, String[] args) throws Exception {
-	Class clazz = getUpdateLoader(bootLocation);
-	Method method = clazz.getDeclaredMethod("run", new Class[] { String.class, String.class, String.class, String[].class });
-	try {
-		return method.invoke(clazz, new Object[] { flag, value, location, args });
-	} catch (InvocationTargetException e) {
-		if (e.getTargetException() instanceof Error)
-			throw (Error) e.getTargetException();
-		else
-			throw e;
-	}
-}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/NewMain.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/NewMain.java
deleted file mode 100644
index c40c273..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/NewMain.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.*;
-import java.net.URL;
-import java.util.*;
-
-/** 
- * Application is responsible for calling core launch api
- */
-
-public class NewMain extends Main {
-	private static final String DEFAULT_APPLICATION= "org.eclipse.ui.workbench";
-	
-	
-	public NewMain(String application, String location, URL pluginPathLocation, String bootLocation, boolean debug) throws IOException {
-		this.application= application;
-		this.location= location;
-		this.pluginPathLocation= pluginPathLocation;
-		this.bootLocation= bootLocation;
-	}
-	
-	public static void main(String[] args) {
-		try {
-			String location= getLocationFromProperties("platform");
-			new NewMain(DEFAULT_APPLICATION, location, null, null, true).run(args);
-		} catch (Throwable e) {
-			System.out.println("Exception launching the Eclipse Platform UI:");
-			e.printStackTrace();
-		}
-		System.exit(0);
-	}
-	
-
-	/**
-	 * Run this launcher with the arguments specified in the given string.
-	 * This is a short cut method for people running the launcher from
-	 * a scrapbook (i.e., swip-and-doit facility).
-	 */
-	public static void main(String argString) throws Exception {
-		Vector list= new Vector(5);
-		for (StringTokenizer tokens= new StringTokenizer(argString, " "); tokens.hasMoreElements();)
-			list.addElement((String) tokens.nextElement());
-		main((String[]) list.toArray(new String[list.size()]));
-	}
-	
-	public static String getLocationFromProperties(String key) {
-		Properties properties= new Properties();
-		try {
-			FileInputStream fis= new FileInputStream(getSettingsFile());
-			properties.load(fis);
-			return properties.getProperty(key);
-		} catch (IOException e) {
-		}
-		return null;
-	}	
-	
-	private static File getSettingsFile() {
-		String home= System.getProperty("user.home");
-		if (home == null) {
-			System.out.println("Home dir not defined");
-			return null;
-		}
-		return new File(home, "eclipse-workspaces.properties");	
-	}	
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/ProjectHelper.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/ProjectHelper.java
deleted file mode 100644
index a73c02f..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/ProjectHelper.java
+++ /dev/null
@@ -1,127 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.*;
-import java.util.zip.ZipFile;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.ui.dialogs.IOverwriteQuery;
-import org.eclipse.ui.wizards.datatransfer.*;
-
-/**
- * Helper methods to set up an IProject.
- */
-public class ProjectHelper {
-	
-	public static final IPath TEST_SCRIPTS_DIR= new Path("testscripts");
-	public static final IPath TEST_RESOURCES_DIR= new Path("testresources");	
-	public static final IPath TEST_LIB_DIR= new Path("testlib");
-	
-	/**
-	 * Creates a IProject.
-	 */	
-	public static IProject createProject(String projectName, String binFolderName) throws CoreException {
-		IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
-		IProject project= root.getProject(projectName);
-		if (!project.exists()) {
-			project.create(null);
-		} else {
-			project.refreshLocal(IResource.DEPTH_INFINITE, null);
-		}
-		
-		if (!project.isOpen()) {
-			project.open(null);
-		}
-		
-		return project;
-	}
-	
-	/**
-	 * Removes an IProject.
-	 */		
-	public static void delete(IProject project) throws CoreException {
-		project.delete(true, true, null);
-	}
-
-
-	/**
-	 * Adds a folder to an IProject.
-	 */		
-	public static IFolder addFolder(IProject project, String containerName) throws CoreException {
-		
-			IFolder folder= project.getFolder(containerName);
-			if (!folder.exists()) {
-				folder.create(false, true, null);
-			}
-		
-		return folder;
-		
-	}
-
-	private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
-		IProjectDescription description = proj.getDescription();
-		String[] prevNatures= description.getNatureIds();
-		String[] newNatures= new String[prevNatures.length + 1];
-		System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
-		newNatures[prevNatures.length]= natureId;
-		description.setNatureIds(newNatures);
-		proj.setDescription(description, monitor);
-	}
-	
-	private static void importFilesFromZip(ZipFile srcZipFile, IPath destPath, IProgressMonitor monitor) throws InvocationTargetException {		
-		ZipFileStructureProvider structureProvider=	new ZipFileStructureProvider(srcZipFile);
-		try {
-			ImportOperation op= new ImportOperation(destPath, structureProvider.getRoot(), structureProvider, new ImportOverwriteQuery());
-			op.run(monitor);
-		} catch (InterruptedException e) {
-			// should not happen
-		}
-	}
-	
-	public static void importFilesFromDirectory(File rootDir, IPath destPath, IProgressMonitor monitor) throws InvocationTargetException, IOException {		
-		IImportStructureProvider structureProvider = FileSystemStructureProvider.INSTANCE;
-		List files = new ArrayList(100);
-		addFiles(rootDir, files);
-		try {
-			ImportOperation op= new ImportOperation(destPath, rootDir, structureProvider, new ImportOverwriteQuery(), files);
-			op.setCreateContainerStructure(false);
-			op.run(monitor);
-		} catch (InterruptedException e) {
-			// should not happen
-		}
-	}	
-	
-	private static void addFiles(File dir, List collection) throws IOException {
-		File[] files = dir.listFiles();
-		List subDirs = new ArrayList(2);
-		for (int i = 0; i < files.length; i++) {
-			if (files[i].isFile()) {
-				collection.add(files[i]);
-			} else if (files[i].isDirectory()) {
-				subDirs.add(files[i]);
-			}
-		}
-		Iterator iter = subDirs.iterator();
-		while (iter.hasNext()) {
-			File subDir = (File)iter.next();
-			addFiles(subDir, collection);
-		}
-	}
-	
-	private static class ImportOverwriteQuery implements IOverwriteQuery {
-		public String queryOverwrite(String file) {
-			return ALL;
-		}	
-	}			
-}
-
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestPluginLauncher.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestPluginLauncher.java
deleted file mode 100644
index a712c69..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestPluginLauncher.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.URL;
-
-/**
- * Helper class to launch a test
- */
-public class TestPluginLauncher {
-	
-	public static final String APP_NAME= "org.eclipse.ant.tests.core.app";
-	
-	public static void run(String location, Class testCase, String[] args) {
-		run(APP_NAME, location, testCase, args);
-	}
-	
-	public static void run(String application, String location, Class testCase, String[] args) {
-		try {
-			String bootLocation= getBootLocation();
-			int nArgs= args.length;
-			String[] newArgs= new String[4 + nArgs];
-			newArgs[0]= testCase.getName();
-			for (int i= 0; i < nArgs; i++) {
-				newArgs[1 + i]= args[i];
-			}
-			newArgs[1 + nArgs]= "-dev";
-			newArgs[1 + nArgs + 1]= "bin";
-			newArgs[1 + nArgs + 2]= "-debug";
-			NewMain newMain= new NewMain(application, location, null, bootLocation, false);
-			newMain.run(newArgs);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-	
-	public static String getLocationFromProperties(String key) {
-		return NewMain.getLocationFromProperties(key);
-	}
-	
-	public static String getLocationFromProperties() {
-		return NewMain.getLocationFromProperties("tests");
-	}
-	
-	public static String getBootLocation() {
-		URL url= TestPluginLauncher.class.getResource("TestPluginLauncher.class");
-		String s= url.toString();
-		int index= s.indexOf("/org.eclipse.ant.tests.core");
-		if (index == -1)
-			throw new IllegalArgumentException();
-		s= s.substring(0, index);
-		s= s + "/org.eclipse.core.boot/boot.jar";
-		return s;
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestWorkbench.java b/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestWorkbench.java
deleted file mode 100644
index 973734b..0000000
--- a/ant/org.eclipse.ant.tests.core/test plugin/org/eclipse/ant/tests/core/testplugin/TestWorkbench.java
+++ /dev/null
@@ -1,77 +0,0 @@
-package org.eclipse.ant.tests.core.testplugin;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-import junit.textui.TestRunner;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.internal.Workbench;
-
-public class TestWorkbench extends Workbench {
-
-	/**
-	 * Run an event loop for the workbench.
-	 */
-	protected void runEventLoop() {
-		// Dispatch all events.
-		Display display = Display.getCurrent();
-		while (true) {
-			try {
-				if (!display.readAndDispatch())
-					break;
-			} catch (Throwable e) {
-				break;
-			}
-		}
-		IPath location= AntTestPlugin.getWorkspace().getRoot().getLocation();
-		System.out.println("Workspace-location: " + location.toString());
-				
-		
-		String[] args= getCommandLineArgs();
-		if (args.length > 2) {
-			try {
-				Test test= getTest(args[2]);
-				TestRunner.run(test);
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-		} else {
-			System.out.println("TestWorkbench: Argument must be class name");
-		}
-				
-		close();
-				
-	}
-	
-	public Test getTest(String className) throws Exception {
-		Class testClass= getClass().getClassLoader().loadClass(className);
-
-		Method suiteMethod= null;
-		try {
-			suiteMethod= testClass.getMethod(TestRunner.SUITE_METHODNAME, new Class[0]);
-	 	} catch (Exception e) {
-	 		// try to extract a test suite automatically	
-			return new TestSuite(testClass);
-		}
-		try {
-			return (Test) suiteMethod.invoke(null, new Class[0]); // static method
-		} catch (InvocationTargetException e) {
-			System.out.println("Failed to invoke suite():" + e.getTargetException().toString());
-		} catch (IllegalAccessException e) {
-			System.out.println("Failed to invoke suite():" + e.toString());
-		}
-		return null; 
-
-	}
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/inputHandlers/AntTestInputHandler.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/inputHandlers/AntTestInputHandler.java
deleted file mode 100644
index dd876ff..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/inputHandlers/AntTestInputHandler.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.eclipse.ant.tests.core.inputHandlers;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.input.DefaultInputHandler;
-import org.apache.tools.ant.input.InputRequest;
-
-/**
- * A test input handler when using Ant within Eclipse.
- * This is the class that will respond to <input> requests from
- * within an Ant build file.
- */
-public class AntTestInputHandler extends DefaultInputHandler {
-	
-	/**
-	 * @see org.apache.tools.ant.input.InputHandler#handleInput(org.apache.tools.ant.input.InputRequest)
-	 */
-	public void handleInput(InputRequest request) throws BuildException {
-		request.setInput("testing handling input requests");
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTask.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTask.java
deleted file mode 100644
index cdafacd..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTask.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.eclipse.ant.tests.core.tasks;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.apache.tools.ant.taskdefs.Echo;
-
-
-public class AntTestTask extends Task {
-	
-	public AntTestTask() {
-		super();
-	}
-	
-	/**
-	 * @see org.apache.tools.ant.Task#execute()
-	 */
-	public void execute() throws BuildException {
-		Echo echo= new Echo();
-		echo.setProject(getProject());
-		echo.setMessage("Testing Ant in Eclipse with a custom task");
-		echo.execute();
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTaskWithCustomType.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTaskWithCustomType.java
deleted file mode 100644
index 9fe76a0..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/tasks/AntTestTaskWithCustomType.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.eclipse.ant.tests.core.tasks;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.apache.tools.ant.taskdefs.Echo;
-import org.eclipse.ant.tests.core.types.AntTestType;
-
-
-public class AntTestTaskWithCustomType extends Task {
-	
-	AntTestType testType;
-	
-	public AntTestTaskWithCustomType() {
-		super();
-	}
-	
-	public void addAntTestType(AntTestType type) {
-		testType= type;
-	}
-	
-	/**
-	 * @see org.apache.tools.ant.Task#execute()
-	 */
-	public void execute() throws BuildException {
-		Echo echo= new Echo();
-		echo.setProject(getProject());
-		echo.setMessage(testType.getMessage());
-		echo.execute();
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildListener.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildListener.java
deleted file mode 100644
index 1759122..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildListener.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package org.eclipse.ant.tests.core.testloggers;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.apache.tools.ant.BuildEvent;
-import org.apache.tools.ant.BuildListener;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-
-
-public class TestBuildListener implements BuildListener {
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildFinished(BuildEvent event) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildStarted(BuildEvent event) {
-		AntTestChecker.getDefault().addNameOfListener(this.getClass().getName());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#messageLogged(org.apache.tools.ant.BuildEvent)
-	 */
-	public void messageLogged(BuildEvent event) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetFinished(BuildEvent event) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetStarted(BuildEvent event) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskFinished(BuildEvent event) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskStarted(BuildEvent event) {
-	}
-
-}
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildLogger.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildLogger.java
deleted file mode 100644
index f94fe96..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/testloggers/TestBuildLogger.java
+++ /dev/null
@@ -1,168 +0,0 @@
-package org.eclipse.ant.tests.core.testloggers;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.PrintStream;
-
-import org.apache.tools.ant.*;
-import org.eclipse.ant.core.AntSecurityException;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.runtime.OperationCanceledException;
-
-public class TestBuildLogger implements BuildLogger {
-
-	private int messageOutputLevel =Project.MSG_INFO;
-	private PrintStream fErr= null;
-	private PrintStream fOut= null;
-	
-	/**
-	 * An exception that has already been logged.
-	 */
-	private Throwable fHandledException= null;
-	
-	
-	public TestBuildLogger() {
-	}
-	
-	/**
-	 * @see org.apache.tools.ant.BuildLogger#setMessageOutputLevel(int)
-	 */
-	public void setMessageOutputLevel(int level) {
-		messageOutputLevel= level;
-	}
-	
-	protected int getMessageOutputLevel() {
-		return messageOutputLevel;
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildLogger#setEmacsMode(boolean)
-	 */
-	public void setEmacsMode(boolean emacsMode) {
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildStarted(BuildEvent event) {
-		AntTestChecker.getDefault().buildStarted(event.getProject().getName());
-		AntTestChecker.getDefault().setUserProperties(event.getProject().getProperties());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#buildFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void buildFinished(BuildEvent event) {
-		handleException(event);
-		fHandledException= null;
-		AntTestChecker.getDefault().buildFinished(event.getProject().getName());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetStarted(BuildEvent event) {
-		AntTestChecker.getDefault().targetStarted(event.getTarget().getName());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#targetFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void targetFinished(BuildEvent event) {
-		handleException(event);
-		AntTestChecker.getDefault().targetFinished(event.getTarget().getName());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskStarted(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskStarted(BuildEvent event) {
-		AntTestChecker.getDefault().taskStarted(event.getTask().getTaskName());
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildListener#taskFinished(org.apache.tools.ant.BuildEvent)
-	 */
-	public void taskFinished(BuildEvent event) {
-		handleException(event);
-		AntTestChecker.getDefault().targetFinished(event.getTask().getTaskName());
-	}
-
-	/**
-	 * @see BuildListener#messageLogged(BuildEvent)
-	 */
-	public void messageLogged(BuildEvent event) {
-		if (event.getPriority() > getMessageOutputLevel()) {
-			return;
-		}
-		logMessage(event.getMessage(), event.getPriority());
-		AntTestChecker.getDefault().messageLogged(event.getMessage());
-	}
-
-	protected PrintStream getErrorPrintStream() {
-		return fErr;
-	}
-	
-	protected PrintStream getOutputPrintStream() {
-		return fOut;
-	}
-	
-	/**
-	 * @see org.apache.tools.ant.BuildLogger#setErrorPrintStream(java.io.PrintStream)
-	 */
-	public void setErrorPrintStream(PrintStream err) {
-		//this build logger logs to "null" unless
-		//the user has explicitly set a logfile to use
-		if (err == System.err) {
-			fErr= null;
-		} else {
-			fErr= err;
-		}
-	}
-
-	/**
-	 * @see org.apache.tools.ant.BuildLogger#setOutputPrintStream(java.io.PrintStream)
-	 */
-	public void setOutputPrintStream(PrintStream output) {
-		//this build logger logs to "null" unless
-		//the user has explicitly set a logfile to use
-		if (output == System.out) {
-			fOut= null;
-		} else {
-			fOut= output;
-		}
-	}
-	
-	protected void logMessage(String message, int priority) {
-		if (priority > getMessageOutputLevel()) {
-			return;
-		}
-		
-		if (priority == Project.MSG_ERR) {
-			if (getErrorPrintStream() != null && getErrorPrintStream() != System.err) {
-				//user has designated to log to a logfile
-				getErrorPrintStream().println(message);
-			}
-		} else {
-			if (getOutputPrintStream() != null && getOutputPrintStream() != System.out) {
-				//user has designated to log to a logfile
-				getOutputPrintStream().println(message);
-			} 
-		}
-	}
-	
-	protected void handleException(BuildEvent event) {
-		Throwable exception = event.getException();
-		if (exception == null || exception == fHandledException
-		|| exception instanceof OperationCanceledException
-		|| exception instanceof AntSecurityException) {
-			return;
-		}
-		fHandledException= exception;
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/types/AntTestType.java b/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/types/AntTestType.java
deleted file mode 100644
index 9182acc..0000000
--- a/ant/org.eclipse.ant.tests.core/test support/org/eclipse/ant/tests/core/types/AntTestType.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.eclipse.ant.tests.core.types;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-
-
-public class AntTestType {
-	
-	String message;
-	
-	public AntTestType() {
-	}
-	
-	public void setMessage(String message) {
-		this.message= message;
-	}
-	
-	public String getMessage() {
-		return message;
-	}
-	
-}
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/test.xml b/ant/org.eclipse.ant.tests.core/test.xml
deleted file mode 100644
index 47d3ab0..0000000
--- a/ant/org.eclipse.ant.tests.core/test.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="testsuite" default="run" basedir=".">
-  <!-- sets the properties eclipse-home, and library-file -->
-  <!-- The property ${eclipse-home} should be passed into this script -->
-  <!-- Set a meaningful default value for when it is not. -->
-  <property name="eclipse-home" value="${basedir}\..\.."/>
-<property name="plugin-name" value="org.eclipse.ant.tests.core"/>
-  <property name="library-file"
-            value="${eclipse-home}/plugins/org.eclipse.test/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="org*.xml"/>
-    </delete>
-  </target>
-
-  <!-- This target defines the tests that need to be run. -->
-  <target name="suite">
-    <property name="jdt-folder" 
-              value="${eclipse-home}/jdt_folder"/>
-    <delete dir="${jdt-folder}" quiet="true"/>
-    <ant target="ui-test" antfile="${library-file}" dir="${eclipse-home}">
-      <property name="data-dir" value="${jdt-folder}"/>
-      <property name="plugin-name" value="${plugin-name}"/>
-      <property name="classname" 
-                value="org.eclipse.ant.tests.core.AutomatedSuite"/>
-    </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="org*.xml"/>
-      <property name="output-file" value="${plugin-name}.xml"/>
-    </ant>
-  </target>
-
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering1.jar b/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering1.jar
deleted file mode 100644
index b10cb7f..0000000
--- a/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering1.jar
+++ /dev/null
Binary files differ
diff --git a/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering2.jar b/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering2.jar
deleted file mode 100644
index 6816741..0000000
--- a/ant/org.eclipse.ant.tests.core/testlib/classpathOrdering2.jar
+++ /dev/null
Binary files differ
diff --git a/ant/org.eclipse.ant.tests.core/testresources/AntTestTask.java b/ant/org.eclipse.ant.tests.core/testresources/AntTestTask.java
deleted file mode 100644
index dfd0c4d..0000000
--- a/ant/org.eclipse.ant.tests.core/testresources/AntTestTask.java
+++ /dev/null
@@ -1,30 +0,0 @@
-
- /**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.apache.tools.ant.taskdefs.Echo;
-
-
-public class AntTestTask extends Task {
-	
-	public AntTestTask() {
-		super();
-	}
-	
-	/**
-	 * @see org.apache.tools.ant.Task#execute()
-	 */
-	public void execute() throws BuildException {
-		Echo echo= new Echo();
-		echo.setProject(getProject());
-		echo.setMessage("Testing Ant in Eclipse with a custom task");
-		echo.execute();
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/testresources/test.properties b/ant/org.eclipse.ant.tests.core/testresources/test.properties
deleted file mode 100644
index 5c496c6..0000000
--- a/ant/org.eclipse.ant.tests.core/testresources/test.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-AntTests=testing from properties file
-eclipse.is.cool=Yep
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AbstractAntTest.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AbstractAntTest.java
deleted file mode 100644
index bc9049c..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AbstractAntTest.java
+++ /dev/null
@@ -1,196 +0,0 @@
-package org.eclipse.ant.tests.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.URL;
-
-import junit.framework.TestCase;
-
-import org.eclipse.ant.core.*;
-import org.eclipse.ant.tests.core.testplugin.AntFileRunner;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-
-
- 
-/**
- * Tests for Ant core
- */
-public abstract class AbstractAntTest extends TestCase {
-	
-	protected static final String BUILD_SUCCEESSFUL= "BUILD SUCCESSFUL";
-	public static final String ANT_TEST_BUILD_LOGGER = "org.eclipse.ant.tests.core.testloggers.TestBuildLogger"; //$NON-NLS-1$
-	public static final String ANT_TEST_BUILD_LISTENER= "org.eclipse.ant.tests.core.testloggers.TestBuildListener";
-	
-	/**
-	 * Returns the 'AntTests' project.
-	 * 
-	 * @return the test project
-	 */
-	protected IProject getProject() {
-		return ResourcesPlugin.getWorkspace().getRoot().getProject("AntTests");
-	}
-
-	public static final int DEFAULT_TIMEOUT = 30000;
-	
-	
-	public static IProject project;
-	
-	
-	public AbstractAntTest(String name) {
-		super(name);
-	}
-	
-	protected IFile getBuildFile(String buildFileName) {
-		IFile file = getProject().getFolder("scripts").getFile(buildFileName);
-		assertTrue("Could not find script file named: " + buildFileName, file.exists());
-		return file;
-	}
-	
-	protected IFolder getWorkingDirectory(String workingDirectoryName) {
-		IFolder folder = getProject().getFolder(workingDirectoryName);
-		assertTrue("Could not find the working directory named: " + workingDirectoryName, folder.exists());
-		return folder;
-	}
-	
-	protected IFile checkFileExists(String fileName) throws CoreException {
-		getProject().refreshLocal(IProject.DEPTH_INFINITE, null);
-		IFile file = getProject().getFolder("scripts").getFile(fileName);
-		assertTrue("Could not find file named: " + fileName, file.exists());
-		return file;
-	}
-	
-	public void run(String buildFileName) throws CoreException {
-		run(buildFileName, null, true);
-	}
-	
-	public void run(String buildFileName, String[] args) throws CoreException {
-		run(buildFileName, args, true);
-	}
-	
-	public void run(String buildFileName, String[] args, boolean retrieveTargets) throws CoreException {
-		run(buildFileName, args, retrieveTargets, "");
-	}
-	
-	public void run(String buildFileName, String[] args, boolean retrieveTargets, String workingDir) throws CoreException {
-		AntTestChecker.reset();
-		IFile buildFile= null;
-		if (buildFileName != null) {
-			buildFile= getBuildFile(buildFileName);
-		}
-		AntFileRunner runner= new AntFileRunner();
-		String[] targets= null;
-		if (retrieveTargets) {
-			targets= getTargetNames(buildFileName);
-		}
-		if (workingDir.length() > 0) {
-			workingDir= getWorkingDirectory(workingDir).getLocation().toFile().getAbsolutePath();
-		} 
-		runner.run(buildFile, targets, args, workingDir, true);
-		assertTrue("Build starts did not equal build finishes", AntTestChecker.getDefault().getBuildsStartedCount() == AntTestChecker.getDefault().getBuildsFinishedCount());
-	}
-	
-	protected TargetInfo[] getTargets(String buildFileName) throws CoreException {
-		IFile buildFile= getBuildFile(buildFileName);
-		
-		AntRunner runner = new AntRunner();
-		runner.setBuildFileLocation(buildFile.getLocation().toFile().getAbsolutePath());
-	 	return runner.getAvailableTargets();
-	}
-	
-	protected String[] getTargetNames(String buildFileName) throws CoreException {
-		TargetInfo[] infos= getTargets(buildFileName);
-		String[] names= new String[infos.length];
-		for (int i = 0; i < infos.length; i++) {
-			TargetInfo info = infos[i];
-			names[i]= info.getName();
-		}
-		return names;
-	}
-	
-	protected String[] getTargetDescriptions(String buildFileName) throws CoreException {
-		TargetInfo[] infos= getTargets(buildFileName);
-		String[] descriptions= new String[infos.length];
-		for (int i = 0; i < infos.length; i++) {
-			TargetInfo info = infos[i];
-			descriptions[i]= info.getDescription();
-		}
-		return descriptions;
-	}
-	
-	/**
-	 * Returns the name of the project containing the given target in the given build file or
-	 * <code>null</code> if no project name can be found.
	 */
-	protected String getProjectName(String buildFileName, String targetName) throws CoreException {
-		TargetInfo info= getTarget(buildFileName, targetName);
-		if (info != null) {
-			return info.getProject();
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the dependencies of the target with the given name in the given build file or <code>null</code>
-	 * if no such target can be found.
-	 */
-	protected String[] getDependencies(String buildFileName, String targetName) throws CoreException {
-		TargetInfo info= getTarget(buildFileName, targetName);
-		if (info != null) {
-			return info.getDependencies();
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the target with the given name in the given build file or <code>null</code>
-	 * if no such target can be found.
	 */
-	protected TargetInfo getTarget(String buildFileName, String targetName) throws CoreException {
-		TargetInfo[] infos= getTargets(buildFileName);
-		for (int i= 0, numTargets= infos.length; i < numTargets; i++) {
-			if (infos[i].getName().equals(targetName)) {
-				return infos[i];
-			}
-		}
-		return null;
-	}
-	
-	protected String getLastMessageLogged() {
-		return AntTestChecker.getDefault().getLastMessageLogged();
-	}
-	
-	protected void assertSuccessful() {
-		assertTrue("Build was not flagged as successful: " + getLastMessageLogged(), BUILD_SUCCEESSFUL.equals(getLastMessageLogged()));
-	}
-	
-	protected String getPropertyFileName() {
-		return getProject().getFolder("resources").getFile("test.properties").getLocation().toFile().getAbsolutePath();
-	}
-	
-	protected void restorePreferenceDefaults() {
-		AntCorePreferences prefs= AntCorePlugin.getPlugin().getPreferences();
-		prefs.setCustomURLs(prefs.getDefaultAntURLs());
-		prefs.setCustomTasks(new Task[]{});
-		prefs.setCustomTypes(new Type[]{});
-		prefs.setCustomPropertyFiles(new String[]{});
-		prefs.setCustomProperties(new Property[]{});
-		prefs.setAntHome("");
-	}
-	
-	protected String getAntHome() {
-		AntCorePreferences prefs= AntCorePlugin.getPlugin().getPreferences();
-		URL[] urls= prefs.getDefaultAntURLs();
-		URL antjar= urls[0];
-		IPath antHomePath= new Path(antjar.getFile());
-		antHomePath= antHomePath.removeLastSegments(1);
-		return antHomePath.toFile().getAbsolutePath();
-	}
-}
-
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AutomatedSuite.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AutomatedSuite.java
deleted file mode 100644
index abbdd85..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/AutomatedSuite.java
+++ /dev/null
@@ -1,98 +0,0 @@
-package org.eclipse.ant.tests.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.util.Enumeration;
-
-import junit.framework.*;
-
-import org.eclipse.ant.tests.core.testplugin.TestPluginLauncher;
-import org.eclipse.ant.tests.core.tests.*;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Test all areas of Ant.
- * 
- * To run this test suite:
- * <ol>
- * <li>Create a new Run-time Workbench launch configuration</li>
- * <li>Append "org.eclipse.ant.tests.core.AutomatedSuite" to the Program Arguments</li>
- * <li>Set the Application Name to "org.eclipse.ant.tests.core.app"</li>
- * <li>Run the launch configuration. Output from the tests will be written to the debug console</li>
- * </ol>
- */
-public class AutomatedSuite extends TestSuite {
-	
-	/**
-	 * Flag that indicates test are in progress
-	 */
-	protected boolean testing = true;
-
-	/**
-	 * Returns the suite.  This is required to
-	 * use the JUnit Launcher.
-	 */
-	public static Test suite() {
-		return new AutomatedSuite();
-	}
-
-	/**
-	 * Construct the test suite.
-	 */
-	public AutomatedSuite() {
-		addTest(new TestSuite(ProjectCreationDecorator.class));
-		addTest(new TestSuite(FrameworkTests.class));
-		addTest(new TestSuite(TargetTests.class));
-		addTest(new TestSuite(ProjectTests.class));
-		addTest(new TestSuite(OptionTests.class));
-		addTest(new TestSuite(TaskTests.class));
-		addTest(new TestSuite(TypeTests.class));
-	}
-	
-	public static void main(String[] args) {
-		TestPluginLauncher.run(TestPluginLauncher.getLocationFromProperties(), AutomatedSuite.class, args);
-	}		
-
-	/**
-	 * Runs the tests and collects their result in a TestResult.
-	 * The Ant tests cannot be run in the UI thread or the event
-	 * waiter blocks the UI when a resource changes.
-	 */
-	public void run(final TestResult result) {
-		final Display display = Display.getCurrent();
-		Thread thread = null;
-		try {
-			Runnable r = new Runnable() {
-				public void run() {
-					for (Enumeration e= tests(); e.hasMoreElements(); ) {
-				  		if (result.shouldStop() )
-				  			break;
-						Test test= (Test)e.nextElement();
-						runTest(test, result);
-					}					
-					testing = false;
-					display.wake();
-				}
-			};
-			thread = new Thread(r);
-			thread.start();
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-				
-		while (testing) {
-			try {
-				if (!display.readAndDispatch())
-					display.sleep();
-			} catch (Throwable e) {
-				e.printStackTrace();
-			}			
-		}		
-	}
-}
-
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/ProjectCreationDecorator.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/ProjectCreationDecorator.java
deleted file mode 100644
index 3f0a985..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/ProjectCreationDecorator.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.eclipse.ant.tests.core;
-
-/**********************************************************************
-Copyright (c) 2000, 2002 IBM Corp.  All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-
-import org.eclipse.ant.tests.core.testplugin.AntTestPlugin;
-import org.eclipse.ant.tests.core.testplugin.ProjectHelper;
-import org.eclipse.core.resources.*;
-
-/**
- * Test to close the workbench, since debug tests do not run in the UI
- * thread.
- */
-public class ProjectCreationDecorator extends AbstractAntTest {
-	
-	public ProjectCreationDecorator(String name) {
-		super(name);
-	}
-	
-	public void testProjectCreation() throws Exception {
-		// delete any pre-existing project
-		IProject pro = ResourcesPlugin.getWorkspace().getRoot().getProject("AntTests");
-		if (pro.exists()) {
-			pro.delete(true, true, null);
-		}
-		// create project and import scripts and support files
-		project = ProjectHelper.createProject("AntTests", "bin");
-		IFolder folder = ProjectHelper.addFolder(project, "scripts");
-		File root = AntTestPlugin.getDefault().getFileInPlugin(ProjectHelper.TEST_SCRIPTS_DIR);
-		ProjectHelper.importFilesFromDirectory(root, folder.getFullPath(), null);
-		
-		folder = ProjectHelper.addFolder(project, "resources");
-		root = AntTestPlugin.getDefault().getFileInPlugin(ProjectHelper.TEST_RESOURCES_DIR);
-		ProjectHelper.importFilesFromDirectory(root, folder.getFullPath(), null);
-		
-		folder = ProjectHelper.addFolder(project, "lib");
-		root = AntTestPlugin.getDefault().getFileInPlugin(ProjectHelper.TEST_LIB_DIR);
-		ProjectHelper.importFilesFromDirectory(root, folder.getFullPath(), null);
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/FrameworkTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/FrameworkTests.java
deleted file mode 100644
index 7e82983..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/FrameworkTests.java
+++ /dev/null
@@ -1,160 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.ant.core.AntCorePlugin;
-import org.eclipse.ant.core.AntCorePreferences;
-import org.eclipse.ant.core.Property;
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-public class FrameworkTests extends AbstractAntTest {
-	
-	public FrameworkTests(String name) {
-		super(name);
-	}
-	
-	public void testClasspathOrdering() throws MalformedURLException, CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		
-		String path= getProject().getFolder("lib").getFile("classpathOrdering1.jar").getLocation().toFile().getAbsolutePath();
-		URL url= new URL("file:" + path);
-		
-		path= getProject().getFolder("lib").getFile("classpathOrdering2.jar").getLocation().toFile().getAbsolutePath();
-		URL url2= new URL("file:" + path);
-		
-		URL urls[] = prefs.getCustomURLs();
-		URL newUrls[] = new URL[urls.length + 2];
-		System.arraycopy(urls, 0, newUrls, 0, urls.length);
-		newUrls[urls.length] = url;
-		newUrls[urls.length + 1] = url2;
-		prefs.setCustomURLs(newUrls);
-		
-		prefs.updatePluginPreferences();
-		
-		run("ClasspathOrdering.xml");
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("classpathOrdering1"));
-		assertSuccessful();
-		
-		restorePreferenceDefaults();
-		
-		urls = prefs.getCustomURLs();
-		newUrls = new URL[urls.length + 2];
-		System.arraycopy(urls, 0, newUrls, 0, urls.length);
-		newUrls[urls.length] = url2;
-		newUrls[urls.length + 1] = url;
-		prefs.setCustomURLs(newUrls);
-		
-		prefs.updatePluginPreferences();
-		
-		run("ClasspathOrdering.xml");
-		msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("classpathOrdering2"));
-		assertSuccessful();
-	}
-	
-	public void testNoDefaultTarget() {
-		try {
-			run("NoDefault.xml", new String[]{"test"}, false);
-		} catch (CoreException e) {
-			String msg= e.getMessage();
-			assertTrue("Message incorrect: " + msg, msg.equals("Default target 'build' does not exist in this project"));
-			return;
-		}
-		assertTrue("Build files with no default targets should not be accepted", false);
-	}
-	
-	/**
-	 * Ensures that tasks like javac work when includeAntRuntime is specified
-	 * bug 20857
-	 */
-	public void testIncludeAntRuntime() throws CoreException {
-		run("javac.xml", new String[]{"build","refresh"}, false); //standard compiler
-		assertSuccessful();
-		IFile classFile= getProject().getFolder("temp.folder").getFolder("javac.bin").getFile("AntTestTask.class");
-		assertTrue("Class file was not generated", classFile.exists());
-		run("javac.xml", new String[]{"-Duse.eclipse.compiler=true", "clean", "build", "refresh"}, false); //JDTCompiler
-		assertSuccessful();
-		classFile= getProject().getFolder("temp.folder").getFolder("javac.bin").getFile("AntTestTask.class");
-		assertTrue("Class file was not generated", classFile.exists());
-	}
-	
-	/**
-	 * Tests the properties added using a global property file
-	 */
-	public void testGlobalPropertyFile() throws CoreException {
-		
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		
-		String path= getPropertyFileName();
-		prefs.setCustomPropertyFiles(new String[]{path});
-		
-		run("TestForEcho.xml", new String[]{});
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as Yep", "Yep".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("AntTests should have a value of testing", "testing from properties file".equals(AntTestChecker.getDefault().getUserProperty("AntTests")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-		
-		restorePreferenceDefaults();
-	}
-	
-	/**
-	 * Tests the properties added using a global property
-	 */
-	public void testGlobalProperty() throws CoreException {
-		
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		prefs.setCustomProperties(new Property[]{new Property("eclipse.is.cool", "Yep"), new Property("JUnitTest", "true")});
-		
-		run("TestForEcho.xml", new String[]{});
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as Yep", "Yep".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("JUnitTests should have a value of true", "true".equals(AntTestChecker.getDefault().getUserProperty("JUnitTest")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-		
-		restorePreferenceDefaults();
-	}
-	
-	public void testGlobalPropertyFileWithMinusDTakingPrecedence() throws CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		
-		String path= getPropertyFileName();
-		prefs.setCustomPropertyFiles(new String[]{path});
-		
-		run("echoing.xml", new String[]{"-DAntTests=testing", "-Declipse.is.cool=true"}, false);
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as true", "true".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("AntTests should have a value of testing", "testing".equals(AntTestChecker.getDefault().getUserProperty("AntTests")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-		restorePreferenceDefaults();
-	}
-	
-	/**
-	 * Tests setting ANT_HOME
-	 */
-	public void testSettingAntHome() throws CoreException {
-		try {
-			AntCorePlugin.getPlugin().getPreferences().setAntHome(getAntHome());
-			run("echoing.xml");
-			assertTrue("ANT_HOME not set correctly", getAntHome().equals(System.getProperty("ant.home")));
-			AntCorePlugin.getPlugin().getPreferences().setAntHome("");
-			run("echoing.xml");
-			assertTrue("ANT_HOME not set correctly", "".equals(System.getProperty("ant.home")));
-		} finally {
-			restorePreferenceDefaults();
-		}
-		
-		
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/OptionTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/OptionTests.java
deleted file mode 100644
index 496ac66..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/OptionTests.java
+++ /dev/null
@@ -1,438 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.BufferedInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.List;
-
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-public class OptionTests extends AbstractAntTest {
-	
-	protected static final String START_OF_HELP= "ant [options] [target [target2 [target3] ...]]";
-	protected static final String VERSION= "Ant version 1.5.1 compiled on October 2 2002";
-	 
-	public OptionTests(String name) {
-		super(name);
-	}
-	
-	/**
-	 * Tests the "-help" option
-	 */
-	public void testHelp() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-help"});
-		assertTrue("One message should have been logged", AntTestChecker.getDefault().getMessagesLoggedCount() == 1);
-		assertTrue("Help is incorrect", getLastMessageLogged() != null && getLastMessageLogged().startsWith(START_OF_HELP));
-	}
-	
-	/**
-	 * Tests the "-version" option
-	 */
-	public void testVersion() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-version"});
-		assertTrue("One message should have been logged", AntTestChecker.getDefault().getMessagesLoggedCount() == 1);
-		assertTrue("Version is incorrect", VERSION.equals(getLastMessageLogged()));
-	}
-	
-	/**
-	 * Tests the "-projecthelp" option when it will not show (quite mode)
-	 */
-	public void testProjecthelp() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-projecthelp"});
-		assertTrue("4 messages should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 4);
-		assertTrue("Project help is incorrect", getLastMessageLogged().startsWith("Subtargets:"));
-	}
-	
-	/**
-	 * Tests the "-projecthelp" option when it will not show (quite mode)
-	 */
-	public void testProjecthelpQuiet() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-projecthelp", "-q"});
-		assertTrue("no messages should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 0);
-	}
-	
-	/**
-	 * Tests the "-listener" option with a listener that is not an instance of BuildListener
-	 */
-	public void testListenerBad() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-listener", "java.lang.String"});
-		} catch (CoreException ce) {
-			String msg= ce.getMessage();
-			assertTrue("Message incorrect!: " + msg, msg.equals("java.lang.String which was specified to be a build listener is not an instance of org.apache.tools.ant.BuildListener."));
-			return;
-		}
-		assertTrue("A core exception should have occurred wrappering a class cast exception", false);
-	}
-	
-	/**
-	 * Tests passing an unrecognized argument
-	 */
-	public void testUnknownArg() throws CoreException {
-		
-		run("TestForEcho.xml", new String[]{"-listenr"});
-		//unknown arg, print usage
-		assertTrue("Two message should have been logged", AntTestChecker.getDefault().getMessagesLoggedCount() == 2);
-		assertTrue("Should have printed the usage", getLastMessageLogged() != null && getLastMessageLogged().startsWith(START_OF_HELP));
-	}
-	
-	/**
-	 * Tests specifying the -logfile with no arg
-	 */
-	public void testLogFileWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-logfile"});
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("You must specify a log file when using the -log argument", false);
-	}
-	
-	/**
-	 * Tests specifying the -logfile
-	 */
-	public void testLogFile() throws CoreException, IOException {
-		run("TestForEcho.xml", new String[]{"-logfile", "TestLogFile.txt"});
-		IFile file= checkFileExists("TestLogFile.txt");
-		InputStream stream =file.getContents();
-		
-		InputStreamReader in= null;
-		try {		
-			in= new InputStreamReader(new BufferedInputStream(stream));
-			StringBuffer buffer= new StringBuffer();
-			char[] readBuffer= new char[2048];
-			int n= in.read(readBuffer);
-			while (n > 0) {
-				buffer.append(readBuffer, 0, n);
-				n= in.read(readBuffer);
-			}
-			assertTrue("File should have started with Buildfile", buffer.toString().startsWith("Buildfile"));
-		} finally {
-			in.close();
-			stream.close();
-		}
-		
-	}
-	
-	/**
-	 * Tests specifying the -logger with no arg
-	 */
-	public void testLoggerWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-logger"});
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("You must specify a classname when using the -logger argument", false);
-	}
-	
-	/**
-	 * Tests the "-logger" option with a logger that is not an instance of BuildLogger
-	 */
-	public void testLoggerBad() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-logger", "java.lang.String"});
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("A core exception should have occurred wrappering a class cast exception", false);
-	}
-	
-	/**
-	 * Tests the "-logger" option with two loggers specified...only one is allowed
-	 */
-	public void testTwoLoggers() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-logger", "java.lang.String", "-q", "-logger", "java.lang.String"});
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("As only one logger can be specified", false);
-	}
-	
-	/**
-	 * Tests specifying the -listener with no arg
-	 */
-	public void testListenerWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-listener"});
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("You must specify a listeners when using the -listener argument ", false);
-	}
-	
-	/**
-	 * Tests specifying the -listener with a class that will not be found
-	 */
-	public void testListenerClassNotFound() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-listener", "TestBuildListener"});
-		} catch (CoreException e) {
-			String message= e.getStatus().getException().getMessage();
-			assertTrue("Should be ClassNotFoundException", "java.lang.ClassNotFoundException: TestBuildListener".equals(message));
-			return;
-		}
-		assertTrue("A CoreException should have occurred as the listener class will not be found", false);
-		
-	}
-	/**
-	 * Tests specifying the -listener option
-	 */
-	public void testListener() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-listener", ANT_TEST_BUILD_LISTENER});
-		assertSuccessful();
-		assertTrue("A listener should have been added named: " + ANT_TEST_BUILD_LISTENER, ANT_TEST_BUILD_LISTENER.equals(AntTestChecker.getDefault().getLastListener()));
-	}
-	
-	/**
-	 * Tests specifying the -listener option multiple times...which is allowed
-	 */
-	public void testListenerMultiple() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-listener", ANT_TEST_BUILD_LISTENER, "-listener", ANT_TEST_BUILD_LISTENER});
-		assertSuccessful();
-		assertTrue("A listener should have been added named: " + ANT_TEST_BUILD_LISTENER, ANT_TEST_BUILD_LISTENER.equals(AntTestChecker.getDefault().getLastListener()));
-		assertTrue("Two listeners should have been added", AntTestChecker.getDefault().getListeners().size() == 2);
-	}
-	
-	/**
-	 * Tests specifying the -listener option multiple times, with one missing the arg
-	 */
-	public void testListenerMultipleWithBad() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-listener", ANT_TEST_BUILD_LISTENER, "-q", "-listener", "-verbose"});
-		} catch(CoreException e) {
-			//You must specify a listener for all -listener arguments
-			return;
-		}
-		assertTrue("You must specify a listener for all -listener arguments ", false);
-	}
-	
-	/**
-	 * Tests specifying the -buildfile with no arg
-	 */
-	public void testBuildFileWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-buildfile"});
-		} catch (CoreException ce) {
-			//You must specify a buildfile when using the -buildfile argument
-			return;
-		}
-		assertTrue("You must specify a buildfile when using the -buildfile argument", false);
-	}
-	
-	/**
-	 * Tests specifying the -buildfile
-	 */
-	public void testBuildFile() throws CoreException {
-		String buildFileName= getProject().getFolder("scripts").getFile("echoing.xml").getLocation().toFile().getAbsolutePath();
-		run("TestForEcho.xml", new String[]{"-buildfile", buildFileName}, false, "scripts");
-		
-		assertTrue("Should have been 1 tasks, was: " + AntTestChecker.getDefault().getTaskStartedCount(), AntTestChecker.getDefault().getTaskStartedCount() == 1);
-		
-	}
-	
-	/**
-	 * Tests specifying a target at the command line that does not exist.
-	 */
-	public void testSpecifyBadTargetAsArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"echo2"}, false);
-		} catch (CoreException ce) {
-			return;
-		}
-		assertTrue("A core exception should have occurred as the target does not exist", false);
-	}
-	
-	/**
-	 * Tests specifying a target at the command line
-	 */
-	public void testSpecifyTargetAsArg() throws CoreException {
-		run("echoing.xml", new String[]{"echo3"}, false);
-		assertTrue("3 messages should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 3);
-		assertSuccessful();
-	}
-	
-	/**
-	 * Tests specifying a target at the command line with other options
-	 */
-	public void testSpecifyTargetAsArgWithOtherOptions() throws CoreException {
-		run("echoing.xml", new String[]{"-logfile", "TestLogFile.txt", "echo3"}, false);
-		assertTrue("4 messages should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 4);
-		List messages= AntTestChecker.getDefault().getMessages();
-		//ensure that echo3 target executed and only that target
-		assertTrue("echo3 target not executed", messages.get(2).equals("echo3"));
-		assertSuccessful();
-	}
-	
-	/**
-	 * Tests specifying targets at the command line with other options
-	 */
-	public void testSpecifyTargetsAsArgWithOtherOptions() throws CoreException {
-		run("echoing.xml", new String[]{"-logfile", "TestLogFile.txt", "echo2", "echo3"}, false);
-		assertTrue("5 messages should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 5);
-		List messages= AntTestChecker.getDefault().getMessages();
-		//ensure that echo2 target executed
-		assertTrue("echo2 target not executed", messages.get(2).equals("echo2"));
-		assertSuccessful();
-	}
-	
-	/**
-	 * Tests specifying a target at the command line and quiet reporting
-	 */
-	public void testSpecifyTargetAsArgAndQuiet() throws CoreException {
-		run("echoing.xml", new String[]{"-logfile", "TestLogFile.txt", "echo3", "-quiet"}, false);
-		assertTrue("1 message should have been logged; was " + AntTestChecker.getDefault().getMessagesLoggedCount(), AntTestChecker.getDefault().getMessagesLoggedCount() == 1);
-	}
-	
-	/**
-	 * Tests specifying a target at the command line and quiet reporting
-	 */
-	public void testMinusD() throws CoreException {
-		run("echoing.xml", new String[]{"-DAntTests=testing", "-Declipse.is.cool=true"}, false);
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as true", "true".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("AntTests should have a value of testing", "testing".equals(AntTestChecker.getDefault().getUserProperty("AntTests")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-	}
-	
-	public void testPropertyFileWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-propertyfile"});
-		} catch (CoreException ce) {
-			String msg= (String)AntTestChecker.getDefault().getMessages().get(0);
-			assertTrue("Message incorrect!: " + msg, msg.equals("You must specify a property filename when using the -propertyfile argument"));
-			return;
-		}
-		assertTrue("You must specify a property filename when using the -propertyfile argument", false);
-	}
-	
-	/**
	 * A build should succeed when a property file is not found.
-	 * The error is reported and the build continues.
	 */
-	public void testPropertyFileFileNotFound() throws CoreException {
-		
-		run("TestForEcho.xml", new String[]{"-propertyfile", "qq.txt"});
-		assertSuccessful();
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(0);
-		assertTrue("Message incorrect!: " + msg, msg.startsWith("Could not load property file qq.txt:"));
-	}
-	
-	public void testPropertyFile() throws CoreException {
-		run("TestForEcho.xml", new String[]{"-propertyfile", getPropertyFileName()});
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as Yep", "Yep".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("AntTests should have a value of testing", "testing from properties file".equals(AntTestChecker.getDefault().getUserProperty("AntTests")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-	}
-	
-	public void testPropertyFileWithMinusDTakingPrecedence() throws CoreException {
-		run("echoing.xml", new String[]{"-propertyfile", getPropertyFileName(), "-DAntTests=testing", "-Declipse.is.cool=true"}, false);
-		assertSuccessful();
-		assertTrue("eclipse.is.cool should have been set as true", "true".equals(AntTestChecker.getDefault().getUserProperty("eclipse.is.cool")));
-		assertTrue("AntTests should have a value of testing", "testing".equals(AntTestChecker.getDefault().getUserProperty("AntTests")));
-		assertNull("my.name was not set and should be null", AntTestChecker.getDefault().getUserProperty("my.name"));
-	}
-	
-	public void testInputHandlerWithNoArg() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-inputhandler"});
-		} catch (CoreException ce) {
-			String msg= ce.getMessage();
-			assertTrue("Message incorrect!: " + msg, msg.equals("You must specify a classname when using the -inputhandler argument"));
-			return;
-		}
-		assertTrue("You must specify a classname when using the -inputhandler argument", false);
-	}
-	
-	/**
-	 * Tests the "-inputhandler" option with two handlers specified...only one is allowed
-	 */
-	public void testInputHandlerMultiple() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-inputhandler", "org.apache.tools.ant.input.DefaultInputHandler", "-q", "-inputhandler", "org.apache.tools.ant.input.DefaultInputHandler"});
-		} catch (CoreException ce) {
-			String msg= ce.getMessage();
-			assertTrue("Message incorrect!: " + msg, msg.equals("Only one input handler class may be specified."));
-			return;
-		}
-		assertTrue("As only one input handler can be specified", false);
-	}
-	
-	/**
-	 * Tests the "-inputhandler" option with a input handler that is not an instance of InputHandler
-	 */
-	public void testInputHandlerBad() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-inputhandler", "java.lang.StringBuffer"});
-		} catch (CoreException ce) {
-			String msg= ce.getMessage();
-			assertTrue("Message incorrect!: " + msg, msg.equals("The specified input handler class java.lang.StringBuffer does not implement the org.apache.tools.ant.input.InputHandler interface"));
-			return;
-		}
-		assertTrue("Incorrect inputhandler", false);
-	}
-	
-	/**
-	 * Tests the "-inputhandler" option with a input handler that is not a defined class
-	 */
-	public void testInputHandlerBad2() throws CoreException {
-		try {
-			run("TestForEcho.xml", new String[]{"-inputhandler", "ja.lang.StringBuffer"});
-		} catch (CoreException ce) {
-			String msg= ce.getMessage();
-			assertTrue("Message incorrect!: " + msg, msg.startsWith("Unable to instantiate specified input handler class ja.lang.StringBuffer"));
-			return;
-		}
-		assertTrue("Incorrect inputhandler", false);
-	}
-	
-	/**
-	 * Tests the "-inputhandler" option with a test input handler
-	 */
-	public void testInputHandler() throws CoreException {
-		
-		run("input.xml", new String[]{"-inputhandler", "org.eclipse.ant.tests.core.inputHandlers.AntTestInputHandler"});
-		assertSuccessful();
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("testing handling input requests"));
-		
-	}
-	
-	/**
-	 * Tests the "-diagnostics" option with no ANT_HOME set
-	 * bug 25693
-	 */
-	public void testDiagnosticsWithNoAntHome() throws CoreException {
-		
-		run("input.xml", new String[]{"-diagnostics"});
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(0);
-		assertTrue("Message incorrect: " + msg, msg.equals("------- Ant diagnostics report -------"));
-	}
-	
-	/**
-	 * Tests the "-diagnostics" option with ANT_HOME set
-	 * bug 25693
-	 */
-	/*public void testDiagnostics() throws CoreException {
-		AntCorePlugin.getPlugin().getPreferences().setAntHome(getAntHome());
-		try {
-			run("input.xml", new String[]{"-diagnostics"});
-		} finally {
-			restorePreferenceDefaults();
-		}
-		
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("testing handling input requests"));
-	}*/
-}
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/ProjectTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/ProjectTests.java
deleted file mode 100644
index 62359ee..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/ProjectTests.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-
-
-public class ProjectTests extends AbstractAntTest {
-	
-	public ProjectTests(String name) {
-		super(name);
-	}
-	
-	/**
-	 * Tests that the three properties that should always be set are correct
-	 */
-	public void testBasePropertiesSet() throws CoreException {
-		String buildFileName="TestForEcho.xml"; 
-		run(buildFileName);
-		IFile buildFile= getBuildFile(buildFileName);
-		String fullName= buildFile.getLocation().toFile().getAbsolutePath();
-		assertTrue("eclipse.running should have been set as true", "true".equals(AntTestChecker.getDefault().getUserProperty("eclipse.running")));
-		assertTrue("ant.file should have been set as the build file name", fullName.equals(AntTestChecker.getDefault().getUserProperty("ant.file")));
-		assertNotNull("ant.version should have been set", AntTestChecker.getDefault().getUserProperty("ant.version"));
-	}
-}
-
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TargetTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TargetTests.java
deleted file mode 100644
index e40d176..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TargetTests.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.io.File;
-
-import org.eclipse.ant.core.TargetInfo;
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.runtime.CoreException;
-
-
-public class TargetTests extends AbstractAntTest {
-	
-	public TargetTests(String name) {
-		super(name);
-	}
-	
-	/**
-	 * Ensures that a default target is found
-	 */
-	public void testDefaultTarget() throws CoreException {
-		TargetInfo[] targets= getTargets("TestForEcho.xml");
-		assertTrue("Should be two targets in TestForEcho.xml", targets.length == 2);
-		assertTrue("Test for Echo should be the default target", targets[1].isDefault());
-	}
-	
-	/**
-	 * Ensures that target names are retrieved properly
-	 */
-	public void testTargetNames() throws CoreException {
-		String[] targetNames= getTargetNames("TestForEcho.xml");
-		assertTrue("Should be two targets in TestForEcho.xml", targetNames.length == 2);
-		assertTrue("First name should be init", targetNames[0].equals("init"));
-		assertTrue("Second name should be Test for Echo", targetNames[1].equals("Test for Echo"));
-	}
-	
-	/**
-	 * Ensures that target descriptions are retrieved properly
-	 */
-	public void testTargetDescription() throws CoreException {
-		String[] targetDescriptions= getTargetDescriptions("TestForEcho.xml");
-		assertTrue("Should be two targets in TestForEcho.xml", targetDescriptions.length == 2);
-		assertNull("First description should be null", targetDescriptions[0]);
-		assertTrue("Second description should be Calls other targets", targetDescriptions[1].equals("Calls other echos"));
-	}
-	
-	/**
-	 * Ensures that target projects are retrieved properly
	 */
-	public void testTargetProject() throws CoreException {
-		String targetProject= getProjectName("TestForEcho.xml", "Test for Echo");
-		assertTrue("Project name should be Echo Test", "Echo Test".equals(targetProject));
-	}
-	
-	/**
-	 * Ensures that target dependencies are retrieved properly
	 */
-	public void testTargetDependencies() throws CoreException {
-		String[] dependencies= getDependencies("TestForEcho.xml", "Test for Echo");
-		assertNotNull("Dependencies should not be null", dependencies);
-		assertTrue("Should be one dependency in Test for Echo", dependencies.length == 1);
-		assertTrue("First dependency should be init", "init".equals(dependencies[0]));
-	}
-	
-	/**
-	 * Runs an Ant script and ensure that the build file location is logged
-	 */
-	public void testRunScript() throws CoreException {
-		run("TestForEcho.xml");
-		String message= (String)AntTestChecker.getDefault().getMessages().get(0);
-		assertTrue("Build file location should be logged as the first message", message != null && message.endsWith("AntTests" + File.separator + "scripts" + File.separator + "TestForEcho.xml"));
-		assertSuccessful();
-	}
-}
-
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TaskTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TaskTests.java
deleted file mode 100644
index 711fea8..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TaskTests.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.ant.core.AntCorePlugin;
-import org.eclipse.ant.core.AntCorePreferences;
-import org.eclipse.ant.core.Task;
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.runtime.CoreException;
-
-public class TaskTests extends AbstractAntTest {
-
-	
-	public TaskTests(String name) {
-		super(name);
-	}
-	
-	public void testAddTask() throws MalformedURLException, CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		Task newTask= new Task();
-		String path= getProject().getFolder("lib").getFile("antTestsSupport.jar").getLocation().toFile().getAbsolutePath();
-		URL url= new URL("file:" + path);
-		URL urls[] = prefs.getCustomURLs();
-		URL newUrls[] = new URL[urls.length + 1];
-		System.arraycopy(urls, 0, newUrls, 0, urls.length);
-		newUrls[urls.length] = url;
-		prefs.setCustomURLs(newUrls);
-		
-		newTask.setLibrary(url);
-		newTask.setTaskName("AntTestTask");
-		newTask.setClassName("org.eclipse.ant.tests.core.tasks.AntTestTask");
-		prefs.setCustomTasks(new Task[]{newTask});
-		
-		prefs.updatePluginPreferences();
-		
-		run("CustomTask.xml");
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("Testing Ant in Eclipse with a custom task"));
-		assertSuccessful();
-	}
-	
-	public void testRemoveTask() throws CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		prefs.setCustomTasks(new Task[]{});
-		try {
-			run("CustomTask.xml");
-		} catch (CoreException ce) {
-			assertTrue("Exception from undefined task is incorrect", ce.getMessage().endsWith("as this is not an Ant bug."));
-			return;
-		}
-		assertTrue("Build should have failed as task no longer defined", false);
-		restorePreferenceDefaults();
-	}
-}
diff --git a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TypeTests.java b/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TypeTests.java
deleted file mode 100644
index d88e01f..0000000
--- a/ant/org.eclipse.ant.tests.core/tests/org/eclipse/ant/tests/core/tests/TypeTests.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.ant.tests.core.tests;
-
-/**********************************************************************
-Copyright (c) 2002 IBM Corp. and others. All rights reserved.
-This file is made available under the terms of the Common Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/cpl-v10.html
-**********************************************************************/
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.ant.core.*;
-import org.eclipse.ant.core.AntCorePlugin;
-import org.eclipse.ant.core.AntCorePreferences;
-import org.eclipse.ant.core.Type;
-import org.eclipse.ant.tests.core.AbstractAntTest;
-import org.eclipse.ant.tests.core.testplugin.AntTestChecker;
-import org.eclipse.core.runtime.CoreException;
-
-public class TypeTests extends AbstractAntTest {
-
-	public TypeTests(String name) {
-		super(name);
-	}
-
-	public void testAddType() throws MalformedURLException, CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		Type newType= new Type();
-		String path= getProject().getFolder("lib").getFile("antTestsSupport.jar").getLocation().toFile().getAbsolutePath();
-		URL url= new URL("file:" + path);
-		newType.setLibrary(url);
-		newType.setTypeName("AntTestType");
-		newType.setClassName("org.eclipse.ant.tests.core.types.AntTestType");
-		prefs.setCustomTypes(new Type[]{newType});
-		
-		Task newTask= new Task();
-		path= getProject().getFolder("lib").getFile("antTestsSupport.jar").getLocation().toFile().getAbsolutePath();
-		url= new URL("file:" + path);
-		newTask.setLibrary(url);
-		newTask.setTaskName("AntTestTaskWithCustomType");
-		newTask.setClassName("org.eclipse.ant.tests.core.tasks.AntTestTaskWithCustomType");
-		prefs.setCustomTasks(new Task[]{newTask});
-		
-		run("CustomType.xml");
-		String msg= (String)AntTestChecker.getDefault().getMessages().get(1);
-		assertTrue("Message incorrect: " + msg, msg.equals("Test adding a custom type"));
-		assertSuccessful();
-	}
-	
-	/*public void testRemoveType() throws CoreException {
-		AntCorePreferences prefs =AntCorePlugin.getPlugin().getPreferences();
-		prefs.setCustomTypes(new Type[]{});
-		try {
-			run("CustomType.xml");
-		} catch (CoreException ce) {
-			assertTrue("Exception from undefined type is incorrect", ce.getMessage().endsWith("as this is not an Ant bug."));
-			return;
-		}
-		assertTrue("Build should have failed as type no longer defined", false);
-		restorePreferenceDefaults();
-	}*/
-}
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/ClasspathOrdering.xml b/ant/org.eclipse.ant.tests.core/testscripts/ClasspathOrdering.xml
deleted file mode 100644
index c99b65e..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/ClasspathOrdering.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<project name="ClasspathOrdering" default="ordered" basedir="..">
-
-	<target name="ordered">
-		<java classname= "ClasspathOrdering"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/CustomTask.xml b/ant/org.eclipse.ant.tests.core/testscripts/CustomTask.xml
deleted file mode 100644
index c9dc442..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/CustomTask.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<project name="Custom Task" default="Custom Task" basedir=".">
-	<target name="init">
-		<tstamp/>
-	</target>
-
-	<target name="Custom Task" description= "Test adding a custom task" depends="init">
-		<AntTestTask/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/CustomType.xml b/ant/org.eclipse.ant.tests.core/testscripts/CustomType.xml
deleted file mode 100644
index 3082c96..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/CustomType.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<project name="Custom Type" default="Custom Type" basedir=".">
-	<target name="init">
-		<tstamp/>
-	</target>
-
-	<target name="Custom Type" description= "Test adding a custom type" depends="init">
-		<AntTestTaskWithCustomType>
-			<AntTestType message="Test adding a custom type"/>
-		</AntTestTaskWithCustomType>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/NoDefault.xml b/ant/org.eclipse.ant.tests.core/testscripts/NoDefault.xml
deleted file mode 100644
index 305d7e9..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/NoDefault.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<project name= "Testing" default="build">
-
-	<target name= "test">
-		<echo message="testing"/>
-	</target>
-</project>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/TestForEcho.xml b/ant/org.eclipse.ant.tests.core/testscripts/TestForEcho.xml
deleted file mode 100644
index d177497..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/TestForEcho.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<project name="Echo Test" default="Test for Echo" basedir=".">
-	<target name="init">
-		<tstamp/>
-	</target>
-
-	<target name="Test for Echo" description= "Calls other echos" depends="init">
-		<ant antfile="scripts/echoing.xml" dir="../../AntTests" target="echo1"/>
-		<ant antfile="scripts/echoing.xml" dir="../../AntTests" target="echo2"/>
-		<ant antfile="scripts/echoing.xml" dir="../../AntTests" target="echo3"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/build.xml b/ant/org.eclipse.ant.tests.core/testscripts/build.xml
deleted file mode 100644
index 7638a53..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/build.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<project name="Eching" default="echo1" basedir="..">
-
-	<target name="echo1">
-		<echo message="echo1"/>
-	</target>
-	
-	<target name="echo2">
-		<echo message="echo2"/>
-	</target>
-	
-	<target name="echo3" description= "An echo3!">
-		<echo message="echo3"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/echoing.xml b/ant/org.eclipse.ant.tests.core/testscripts/echoing.xml
deleted file mode 100644
index 7638a53..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/echoing.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<project name="Eching" default="echo1" basedir="..">
-
-	<target name="echo1">
-		<echo message="echo1"/>
-	</target>
-	
-	<target name="echo2">
-		<echo message="echo2"/>
-	</target>
-	
-	<target name="echo3" description= "An echo3!">
-		<echo message="echo3"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/input.xml b/ant/org.eclipse.ant.tests.core/testscripts/input.xml
deleted file mode 100644
index 8d70ab5..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/input.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<project name="input testing" default= "input test">
-	<target name="input test">
-		<input message="Enter for echo" addproperty= "inputTest">
-		</input>
-		<echo message="${inputTest}"/>
-	</target>	
-</project>
\ No newline at end of file
diff --git a/ant/org.eclipse.ant.tests.core/testscripts/javac.xml b/ant/org.eclipse.ant.tests.core/testscripts/javac.xml
deleted file mode 100644
index 42f0225..0000000
--- a/ant/org.eclipse.ant.tests.core/testscripts/javac.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="org.eclipse.ant.core" default="build" basedir="..">
-
-	
-	<target name="init" depends="properties">
-		<property name="plugin" value="AntTests"/>
-		<property name="temp.folder" value="${basedir}/temp.folder"/>
-		<property name="plugin.destination" value="${basedir}"/>
-		<property name="build.result.folder" value="${basedir}"/>
-	</target>
-	
-	<target name="properties" if="use.eclipse.JDTCompiler">
-		<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
-	</target>
-	
-	<target name="build" depends="init">
-		<property name="destdir" value="${temp.folder}/javac.bin"/>
-		<delete dir="${temp.folder}/javac.bin"/>
-		<mkdir dir="${temp.folder}/javac.bin"/>
-		<!-- compile the source code -->
-		<javac destdir="${temp.folder}/javac.bin" failonerror="false" verbose="false" debug="on" includeAntRuntime="yes">
-			<src path="resources"/>
-		</javac>
-	</target>
-	
-	<target name="clean" depends="init">
-		<delete dir="${temp.folder}"/>
-	</target>
-
-	<target name="refresh" depends="init" if="eclipse.running">
-		<eclipse.refreshLocal resource="${plugin}" depth="infinite"/>
-	</target>
-</project>
diff --git a/ant/org.eclipse.ant.ui/.classpath b/ant/org.eclipse.ant.ui/.classpath
deleted file mode 100644
index 6b2a02d..0000000
--- a/ant/org.eclipse.ant.ui/.classpath
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/ant/org.eclipse.ant.ui/.cvsignore b/ant/org.eclipse.ant.ui/.cvsignore
deleted file mode 100644
index 57b480f..0000000
--- a/ant/org.eclipse.ant.ui/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-lib
diff --git a/ant/org.eclipse.ant.ui/.project b/ant/org.eclipse.ant.ui/.project
deleted file mode 100644
index 24f7c98..0000000
--- a/ant/org.eclipse.ant.ui/.project
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.ant.ui</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.team.cvs.core.cvsnature</nature>
-	</natures>
-</projectDescription>
diff --git a/ant/org.eclipse.ant.ui/README.txt b/ant/org.eclipse.ant.ui/README.txt
deleted file mode 100644
index c21ea37..0000000
--- a/ant/org.eclipse.ant.ui/README.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-The org.eclipse.ant.ui plug-in is now considered to be obsolete.
-
-The functionality previously available in this project has been absorbed by
-the org.eclipse.ui.externaltools project.
-
-Please refer to the org.eclipse.ui.externaltools project for current implementation.
diff --git a/platform/org.eclipse.platform/.classpath b/platform/org.eclipse.platform/.classpath
deleted file mode 100644
index dbbc1d8..0000000
--- a/platform/org.eclipse.platform/.classpath
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="src" path="src"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/platform/org.eclipse.platform/.cvsignore b/platform/org.eclipse.platform/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/platform/org.eclipse.platform/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/platform/org.eclipse.platform/.eclipseproduct b/platform/org.eclipse.platform/.eclipseproduct
deleted file mode 100644
index 4fd1b09..0000000
--- a/platform/org.eclipse.platform/.eclipseproduct
+++ /dev/null
@@ -1,3 +0,0 @@
-name=Eclipse Platform

-id=org.eclipse.platform

-version=2.0.0
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/.project b/platform/org.eclipse.platform/.project
deleted file mode 100644
index 824510e..0000000
--- a/platform/org.eclipse.platform/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.platform</name>

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.jdt.core.javabuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

-		<nature>org.eclipse.jdt.core.javanature</nature>

-	</natures>

-</projectDescription>

diff --git a/platform/org.eclipse.platform/about.html b/platform/org.eclipse.platform/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/platform/org.eclipse.platform/about.html
+++ /dev/null
@@ -1,30 +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">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/about.ini b/platform/org.eclipse.platform/about.ini
deleted file mode 100644
index 862cc4f..0000000
--- a/platform/org.eclipse.platform/about.ini
+++ /dev/null
@@ -1,34 +0,0 @@
-# about.ini

-# contains information about a feature

-# java.io.Properties file (ISO 8859-1 with "\" escapes)

-# "%key" are externalized strings defined in about.properties

-# This file does not need to be translated.

-

-# Property "aboutText" contains blurb for "About" dialog (translated)

-# Maximum 15 lines and 75 characters per line.

-aboutText=%blurb

-

-# Property "windowImage" contains path to window icon (16x16)

-windowImage=eclipse.gif

-

-# Property "featureImage" contains path to feature image (32x32)

-featureImage=eclipse32.gif

-

-# Property "aboutImage" contains path to product image.

-# Full-sized product image: no larger than 500x330 pixels

-# Half-sized product image: no larger than 250x330 pixels

-# A full-sized product image is shown without the "aboutText" blurb.

-# A half-sized product image is shown with the "aboutText" blurb beside it.

-aboutImage=eclipse_lg.gif

-

-# Property "appName" contains name of the application (translated)

-appName=%appName

-

-# Property "welcomePage" contains path to welcome page (special XML-based format)

-# ($nl$/ prefix to permit locale-specific translations of entire file)

-welcomePage=$nl$/welcome.xml

-

-# Property "welcomePerspective" contains the id of the perspective in which the

-# welcome page is to be opened.

-# optional

-

diff --git a/platform/org.eclipse.platform/about.mappings b/platform/org.eclipse.platform/about.mappings
deleted file mode 100644
index 720ca87..0000000
--- a/platform/org.eclipse.platform/about.mappings
+++ /dev/null
@@ -1,6 +0,0 @@
-# about.mappings

-# contains fill-ins for about.properties

-# java.io.Properties file (ISO 8859-1 with "\" escapes)

-# This file does not need to be translated.

-

-0=@build@
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/about.properties b/platform/org.eclipse.platform/about.properties
deleted file mode 100644
index 6a655c7..0000000
--- a/platform/org.eclipse.platform/about.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-# about.properties
-# contains externalized strings for about.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# fill-ins are supplied by about.mappings
-# This file should be translated.
-
-appName=Eclipse
-
-blurb=Eclipse Platform\n\
-\n\
-Version: 2.0\n\
-Build id: {0}\n\
-\n\
-(c) Copyright IBM Corp. and others 2000, 2002.  All rights reserved.\n\
-Visit http://www.eclipse.org/platform\n\
-\n\
-This product includes software developed by the\n\
-Apache Software Foundation http://www.apache.org/
diff --git a/platform/org.eclipse.platform/build.properties b/platform/org.eclipse.platform/build.properties
deleted file mode 100644
index 20a43da..0000000
--- a/platform/org.eclipse.platform/build.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-source.startup.jar=src/
-
-src.includes=about.html
-
-bin.includes=\
-about.html,\
-about.ini,\
-about.mappings,\
-about.properties,\
-eclipse_lg.gif,\
-eclipse.gif,\
-eclipse32.gif,\
-plugin_customization.ini,\
-plugin_customization.properties,\
-plugin.xml,\
-plugin.properties,\
-splash.bmp,\
-welcome.xml
-
-# note: the following files are intentionally not listed in bin.includes
-#    install.ini
-#    cpl-v10.html
-#    notice.html
-#    startup.jar
-# these files need to end up as root files in <install>/eclipse/
diff --git a/platform/org.eclipse.platform/cpl-v10.html b/platform/org.eclipse.platform/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/platform/org.eclipse.platform/cpl-v10.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-<HEAD>
-<TITLE>Common Public License - v 1.0</TITLE>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</HEAD>
-
-<BODY BGCOLOR="#FFFFFF" VLINK="#800000">
-
-
-<P ALIGN="CENTER"><B>Common Public License - v 1.0</B>
-<P><B></B><FONT SIZE="3"></FONT>
-<P><FONT SIZE="3"></FONT><FONT SIZE="2">THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT").  ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.</FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"><B>1.  DEFINITIONS</B></FONT>
-<P><FONT SIZE="2">"Contribution" means:</FONT>
-
-<UL><FONT SIZE="2">a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and<BR CLEAR="LEFT">
-b) in the case of each subsequent Contributor:</FONT></UL>
-
-
-<UL><FONT SIZE="2">i)	 	changes to the Program, and</FONT></UL>
-
-
-<UL><FONT SIZE="2">ii)		additions to the Program;</FONT></UL>
-
-
-<UL><FONT SIZE="2">where such changes and/or additions to the Program originate from and are distributed by that particular Contributor.  </FONT><FONT SIZE="2">A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf.  </FONT><FONT SIZE="2">Contributions do not include additions to the Program which:  (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program.  </FONT></UL>
-
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">"Contributor" means any person or entity that distributes the Program.</FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">"Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program.  </FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2">"Program" means the Contributions distributed in accordance with this Agreement.</FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">"Recipient" means anyone who receives the Program under this Agreement, including all Contributors.</FONT>
-<P><FONT SIZE="2"><B></B></FONT>
-<P><FONT SIZE="2"><B>2.  GRANT OF RIGHTS</B></FONT>
-
-<UL><FONT SIZE="2"></FONT><FONT SIZE="2">a)	</FONT><FONT SIZE="2">Subject to the terms of this Agreement, each Contributor hereby grants</FONT><FONT SIZE="2"> Recipient a non-exclusive, worldwide, royalty-free copyright license to</FONT><FONT SIZE="2" COLOR="#FF0000"> </FONT><FONT SIZE="2">reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form.</FONT></UL>
-
-
-<UL><FONT SIZE="2"></FONT></UL>
-
-
-<UL><FONT SIZE="2"></FONT><FONT SIZE="2">b) 	Subject to the terms of this Agreement, each Contributor hereby grants </FONT><FONT SIZE="2">Recipient a non-exclusive, worldwide,</FONT><FONT SIZE="2" COLOR="#008000"> </FONT><FONT SIZE="2">royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form.  This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents.  The patent license shall not apply to any other combinations which include the Contribution.  No hardware per se is licensed hereunder.   </FONT></UL>
-
-
-<UL><FONT SIZE="2"></FONT></UL>
-
-
-<UL><FONT SIZE="2">c)	Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity.  Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise.  As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any.  For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program.</FONT></UL>
-
-
-<UL><FONT SIZE="2"></FONT></UL>
-
-
-<UL><FONT SIZE="2">d)	Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. </FONT></UL>
-
-
-<UL><FONT SIZE="2"></FONT></UL>
-
-<P><FONT SIZE="2"><B>3.  REQUIREMENTS</B></FONT>
-<P><FONT SIZE="2"><B></B>A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that:</FONT>
-
-<UL><FONT SIZE="2">a)	it complies with the terms and conditions of this Agreement; and</FONT></UL>
-
-
-<UL><FONT SIZE="2">b)	its license agreement:</FONT></UL>
-
-
-<UL><FONT SIZE="2">i)	effectively disclaims</FONT><FONT SIZE="2"> on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; </FONT></UL>
-
-
-<UL><FONT SIZE="2">ii) 	effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; </FONT></UL>
-
-
-<UL><FONT SIZE="2">iii)</FONT><FONT SIZE="2">	states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and</FONT></UL>
-
-
-<UL><FONT SIZE="2">iv)	states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange.</FONT><FONT SIZE="2" COLOR="#0000FF"> </FONT><FONT SIZE="2" COLOR="#FF0000"></FONT></UL>
-
-
-<UL><FONT SIZE="2" COLOR="#FF0000"></FONT><FONT SIZE="2"></FONT></UL>
-
-<P><FONT SIZE="2">When the Program is made available in source code form:</FONT>
-
-<UL><FONT SIZE="2">a)	it must be made available under this Agreement; and </FONT></UL>
-
-
-<UL><FONT SIZE="2">b)	a copy of this Agreement must be included with each copy of the Program.  </FONT></UL>
-
-<P><FONT SIZE="2"></FONT><FONT SIZE="2" COLOR="#0000FF"><STRIKE></STRIKE></FONT>
-<P><FONT SIZE="2" COLOR="#0000FF"><STRIKE></STRIKE></FONT><FONT SIZE="2">Contributors may not remove or alter any copyright notices contained within the Program.  </FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution.  </FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"><B>4.  COMMERCIAL DISTRIBUTION</B></FONT>
-<P><FONT SIZE="2">Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like.  While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors.   Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering.  The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement.  In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations.  The Indemnified Contributor may participate in any such claim at its own expense.</FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">For example, a Contributor might include the Program in a commercial product offering, Product X.  That Contributor is then a Commercial Contributor.  If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone.  Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages.</FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2" COLOR="#0000FF"></FONT>
-<P><FONT SIZE="2" COLOR="#0000FF"></FONT><FONT SIZE="2"><B>5.  NO WARRANTY</B></FONT>
-<P><FONT SIZE="2">EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is</FONT><FONT SIZE="2"> solely responsible for determining the appropriateness of using and distributing </FONT><FONT SIZE="2">the Program</FONT><FONT SIZE="2"> and assumes all risks associated with its exercise of rights under this Agreement</FONT><FONT SIZE="2">, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, </FONT><FONT SIZE="2">programs or equipment, and unavailability or interruption of operations</FONT><FONT SIZE="2">.  </FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2"><B>6.  DISCLAIMER OF LIABILITY</B></FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2">EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES </FONT><FONT SIZE="2">(INCLUDING WITHOUT LIMITATION LOST PROFITS),</FONT><FONT SIZE="2"> HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"><B>7.  GENERAL</B></FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2">If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.</FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed.  In addition, if Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. </FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance.  If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable.  However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive.  </FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2">Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted  and may only be modified in the following manner. The Agreement Steward reserves the right to </FONT><FONT SIZE="2">publish new versions (including revisions) of this Agreement from time to </FONT><FONT SIZE="2">time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward.   IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity.  </FONT><FONT SIZE="2">Each new version of the Agreement will be given a distinguishing version number.  The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new </FONT><FONT SIZE="2">version.  </FONT><FONT SIZE="2">Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, </FONT><FONT SIZE="2">by implication, estoppel or otherwise</FONT><FONT SIZE="2">.</FONT><FONT SIZE="2">  All rights in the Program not expressly granted under this Agreement are reserved.</FONT>
-<P><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2">This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose.  Each party waives its rights to a jury trial in any resulting litigation.</FONT>
-<P><FONT SIZE="2"></FONT><FONT SIZE="2"></FONT>
-<P><FONT SIZE="2"></FONT>
-
-</BODY>
-
-</HTML>
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/eclipse.gif b/platform/org.eclipse.platform/eclipse.gif
deleted file mode 100644
index 6ca37e0..0000000
--- a/platform/org.eclipse.platform/eclipse.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/eclipse32.gif b/platform/org.eclipse.platform/eclipse32.gif
deleted file mode 100644
index f71a8f6..0000000
--- a/platform/org.eclipse.platform/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/eclipse_lg.gif b/platform/org.eclipse.platform/eclipse_lg.gif
deleted file mode 100644
index 27c0838..0000000
--- a/platform/org.eclipse.platform/eclipse_lg.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/install.ini b/platform/org.eclipse.platform/install.ini
deleted file mode 100644
index f004e5f..0000000
--- a/platform/org.eclipse.platform/install.ini
+++ /dev/null
@@ -1,14 +0,0 @@
-# install.ini 

-# java.io.Properties file (ISO 8859-1 with "\" escapes)

-# This file does not need to be translated.

-

-# Required property "feature.default.id" contains id of the primary feature

-# (the primary feature controls product branding, splash screens, and plug-in

-# customization)

-feature.default.id=org.eclipse.platform

-

-# Required property "feature.default.application" contains id of the core

-# application that gets control on startup. For products with a UI, this

-# is always org.eclipse.ui.workbench; for "headless" products, this is

-# product-specific.

-feature.default.application=org.eclipse.ui.workbench

diff --git a/platform/org.eclipse.platform/notice.html b/platform/org.eclipse.platform/notice.html
deleted file mode 100644
index 00d784b..0000000
--- a/platform/org.eclipse.platform/notice.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-<title>Eclipse.org Software User Agreement</title>
-</head>
-
-<body lang="EN-US" link=blue vlink=purple>
-<h2>Eclipse.org Software User Agreement</h2>
-<p>17th June, 2002</p>
-
-<p>ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
-   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
-   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
-   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
-   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
-   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<p>Unless otherwise indicated, all Content made available by Eclipse.org is provided to you under the terms and conditions of the Common Public License Version 1.0
-   (&quot;CPL&quot;).  A copy of the CPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-   For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse.org CVS repository (&quot;Repository&quot;) in CVS
-   modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<p>Content may be apportioned into plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;). A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Files named &quot;feature.xml&quot; may contain a list of the names and version numbers of  the Plug-ins and/or Fragments associated with a Feature.   Plug-ins and Fragments are located in directories
-   named &quot;plugins&quot; and Features are located in directories named &quot;features&quot;.</p>
-  
-<p>Features may also include other Features (&quot;Included Features&quot;). Files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</p>
-  
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
-	<li>The top-level (root) directory</li>
-	<li>Plug-in and Fragment directories</li>
-	<li>Subdirectories of the directory named &quot;src&quot; of certain Plug-ins</li>
-	<li>Feature directories</li>
-</ul>
-		
-<p>Note: if a Feature made available by Eclipse.org is installed using the Eclipse Update Manager, you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot;.
-Such Abouts, Feature Licenses and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.  The Abouts, Feature Licenses and Feature Update Licenses may refer to the CPL or other license agreements, notices or terms and conditions . It is your obligation to read and accept all such all terms and conditions prior to use of the Content.
-If no About, Feature License or Feature Update License is provided, please contact Eclipse.org to determine what terms and conditions govern that particular Content.</p>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
-   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
-   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-</body>
-</html>
diff --git a/platform/org.eclipse.platform/plugin.properties b/platform/org.eclipse.platform/plugin.properties
deleted file mode 100644
index c79ef30..0000000
--- a/platform/org.eclipse.platform/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-pluginName=Eclipse Platform
-providerName=Eclipse.org
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/plugin.xml b/platform/org.eclipse.platform/plugin.xml
deleted file mode 100644
index e5ec1d0..0000000
--- a/platform/org.eclipse.platform/plugin.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin
-  name="%pluginName"
-  id="org.eclipse.platform"
-  version="2.1.0"
-  provider-name="%providerName">
-  
-  <runtime>
-  	<library name="startup.jar" />
-  </runtime>
-  
-</plugin>
diff --git a/platform/org.eclipse.platform/plugin_customization.ini b/platform/org.eclipse.platform/plugin_customization.ini
deleted file mode 100644
index 2ac113b..0000000
--- a/platform/org.eclipse.platform/plugin_customization.ini
+++ /dev/null
@@ -1,16 +0,0 @@
-# plugin_customization.ini 

-# sets default values for plug-in-specific preferences

-# keys are qualified by plug-in id

-# e.g., com.example.acmeplugin/myproperty=myvalue

-# java.io.Properties file (ISO 8859-1 with "\" escapes)

-# "%key" are externalized strings defined in plugin_customization.properties

-# This file does not need to be translated.

-

-# Property "org.eclipse.ui/defaultPerspectiveId" controls the 

-# perspective that the workbench opens initially

-org.eclipse.ui/defaultPerspectiveId=org.eclipse.ui.resourcePerspective

-

-

-

-

-

diff --git a/platform/org.eclipse.platform/plugin_customization.properties b/platform/org.eclipse.platform/plugin_customization.properties
deleted file mode 100644
index 64cee2c..0000000
--- a/platform/org.eclipse.platform/plugin_customization.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-# plugin_customization.properties
-# contains externalized strings for plugin_customization.ini
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
diff --git a/platform/org.eclipse.platform/splash.bmp b/platform/org.eclipse.platform/splash.bmp
deleted file mode 100644
index f93c262..0000000
--- a/platform/org.eclipse.platform/splash.bmp
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/src/org/eclipse/core/launcher/Main.java b/platform/org.eclipse.platform/src/org/eclipse/core/launcher/Main.java
deleted file mode 100644
index e569aec..0000000
--- a/platform/org.eclipse.platform/src/org/eclipse/core/launcher/Main.java
+++ /dev/null
@@ -1,1414 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000,2002 IBM Corporation and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v0.5
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v05.html
- * 
- * Contributors:
- * IBM - Initial API and implementation
- ******************************************************************************/
-package org.eclipse.core.launcher;
-
-import java.io.*;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.net.*;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-/**
- * Startup class for Eclipse. Creates a class loader using
- * supplied URL of platform installation, loads and calls
- * the Eclipse Boot Loader.  The startup arguments are as follows:
- * <dl>
- * <dd>
- *    -application &lt;id&gt;: the identifier of the application to run
- * </dd>
- * <dd>
- *    -boot &lt;location&gt;: the location, expressed as a URL, of the platform's boot.jar
- * </dd>
- * <dd>
- *    -consolelog : enables log to the console. Handy when combined with -debug
- * </dd>
- * <dd>
- *    -data &lt;location&gt;: sets the workspace location and the default location for projects
- * </dd>
- * <dd>
- *    -debug [options file]: turns on debug mode for the platform and optionally specifies a location
- * for the .options file. This file indicates what debug points are available for a
- * plug-in and whether or not they are enabled. If a location is not specified, the platform searches
- * for the .options file under the install directory
- * </dd>
- * <dd>
- *    -dev [entries]: turns on dev mode and optionally specifies comma-separated class path entries
- * which are added to the class path of each plug-in
- * </dd>
- * <dd>
- *    -keyring &lt;location&gt;: the location of the authorization database on disk. This argument
- * has to be used together with the -password argument
- * </dd>
- * <dd>
- *    -password &lt;passwd&gt;: the password for the authorization database
- * </dd>
- * <dd>
- *    -plugins &lt;location&gt;: The arg is a URL pointing to a file which specs the plugin 
- * path for the platform.  The file is in property file format where the keys are user-defined 
- * names and the values are comma separated lists of either explicit paths to plugin.xml 
- * files or directories containing plugins. (e.g., .../eclipse/plugins).
- * </dd>
- * <dd>
- *    -ws &lt;window system&gt;: sets the window system value
- * </dd>
- * </dl>
- */
-public class Main {
-	/**
-	 * Indicates whether this instance is running in debug mode.
-	 */
-	protected boolean debug = false;
-	
-	/**
-	 * The location of the launcher to run.
-	 */
-	protected String bootLocation = null;
-	
-	/**
-	 * The location of the install root
-	 */
-	protected String rootLocation = null;
-	
-	/**
-	 * The identifier of the application to run.
-	 */
-	protected String application;
-	
-	/**
-	 * The identifier of the feature to run.
-	 */
-	protected String feature;
-	
-	/**
-	 * The identifier of the configuration to use.
-	 */
-	protected String configuration;
-	
-	/**
-	 * The path for finding find plugins.
-	 */
-	protected URL pluginPathLocation;
-	
-	/**
-	 * The boot path location.
-	 */
-	protected String location;		
-		
-	/**
-	 * The class path entries.
-	 */
-	protected String devClassPath = null;
-	
-	/**
-	 * Indicates whether this instance is running in development mode.
-	 */
-	protected boolean inDevelopmentMode = false;
-
-	// splash handling
-	private String showSplash = null; 
-	private String endSplash = null; 
-	private boolean cmdInitialize = false;
-	private boolean cmdFirstUse = false;
-	private Process showProcess = null;
-	private boolean splashDown = false; 
-	private final Runnable endSplashHandler = new Runnable() {
-		public void run() {
-			takeDownSplash();
-		}
-	}; 
-	
-	// configuration properties
-	private Properties props = new Properties();
-	private HashMap featureIndex = new HashMap();
-	private String baseLocation = null;
-	
-	// constants
-	private static final String APPLICATION = "-application"; //$NON-NLS-1$
-	private static final String BOOT = "-boot"; //$NON-NLS-1$
-	private static final String INSTALL = "-install"; //$NON-NLS-1$
-	private static final String INITIALIZE = "-initialize"; //$NON-NLS-1$
-	private static final String DEBUG = "-debug"; //$NON-NLS-1$
-	private static final String DEV = "-dev"; //$NON-NLS-1$
-	private static final String DATA = "-data"; //$NON-NLS-1$
-	private static final String CONFIGURATION = "-configuration"; //$NON-NLS-1$
-	private static final String FEATURE = "-feature"; //$NON-NLS-1$
-	private static final String SHOWSPLASH = "-showsplash"; //$NON-NLS-1$
-	private static final String ENDSPLASH = "-endsplash"; //$NON-NLS-1$
-	private static final String FIRST_USE = "-firstuse"; //$NON-NLS-1$
-	private static final String SPLASH_IMAGE = "splash.bmp"; //$NON-NLS-1$
-	private static final String PI_BOOT = "org.eclipse.core.boot"; //$NON-NLS-1$
-	private static final String BOOTLOADER = "org.eclipse.core.boot.BootLoader"; //$NON-NLS-1$
-	private static final String BOOTJAR = "boot.jar"; //$NON-NLS-1$
-	private static final String PLATFORM_URL = "platform:/base/"; //$NON-NLS-1$
-	
-	// constants: configuration file location
-	private static final String CONFIG_FILE = "platform.cfg"; //$NON-NLS-1$
-	private static final String CONFIG_FILE_TEMP_SUFFIX = ".tmp"; //$NON-NLS-1$
-	private static final String CONFIG_FILE_BAK_SUFFIX = ".bak"; //$NON-NLS-1$
-	private static final String ARG_USER_DIR = "user.dir"; //$NON-NLS-1$
-	
-	// constants: configuration file elements
-	private static final String CFG_CORE_BOOT = "bootstrap." + PI_BOOT;  //$NON-NLS-1$
-	private static final String CFG_FEATURE_ENTRY = "feature"; //$NON-NLS-1$
-	private static final String CFG_FEATURE_ENTRY_DEFAULT = "feature.default.id"; //$NON-NLS-1$
-	private static final String CFG_FEATURE_ENTRY_ID = "id"; //$NON-NLS-1$
-	private static final String CFG_FEATURE_ENTRY_ROOT = "root"; //$NON-NLS-1$
-	private static final String CFG_EOF = "eof"; //$NON-NLS-1$
-
-	// log file handling
-	protected static final String SESSION = "!SESSION"; //$NON-NLS-1$
-	protected static final String ENTRY = "!ENTRY"; //$NON-NLS-1$
-	protected static final String MESSAGE = "!MESSAGE"; //$NON-NLS-1$
-	protected static final String STACK = "!STACK"; //$NON-NLS-1$
-	protected static final int ERROR = 4;
-	protected static final String PLUGIN_ID = "org.eclipse.core.launcher"; //$NON-NLS-1$
-	protected static File logFile = null;
-	protected static BufferedWriter log = null;
-	protected static String[] arguments;
-	protected static boolean newSession = true;
-
-	static class Identifier {
-		private static final String DELIM = ". "; //$NON-NLS-1$
-		private int major, minor, service;
-		private Identifier(int major, int minor, int service) {
-			super();
-			this.major = major;
-			this.minor = minor;
-			this.service = service;
-		}
-		private Identifier(String versionString) {
-			super();
-			StringTokenizer tokenizer = new StringTokenizer(versionString, DELIM);
-			
-			// major
-			if (tokenizer.hasMoreTokens())
-				major = Integer.parseInt(tokenizer.nextToken());
-
-			// minor
-			if (tokenizer.hasMoreTokens())
-				minor = Integer.parseInt(tokenizer.nextToken());
-
-			// service
-			if (tokenizer.hasMoreTokens())
-				service = Integer.parseInt(tokenizer.nextToken());
-		}
-		/**
-		 * Returns true if this id is considered to be greater than or equal to the given baseline.
-		 * e.g. 
-		 * 1.2.9 >= 1.3.1 -> false
-		 * 1.3.0 >= 1.3.1 -> false
-		 * 1.3.1 >= 1.3.1 -> true
-		 * 1.3.2 >= 1.3.1 -> true
-		 * 2.0.0 >= 1.3.1 -> true
-		 */
-		private boolean isGreaterEqualTo(Identifier minimum) {
-			if (major < minimum.major)
-				return false;
-			if (major > minimum.major)
-				return true;
-			// major numbers are equivalent so check minor
-			if (minor < minimum.minor)
-				return false;
-			if (minor > minimum.minor)
-				return true;
-			// minor numbers are equivalent so check service
-			return service >= minimum.service;
-		}
-	}
-/**
- * Executes the launch.
- * 
- * @return the result of performing the launch
- * @param args command-line arguments
- * @exception Exception thrown if a problem occurs during the launch
- */
-protected Object basicRun(String[] args) throws Exception {
-	// locate boot plugin (may return -dev mode variations)
-	URL[] bootPath = getBootPath(bootLocation);
-	
-	// splash handling is done here, because the default case needs to know
-	// the location of the boot plugin we are going to use
-	handleSplash(bootPath);
-	
-	// load the BootLoader and startup the platform
-	Class clazz = getBootLoader(bootPath);
-	Method method = clazz.getDeclaredMethod("run", new Class[] { String.class, URL.class, String.class, String[].class, Runnable.class }); //$NON-NLS-1$
-	try {
-		return method.invoke(clazz, new Object[] { application, pluginPathLocation, location, args, endSplashHandler });
-	} catch (InvocationTargetException e) {
-		if (e.getTargetException() instanceof Error)
-			throw (Error) e.getTargetException();
-		else
-			throw e;
-	}
-}
-/**
- * Returns a string representation of the given URL String.  This converts
- * escaped sequences (%..) in the URL into the appropriate characters.
- * NOTE: due to class visibility there is a copy of this method
- *       in InternalBootLoader
- */
-protected String decode(String urlString) {
-	//try to use Java 1.4 method if available
-	try {
-		Class clazz = URLDecoder.class;
-		Method method = clazz.getDeclaredMethod("decode", new Class[] {String.class, String.class});//$NON-NLS-1$
-		//first encode '+' characters, because URLDecoder incorrectly converts 
-		//them to spaces on certain class library implementations.
-		if (urlString.indexOf('+') >= 0) {
-			int len = urlString.length();
-			StringBuffer buf = new StringBuffer(len);
-			for (int i = 0; i < len; i++) {
-				char c = urlString.charAt(i);
-				if (c == '+')
-					buf.append("%2B");//$NON-NLS-1$
-				else
-					buf.append(c);
-			}
-			urlString = buf.toString();
-		}
-		Object result = method.invoke(null, new Object[] {urlString, "UTF-8"});//$NON-NLS-1$
-		if (result != null)
-			return (String)result;
-	} catch (Exception e) {
-		//JDK 1.4 method not found -- fall through and decode by hand
-	}
-	//decode URL by hand
-	boolean replaced = false;
-	byte[] encodedBytes = urlString.getBytes();
-	int encodedLength = encodedBytes.length;
-	byte[] decodedBytes = new byte[encodedLength];
-	int decodedLength = 0;
-	for (int i = 0; i < encodedLength; i++) {
-		byte b = encodedBytes[i];
-		if (b == '%') {
-			byte enc1 = encodedBytes[++i];
-			byte enc2 = encodedBytes[++i];
-			b = (byte) ((hexToByte(enc1) << 4) + hexToByte(enc2));
-			replaced = true;
-		}
-		decodedBytes[decodedLength++] = b;
-	}
-	if (!replaced)
-		return urlString;
-	try {
-		return new String(decodedBytes, 0, decodedLength, "UTF-8");//$NON-NLS-1$
-	} catch (UnsupportedEncodingException e) {
-		//use default encoding
-		return new String(decodedBytes, 0, decodedLength);
-	}
-}
-/**
- * Returns the result of converting a list of comma-separated tokens into an array
- * 
- * @return the array of string tokens
- * @param prop the initial comma-separated string
- */
-private String[] getArrayFromList(String prop) {
-	if (prop == null || prop.trim().equals("")) //$NON-NLS-1$
-		return new String[0];
-	Vector list = new Vector();
-	StringTokenizer tokens = new StringTokenizer(prop, ","); //$NON-NLS-1$
-	while (tokens.hasMoreTokens()) {
-		String token = tokens.nextToken().trim();
-		if (!token.equals("")) //$NON-NLS-1$
-			list.addElement(token);
-	}
-	return list.isEmpty() ? new String[0] : (String[]) list.toArray(new String[0]);
-}
-/**
- * Creates and returns a platform <code>BootLoader</code> which can be used to start
- * up and run the platform.  
- * 
- * @return the new boot loader
- * @param path search path for the BootLoader
- */
-public Class getBootLoader(URL[] path) throws Exception {
-	URLClassLoader loader = new URLClassLoader(path, null);
-	return loader.loadClass(BOOTLOADER);
-}
-/**
- * Returns the <code>URL</code>-based class path describing where the boot classes
- * are located when running in development mode.
- * 
- * @return the url-based class path
- * @param base the base location
- * @exception MalformedURLException if a problem occurs computing the class path
- */
-protected URL[] getDevPath(URL base) throws MalformedURLException {
-	URL url;
-	String devBase = base.toExternalForm();
-	if (!inDevelopmentMode) {
-		url = new URL(devBase + BOOTJAR);
-		return new URL[] {url};
-	}
-	String[] locations = getArrayFromList(devClassPath);
-	ArrayList result = new ArrayList(locations.length);
-	for (int i = 0; i < locations.length; i++) {
-		String spec = devBase + locations[i];
-		char lastChar = spec.charAt(spec.length() - 1);
-		if ((spec.endsWith(".jar") || (lastChar == '/' || lastChar == '\\'))) //$NON-NLS-1$
-			url = new URL (spec);
-		else
-			url = new URL(spec + "/"); //$NON-NLS-1$
-		//make sure URL exists before adding to path
-		if (new java.io.File(url.getFile()).exists())
-			result.add(url);
-	}
-	url = new URL(devBase + BOOTJAR);
-	if (new java.io.File(url.getFile()).exists())
-		result.add(url);
-	return (URL[])result.toArray(new URL[result.size()]);
-}
-
-/**
- * Returns the <code>URL</code>-based class path describing where the boot classes are located.
- * 
- * @return the url-based class path
- * @param base the base location
- * @exception MalformedURLException if a problem occurs computing the class path
- */
-protected URL[] getBootPath(String base) throws MalformedURLException {
-	URL url = null;
-	// if the given location is not null, assume it is correct and use it. 
-	if (base != null) {
-		url = new URL(base);
-		if (debug)
-			System.out.println("Boot URL: " + url.toExternalForm()); //$NON-NLS-1$
-		return new URL[] {url};	
-	}
-	// search for boot in root location
-	URL[] result = null;
-	url = new URL(rootLocation);
-	String path = url.getFile();
-	path = searchForBoot(path);
-	// add on any dev path elements
-	url = new URL(url.getProtocol(), url.getHost(), url.getPort(), path);
-	result = getDevPath(url);
-	if (debug) {
-		System.out.println("Boot URL:"); //$NON-NLS-1$
-		for (int i = 0; i < result.length; i++)
-			System.out.println("    " + result[i].toExternalForm()); //$NON-NLS-1$
-	}
-	return result;
-}
-
-/**
- * Searches for a boot directory starting in the "plugins" subdirectory
- * of the given location.  If one is found then this location is returned; 
- * otherwise an exception is thrown.
- * 
- * @return the location where boot directory was found
- * @param start the location to begin searching at
- */
-protected String searchForBoot(String start) {
-	FileFilter filter = new FileFilter() {
-		public boolean accept(File candidate) {
-			return candidate.isDirectory() &&
-				(candidate.getName().equals(PI_BOOT)
-				|| candidate.getName().startsWith(PI_BOOT + "_")); //$NON-NLS-1$
-		}
-	};
-	File[] boots = new File(start, "plugins").listFiles(filter); //$NON-NLS-1$
-	if (boots == null)
-		throw new RuntimeException("Could not find bootstrap code. Check location of boot plug-in or specify -boot."); //$NON-NLS-1$
-	String result = null;
-	Object maxVersion = null;
-	for (int i = 0; i < boots.length; i++) {
-		String name = boots[i].getName();
-		int index = name.indexOf('_');
-		String version;
-		Object currentVersion;
-		if (index == -1)
-			version = "";  //$NON-NLS-1$ // Note: directory with version suffix is always > than directory without version suffix
-		else
-			version = name.substring(index + 1);
-		currentVersion = getVersionElements(version);			
-		if (maxVersion == null) {
-			result = boots[i].getAbsolutePath();
-			maxVersion = currentVersion;
-		} else {
-			if (compareVersion((Object[])maxVersion, (Object[])currentVersion) < 0) {
-				result = boots[i].getAbsolutePath();
-				maxVersion = currentVersion;
-			}
-		}
-	}
-	if (result == null)
-		throw new RuntimeException("Could not find bootstrap code. Check location of boot plug-in or specify -boot."); //$NON-NLS-1$
-	return result.replace(File.separatorChar, '/') + "/"; //$NON-NLS-1$
-}
-
-/**
- * Compares version strings. 
- * @return result of comparison, as integer;
- * <code><0</code> if left < right;
- * <code>0</code> if left == right;
- * <code>>0</code> if left > right;
- */
-private int compareVersion(Object[] left, Object[] right) {
-	
-	int result = ((Integer)left[0]).compareTo((Integer)right[0]); // compare major
-	if (result != 0)
-		return result;
-		
-	result = ((Integer)left[1]).compareTo((Integer)right[1]); // compare minor
-	if (result != 0)
-		return result;
-		
-	result = ((Integer)left[2]).compareTo((Integer)right[2]); // compare service
-	if (result != 0)
-		return result;
-		
-	return ((String)left[3]).compareTo((String)right[3]); // compare qualifier
-}
-
-/**
- * Do a quick parse of version identifier so its elements can be correctly compared.
- * If we are unable to parse the full version, remaining elements are initialized
- * with suitable defaults.
- * @return an array of size 4; first three elements are of type Integer (representing
- * major, minor and service) and the fourth element is of type String (representing
- * qualifier). Note, that returning anything else will cause exceptions in the caller.
- */
-private Object[] getVersionElements(String version) {
-	Object[] result = {new Integer(0), new Integer(0), new Integer(0), ""}; //$NON-NLS-1$
-	StringTokenizer t = new StringTokenizer(version, "."); //$NON-NLS-1$
-	String token;
-	int i = 0;
-	while(t.hasMoreTokens() && i<4) {
-		token = t.nextToken();
-		if (i<3) {
-			// major, minor or service ... numeric values
-			try {
-				result[i++] = new Integer(token);
-			} catch(Exception e) {
-				// invalid number format - use default numbers (0) for the rest
-				break; 
-			}
-		} else {
-			// qualifier ... string value
-			result[i++] = token;
-		}
-	}
-	return result;
-}
-
-/**
- * Runs the platform with the given arguments.  The arguments must identify
- * an application to run (e.g., <code>-application com.example.application</code>).
- * After running the application <code>System.exit(N)</code> is executed.
- * The value of N is derived from the value returned from running the application.
- * If the application's return value is an <code>Integer</code>, N is this value.
- * In all other cases, N = 0.
- * <p>
- * Clients wishing to run the platform without a following <code>System.exit</code>
- * call should use <code>run()</code>.
- *
- * @see #run
- * 
- * @param args the command line arguments
- */
-public static void main(String[] args) {
-	Object result = null;
-	arguments = args;
-	// Check to see if we are running with a compatible VM.
-	// If not, then return exit code "14" which will be recognized
-	// by the executable and an appropriate message will be displayed
-	// to the user.
-	if (!isCompatible())
-		System.exit(14);
-	// Check to see if there is already a platform running in
-	// this workspace. If there is, then return an exit code of "15" which
-	// will be recognized by the executable and an appropriate message
-	// will be displayed to the user.
-	if (isAlreadyRunning())
-		System.exit(15);
-	Main launcher = new Main();
-	try {
-		result = launcher.run(args);
-	} catch (Throwable e) {
-		// try and take down the splash screen.
-		launcher.takeDownSplash();
-		log("Exception launching the Eclipse Platform:"); //$NON-NLS-1$
-		log(e);
-		// Return "unlucky" 13 as the exit code. The executable will recognize
-		// this constant and display a message to the user telling them that
-		// there is information in their log file.
-		System.exit(13);
-	}
-	int exitCode = result instanceof Integer ? ((Integer) result).intValue() : 0;
-	System.exit(exitCode);
-}
-
-/**
- * Runs this launcher with the arguments specified in the given string.
- * 
- * @param argString the arguments string
- * @exception Exception thrown if a problem occurs during launching
- */
-public static void main(String argString) throws Exception {
-	Vector list = new Vector(5);
-	for (StringTokenizer tokens = new StringTokenizer(argString, " "); tokens.hasMoreElements();) //$NON-NLS-1$
-		list.addElement((String) tokens.nextElement());
-	main((String[]) list.toArray(new String[list.size()]));
-}
-
-/**
- * Processes the command line arguments
- * 
- * @return the arguments to pass through to the launched application
- * @param args the command line arguments
- */
-protected String[] processCommandLine(String[] args) throws Exception {
-	int[] configArgs = new int[100];
-	configArgs[0] = -1; // need to initialize the first element to something that could not be an index.
-	int configArgIndex = 0;
-	for (int i = 0; i < args.length; i++) {
-		boolean found = false;
-		// check for args without parameters (i.e., a flag arg)
-		// check if debug should be enabled for the entire platform
-		if (args[i].equalsIgnoreCase(DEBUG)) {
-			debug = true;
-			// passed thru this arg (i.e., do not set found = true
-			continue;
-		}
-		
-		// check if this is initialization pass
-		if (args[i].equalsIgnoreCase(INITIALIZE)) {
-			cmdInitialize = true;
-			// passed thru this arg (i.e., do not set found = true
-			continue;
-		}
-		
-		// check if development mode should be enabled for the entire platform
-		// If this is the last arg or there is a following arg (i.e., arg+1 has a leading -), 
-		// simply enable development mode.  Otherwise, assume that that the following arg is
-		// actually some additional development time class path entries.  This will be processed below.
-		if (args[i].equalsIgnoreCase(DEV) && ((i + 1 == args.length) || ((i + 1 < args.length) && (args[i + 1].startsWith("-"))))) { //$NON-NLS-1$
-			inDevelopmentMode = true;
-			// do not mark the arg as found so it will be passed through
-			continue;
-		}
-
-		// done checking for args.  Remember where an arg was found 
-		if (found) {
-			configArgs[configArgIndex++] = i;
-			continue;
-		}
-		// check for args with parameters. If we are at the last argument or if the next one
-		// has a '-' as the first character, then we can't have an arg with a parm so continue.
-		if (i == args.length - 1 || args[i + 1].startsWith("-"))  //$NON-NLS-1$
-			continue;
-		String arg = args[++i];
-
-		// look for the laucher to run
-		if (args[i - 1].equalsIgnoreCase(BOOT)) {
-			bootLocation = arg;
-			found = true;
-		}
-
-		// look explicitly set install root
-		if (args[i - 1].equalsIgnoreCase(INSTALL)) {
-			rootLocation = arg;
-			found = true;
-		}
-
-		// look for the development mode and class path entries.  
-		if (args[i - 1].equalsIgnoreCase(DEV)) {
-			inDevelopmentMode = true;
-			devClassPath = arg;
-			continue;
-		}
-
-		// look for the location of workspace
-		if (args[i - 1].equalsIgnoreCase(DATA)) {
-			baseLocation = arg;
-			continue; // pass the arg on
-		}
-
-		// look for the application to run
-		if (args[i - 1].equalsIgnoreCase(APPLICATION)) {
-			application = arg;
-			found = true;
-		}
-
-		// look for the feature to run
-		if (args[i - 1].equalsIgnoreCase(FEATURE)) {
-			feature = arg;
-			continue; // pass the arg on [20063]
-		}
-
-		// look for the configuration to use
-		if (args[i - 1].equalsIgnoreCase(CONFIGURATION)) {
-			configuration = arg;
-			// we  mark -configuration for removal. It will be
-			// reinserted after we determine the actual URL of
-			// the configuration file to use.
-			found = true;
-		}
-
-		// look for token to use to show the splash screen
-		if (args[i - 1].equalsIgnoreCase(SHOWSPLASH)) {
-			showSplash = arg;
-			found = true;
-		}
-
-		// look for token to use to end the splash screen
-		if (args[i - 1].equalsIgnoreCase(ENDSPLASH)) {
-			endSplash = arg;
-			found = true;
-		}
-
-		// done checking for args.  Remember where an arg was found 
-		if (found) {
-			configArgs[configArgIndex++] = i - 1;
-			configArgs[configArgIndex++] = i;
-		}
-	}
-	// remove all the arguments consumed by this argument parsing
-	if (configArgIndex == 0)
-		return args;
-	String[] passThruArgs = new String[args.length - configArgIndex];
-	configArgIndex = 0;
-	int j = 0;
-	for (int i = 0; i < args.length; i++) {
-		if (i == configArgs[configArgIndex])
-			configArgIndex++;
-		else
-			passThruArgs[j++] = args[i];
-	}
-	return passThruArgs;
-}
-/**
- * Runs the application to be launched.
- * 
- * @return the return value from the launched application
- * @param args the arguments to pass to the application
- * @exception thrown if a problem occurs during launching
- */
-public Object run(String[] args) throws Exception {
-	String[] passThruArgs = processCommandLine(args);
-	passThruArgs = processConfiguration(passThruArgs);
-	return basicRun(passThruArgs);
-}
-
-/*
- * After the command line arguments have been processed, we try
- * to locate and load the platform configuration file. It contains
- * information maintained by the install/ update support. In 
- * particular, the following are needed at this point
- * in the startup sequence:
- * -> if -boot was not specified, which boot.jar to load 
- *    BootLoader from (original core.boot plugin may have been updated)
- * -> if -feature was not specified, what is the default feature
- *    (product packagers can set the default)
- * -> if we were requested to put up the splash (-showsplash
- *    was specified), which one (based on defaulted or
- *    specified feature information)
- * Note, that if we can't find the platform configuration file,
- * or it does not contain the information we are looking for,
- * the startup support ends up computing "reasonable" defaults
- * as before (based on relative locations within the file system)
- */
-private String[] processConfiguration(String[] passThruArgs) throws MalformedURLException {
-	// get install root location, if not specified
-	if (rootLocation == null)
-		rootLocation = getRootURL().toExternalForm();
-		
-	// attempt to locate configuration file
-	URL configURL = null;
-	if (configuration != null && !configuration.trim().equals("")) { //$NON-NLS-1$
-		configuration = configuration.replace(File.separatorChar, '/');
-		if (configuration.equalsIgnoreCase(ARG_USER_DIR)) {
-			// configuration is in current working directory
-			String tmp = System.getProperty("user.dir"); //$NON-NLS-1$
-			if (!tmp.endsWith(File.separator))
-				tmp += File.separator;
-			configURL = new URL("file:" + tmp.replace(File.separatorChar,'/') + CONFIG_FILE); //$NON-NLS-1$
-		} else if(configuration.endsWith("/")) { //$NON-NLS-1$
-			// configuration specified as directory URL		
-			configURL = new URL(configuration + CONFIG_FILE);
-		} else {
-			// configuration specified down to a file			
-			configURL = new URL(configuration);
-		}
-	} else {
-		// configuration not specified - defer to BootLoader
-	}
-		
-	// load configuration
-	loadConfiguration(configURL);
-	
-	// get boot url, if none was specified
-	if (bootLocation == null) {
-		String urlString = loadAttribute(props, CFG_CORE_BOOT, null);
-		if (urlString != null) {
-			try {
-				urlString = resolve(urlString);
-				URL bootDir = new URL(urlString);
-				URL bootURL = new URL(bootDir, BOOTJAR);
-				if (bootDir.getProtocol().equals("file")) { //$NON-NLS-1$
-					File jar = new File(bootURL.getFile());
-					if (jar.exists())
-						// verify boot dir exists
-						bootLocation = bootURL.toExternalForm();
-					else
-						// Somebody turned the tables on us. The info in
-						// platform.cfg is stale, or the workspace is being used
-						// with a new install. Do default search for boot and force
-						// "first use" processing (optimistic reconciliation)
-						cmdFirstUse = true;
-				} else
-					bootLocation = bootURL.toExternalForm();
-			} catch(MalformedURLException e) {
-				// continue ... will do default search for boot
-			}
-		}
-	}
-		
-	// reconstruct command line arguments for configuration elements
-	// (-boot and -application are not passed to BootLoader)
-	if (configURL == null && rootLocation == null)
-		return passThruArgs;
-			
-	ArrayList args = new ArrayList(Arrays.asList(passThruArgs));
-	
-	if (configURL != null) {
-		args.add(CONFIGURATION);
-		args.add(decode(configURL.toExternalForm()));
-	}
-	
-	if (cmdFirstUse) {
-		args.add(FIRST_USE);
-	}
-	
-	// pass root location downstream
-	if (rootLocation != null) {
-		args.add(INSTALL);
-		args.add(rootLocation);
-	}
-	
-	return (String[])args.toArray(new String[0]);
-}
-
-/**
- * Returns url of the location this class was loaded from
- */
-private URL getRootURL() throws MalformedURLException {
-	if (rootLocation != null)
-		return new URL(rootLocation);
-		
-	URL	url = getClass().getProtectionDomain().getCodeSource().getLocation();
-	String path = decode(url.getFile());
-	path = new File(path).getAbsolutePath().replace(File.separatorChar,'/');
-	if (path.endsWith(".jar")) //$NON-NLS-1$
-		path = path.substring(0, path.lastIndexOf("/")+1); //$NON-NLS-1$
-	url = new URL(url.getProtocol(), url.getHost(), url.getPort(), path);
-	rootLocation = url.toExternalForm();
-	return url;
-}
-
-/*
- * Load the configuration file. If not specified, default to the workspace
- */
-private void loadConfiguration(URL url) {
-	if (url == null) {
-		// configuration URL was not specified ..... search
-		String base = baseLocation;
-		if (base == null) {
-			// determine default workspace
-			base = System.getProperty("user.dir"); //$NON-NLS-1$
-			if (!base.endsWith(File.separator))
-				base += File.separator;
-			base += "workspace" + File.separator; //$NON-NLS-1$
-		} else {
-			base = base.replace('/',File.separatorChar);
-		}
-		if (!base.endsWith(File.separator))
-			base += File.separator;
-		
-		File cfg = null;	
-		try {
-			// first look for configuration in base location (workspace or as specified)
-			cfg = new File(base + ".metadata" + File.separator + ".config" + File.separator + CONFIG_FILE); //$NON-NLS-1$ //$NON-NLS-2$
-			url = new URL("file", null, 0, cfg.getAbsolutePath()); //$NON-NLS-1$
-			props = loadProperties(url);
-			if (debug)
-				System.out.println("Startup: using configuration " + url.toString()); //$NON-NLS-1$
-			return; // we're done looking
-		} catch(IOException e) {
-			// continue ...
-		}
-		
-		try {
-			// look for configuration in install root (set up by -initialize)
-			String install = getRootURL().getFile().replace('/',File.separatorChar);
-			if (!install.endsWith(File.separator))
-				install += File.separator;
-			cfg = new File(install + ".config" + File.separator + CONFIG_FILE); //$NON-NLS-1$
-			url = new URL("file", null, 0, cfg.getAbsolutePath()); //$NON-NLS-1$
-			props = loadProperties(url);
-			if (debug)
-				System.out.println("Startup: using configuration " + url.toString()); //$NON-NLS-1$
-		} catch(IOException e) {
-			// continue ...
-			if (debug)
-				System.out.println("Startup: unable to load configuration\n" + e); //$NON-NLS-1$
-		}
-	} else {
-		try {
-			// configuration url was specified ... use it
-			props = loadProperties(url);
-			if (debug)
-				System.out.println("Startup: using configuration " + url.toString()); //$NON-NLS-1$
-		} catch(IOException e) {
-			// continue ...
-			if (debug)
-				System.out.println("Startup: unable to load configuration\n" + e); //$NON-NLS-1$
-		}
-	}
-}
-
-private Properties loadProperties(URL url) throws IOException {
-		
-	// try to load saved configuration file (watch for failed prior save())
-	Properties props = null;
-	IOException originalException = null;
-	try {
-		props = load(url, null); // try to load config file
-	} catch(IOException e1) {
-		originalException = e1;
-		try {
-			props = load(url, CONFIG_FILE_TEMP_SUFFIX); // check for failures on save
-		} catch(IOException e2) {
-			try {
-				props = load(url, CONFIG_FILE_BAK_SUFFIX); // check for failures on save
-			} catch(IOException e3) {
-				throw originalException; // we tried, but no config here ...
-			}
-		}
-	}
-	
-	return props;
-}
- 
-/*
- * Load the configuration  
- */ 
-private Properties load(URL url, String suffix) throws IOException {
-	// figure out what we will be loading
-	if (suffix != null && !suffix.equals("")) //$NON-NLS-1$
-		url = new URL(url.getProtocol(),url.getHost(),url.getPort(),url.getFile()+suffix);
-			
-	// try to load saved configuration file
-	Properties props = new Properties();
-	InputStream is = null;
-	try {
-		is = url.openStream();
-		props.load(is);
-		// check to see if we have complete config file
-		if (!CFG_EOF.equals(props.getProperty(CFG_EOF))) {
-			throw new IOException();
-		}
-	} finally {
-		if (is!=null) {
-			try {
-				is.close();
-			} catch(IOException e) {
-				//ignore failure to close
-			}
-		}
-	}
-	
-	// load feature index
-	if (props != null) {
-		String id = props.getProperty(CFG_FEATURE_ENTRY+".0."+CFG_FEATURE_ENTRY_ID); //$NON-NLS-1$
-		for (int i=1; id != null; i++) {
-			featureIndex.put(id, Integer.toString(i-1));
-			id = props.getProperty(CFG_FEATURE_ENTRY+"."+i+"."+CFG_FEATURE_ENTRY_ID); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-	
-	return props;
-}	
-	
-/*
- * Load a configuration attribute
- */	
-private String loadAttribute(Properties props, String name, String dflt) {
-	if (props == null)
-		return dflt;
-		
-	String prop = props.getProperty(name);
-	if (prop == null)
-		return dflt;
-	else
-		return prop.trim();
-}
-
-/*
- * Handle splash screen.
- * We support 2 startup scenarios:
- * 
- * (1) the executable launcher put up the splash screen. In that
- *     scenario we are invoked with -endsplash command which is
- *     fully formed to take down the splash screen
- * 
- * (2) the executable launcher did not put up the splash screen,
- *     but invokes Eclipse with partially formed -showsplash command.
- *     In this scenario we determine which splash to display (based on 
- *     feature information) and then call -showsplash command. 
- * 
- * In both scenarios we pass a handler (Runnable) to the platform.
- * The handler is called as a result of the launched application calling
- * Platform.endSplash(). In the first scenario this results in the
- * -endsplash command being executed. In the second scenarios this
- * results in the process created as a result of the -showsplash command
- * being destroyed.
- * 
- * @param bootPath search path for the boot plugin
- */
-private void handleSplash(URL[] bootPath) {
-	
-	// run without splash if we are initializing
-	if (cmdInitialize) {
-		showSplash = null;
-		endSplash = null;
-		return;
-	}
-	
-	// if -endsplash is specified, use it and ignore any -showsplash command
-	if (endSplash != null) {
-		showSplash = null;
-		return;
-	}
-	
-	// check if we are running without a splash screen
-	if (showSplash == null)
-		return;
-
-	// determine the splash path
-	String path  = getSplashPath(bootPath);
-	if (debug && path != null) {
-		System.out.println("Startup: splash path = "+path); //$NON-NLS-1$
-	}
-		
-	// Parse the showsplash command into its separate arguments.
-	// The command format is: 
-	//     <executable> -show <magicArg> [<splashPath>]
-	// If either the <executable> or the <splashPath> arguments contain a
-	// space, Runtime.getRuntime().exec( String ) will not work, even
-	// if both arguments are enclosed in double-quotes. The solution is to
-	// use the Runtime.getRuntime().exec( String[] ) method.
-	String[] cmd = new String[ (path != null ? 4 : 3) ];
-	int sIndex = 0;
-	int eIndex = showSplash.indexOf( " -show" ); //$NON-NLS-1$
-	if (eIndex == -1)
-		return; // invalid -showsplash command
-	cmd[0] = showSplash.substring( sIndex, eIndex );
-	sIndex = eIndex + 1;
-	eIndex = showSplash.indexOf( " ", sIndex ); //$NON-NLS-1$
-	if (eIndex == -1)
-		return; // invalid -showsplash command
-	cmd[1] = showSplash.substring( sIndex, eIndex );
-	cmd[2] = showSplash.substring( eIndex+1 );
-	if (path != null)
-		cmd[3] = path;
-	try {
-		showProcess = Runtime.getRuntime().exec(cmd);
-	} catch (Exception e) {
-		// continue without splash ...
-		log("Exception showing splash screen."); //$NON-NLS-1$
-		log(e);
-	}
-	return;
-}
-
-/*
- * take down the splash screen. Try both take-down methods just in case
- * (only one should ever be set)
- */
-private void takeDownSplash() {
-	if (splashDown) // splash is already down
-		return;
-		
-	// check if -endsplash was specified
-	if (endSplash != null) {
-		try {
-			Runtime.getRuntime().exec(endSplash);
-		} catch (Exception e) {
-			//ignore failure to end splash
-		}
-	}
-	
-	// check if -showsplash was specified and executed
-	if (showProcess != null) {
-		showProcess.destroy();
-		showProcess = null;
-	}
-	
-	splashDown = true;
-}
-
-/*
- * Return path of the splash image to use
- */
-private String getSplashPath(URL[] bootPath) {
-	
-	// see if we can get a splash for the launched feature
-	String[] featurePath = getFeatureRoot();	
-	String path = lookupSplash(featurePath);
-	if (path != null)
-		return path;
-	
-	// no feature path, default to current boot plugin
-	String temp = bootPath[0].getFile(); // take the first path element
-	temp = temp.replace('/', File.separatorChar);
-	int ix = temp.lastIndexOf("plugins"+File.separator); //$NON-NLS-1$
-	if (ix != -1) {
-		int pix = temp.indexOf(File.separator, ix+8);
-		if (pix != -1) {
-			temp = temp.substring(0,pix);
-			path = lookupSplash(new String[] { temp });
-			return path;
-		}
-	}
-		
-	// sorry, no splash found
-	return null;
-}
-
-/*
- * Do a locale-sensitive lookup of splash image
- */
- private String lookupSplash(String[] searchPath) {
- 	if (searchPath == null)
- 		return null;
- 	
- 	// get current locale information
- 	String localePath = Locale.getDefault().toString().replace('_', File.separatorChar);
- 	
- 	// search the specified path
- 	while (localePath != null) {
- 		String suffix;
- 		if (localePath.equals("")) { //$NON-NLS-1$
- 			// look for nl'ed splash image
- 			suffix = SPLASH_IMAGE;
- 		} else {
- 			// look for default splash image
- 			suffix = "nl" + File.separator + localePath + File.separator + SPLASH_IMAGE; //$NON-NLS-1$
- 		}
- 			
- 		// check for file in searchPath
- 		for (int i=0; i<searchPath.length; i++) {
- 			String path = searchPath[i];
- 			if (!path.endsWith(File.separator))
- 				path += File.separator;
- 			path += suffix;
- 			File splash = new File(path);
- 			if (splash.exists())
- 				return splash.getAbsolutePath(); // return the first match found [20063]
- 		}
- 		
- 		// try the next variant
- 		if (localePath.equals("")) //$NON-NLS-1$
- 			localePath = null;
- 		else {
- 			int ix = localePath.lastIndexOf(File.separator);
- 			if (ix == -1)
- 				localePath = ""; //$NON-NLS-1$
- 			else
- 				localePath = localePath.substring(0,ix);
- 		}
- 	} 
- 	
- 	// sorry, could not find splash image
- 	return null;
- }
-
-/*
- * Return the feature identifier to use (specified or defaulted)
- */
-private String getFeatureIdentifier() {
-		
-	if (feature != null) // -feature was specified on command line
-		return feature; 
-		
-	// feature was not specified on command line
-	String dflt = props.getProperty(CFG_FEATURE_ENTRY_DEFAULT);
-	if (dflt != null)
-		return dflt; // return customized default if set.
-	else
-		return null; // otherwise let BootLoader pick default
-}
-
-/*
- * Return the feature root if known
- */
-private String[] getFeatureRoot() {
-	String ix = featureIndex(getFeatureIdentifier());
-	String urlString = props.getProperty(CFG_FEATURE_ENTRY + "." + ix + "." + CFG_FEATURE_ENTRY_ROOT + ".0"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	if (urlString == null)
-		return null;
-	
-	ArrayList result = new ArrayList();
-	URL url = null;
-	for (int i=1; urlString != null; i++) {
-		try {	
-			urlString = resolve(urlString); // resolve platform relative URLs
-			url = new URL(urlString);
-			if (url.getProtocol().equals("file")) { //$NON-NLS-1$
-				result.add(url.getFile().replace('/', File.separatorChar));
-			} else
-				continue; // in the future may cache
-		} catch(MalformedURLException e) {
-			// skip bad entries
-		}
-		urlString = props.getProperty(CFG_FEATURE_ENTRY + "." + ix + "." + CFG_FEATURE_ENTRY_ROOT + "." + i); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-	
-	if (result.size()>0)
-		return (String[])result.toArray(new String[0]);
-	else 
-		return null;
-}
-
-/*
- * resolve platform:/base/ URLs
- */
- private String resolve(String urlString) throws MalformedURLException { 	
- 	if (urlString.startsWith(PLATFORM_URL)) {
- 		String root = getRootURL().toExternalForm();
- 		if (!root.endsWith("/")) //$NON-NLS-1$
- 			root += "/"; //$NON-NLS-1$
- 		String path = urlString.substring(PLATFORM_URL.length());
- 		return root + path;
- 	} else
- 		return urlString;
- }
-
-/*
- * 
- */
-private String featureIndex(String id) {
-	if (id==null)
-		return null;
-	return (String)featureIndex.get(id);
-}
-
-/*
- * Entry point for logging.
- */
-private static synchronized void log(Object obj) {
-	if (obj == null)
-		return;
-	try {
-		openLogFile();
-		try {
-			if (newSession) {
-				log.write(SESSION);
-				log.write(' ');
-				for (int i=SESSION.length(); i<78; i++)
-					log.write('-');
-				log.newLine();
-				newSession = false;
-			}
-			write(obj);
-		} finally {
-			if (logFile == null) {
-				if (log != null)
-					log.flush();
-			} else
-				closeLogFile();
-		}
-	} catch (Exception e) {
-		System.err.println("An exception occurred while writing to the platform log:");//$NON-NLS-1$
-		e.printStackTrace(System.err);
-		System.err.println("Logging to the console instead.");//$NON-NLS-1$
-		//we failed to write, so dump log entry to console instead
-		try {
-			log = logForStream(System.err);
-			write(obj);
-			log.flush();
-		} catch (Exception e2) {
-			System.err.println("An exception occurred while logging to the console:");//$NON-NLS-1$
-			e2.printStackTrace(System.err);
-		}
-	} finally {
-			log = null;
-	}
-}
-/*
- * This should only be called from #log()
- */
-private static void write(Object obj) throws IOException {
-	if (obj == null)
-		return;
-	if (obj instanceof Throwable) {
-		log.write(STACK);
-		log.newLine();
-		((Throwable) obj).printStackTrace(new PrintWriter(log));
-	} else {
-		log.write(ENTRY);
-		log.write(' ');
-		log.write(PLUGIN_ID);
-		log.write(' ');
-		log.write(String.valueOf(ERROR));
-		log.write(' ');
-		log.write(String.valueOf(0));
-		log.write(' ');
-		try {
-			DateFormat formatter = new SimpleDateFormat("MMM dd, yyyy kk:mm:ss.SS"); //$NON-NLS-1$
-			log.write(formatter.format(new Date()));
-		} catch (Exception e) {
-			// continue if we can't write out the date
-			log.write(Long.toString(System.currentTimeMillis()));
-		}
-		log.newLine();
-		log.write(MESSAGE);
-		log.write(' ');
-		log.write(String.valueOf(obj));
-	}
-	log.newLine();
-}
-private static void computeLogFileLocation() {
-	if (logFile != null)
-		return;
-	// compute the base location and then append the name of the log file
-	File base = computeMetadataLocation();
-	logFile = new File(base, ".log"); //$NON-NLS-1$
-	logFile.getParentFile().mkdirs();
-}
-private static File computeLockFileLocation() {
-	// compute the base location and then append the name of the lock file
-	File base = computeMetadataLocation();
-	File result = new File(base, ".lock"); //$NON-NLS-1$
-	result.getParentFile().mkdirs();
-	return result;
-}
-private static File computeMetadataLocation() {
-
-	File result = null;
-	// check to see if the user specified a workspace location in the command-line args
-	for (int i=0; arguments != null && result == null && i<arguments.length; i++) {
-		if (arguments[i].equalsIgnoreCase(DATA)) {
-			// found the -data command line argument so the next argument should be the
-			// workspace location. Ensure that we have another arg to check
-			if (i+1<arguments.length)
-				result = new File(arguments[i+1]);
-		}
-	}
-	// otherwise use the default location
-	if (result == null)
-		result = new File(System.getProperty("user.dir"), "workspace");//$NON-NLS-1$ //$NON-NLS-2$
-	
-	// append the .metadata directory to the path
-	return new File(result, ".metadata"); //$NON-NLS-1$
-}
-/**
- * Converts an ASCII character representing a hexadecimal
- * value into its integer equivalent.
- */
-private int hexToByte(byte b) {
-	switch (b) {
-		case '0':return 0;
-		case '1':return 1;
-		case '2':return 2;
-		case '3':return 3;
-		case '4':return 4;
-		case '5':return 5;
-		case '6':return 6;
-		case '7':return 7;
-		case '8':return 8;
-		case '9':return 9;
-		case 'A':
-		case 'a':return 10;
-		case 'B':
-		case 'b':return 11;
-		case 'C':
-		case 'c':return 12;
-		case 'D':
-		case 'd':return 13;
-		case 'E':
-		case 'e':return 14;
-		case 'F':
-		case 'f':return 15;
-		default:
-			throw new IllegalArgumentException("Switch error decoding URL");
-	}
-}
-
-
-private static void openLogFile() throws IOException {
-	computeLogFileLocation();
-	try {
-		log = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(logFile.getAbsolutePath(), true), "UTF-8"));//$NON-NLS-1$
-	} catch (IOException e) {
-		logFile = null;
-		throw e;
-	}
-}
-private static BufferedWriter logForStream(OutputStream output) {
-	try {
-		return new BufferedWriter(new OutputStreamWriter(output, "UTF-8"));//$NON-NLS-1$
-	} catch (UnsupportedEncodingException e) {
-		return new BufferedWriter(new OutputStreamWriter(output));
-	}
-}
-private static void closeLogFile() throws IOException {
-	try {
-		if (log != null) {
-			log.flush();
-			log.close();
-		}
-	} finally {
-		log = null;
-	}
-}
-/**
- * Return a boolean value indicating whether or not the version of the JVM is
- * deemed to be compatible with Eclipse.
- */
-private static boolean isCompatible() {
-	try {
-		String vmVersionString = System.getProperty("java.version"); //$NON-NLS-1$
-		Identifier minimum = new Identifier(1, 3, 0);
-		Identifier version = new Identifier(vmVersionString);
-		return version.isGreaterEqualTo(minimum);
-	} catch (SecurityException e) {
-		// If the security manager won't allow us to get the system property, continue for
-		// now and let things fail later on their own if necessary.
-		return true;
-	} catch (NumberFormatException e) {
-		// If the version string was in a format that we don't understand, continue and
-		// let things fail later on their own if necessary.
-		return true;
-	}
-}
-/**
- * Return a boolean value indicating whether or not the platform is already
- * running in this workspace.
- */
-private static boolean isAlreadyRunning() {
-	// Calculate the location of the lock file
-	File lockFile = computeLockFileLocation();
-
-	// if the lock file already exists, try to delete,
-	// assume failure means another eclipse has it open
-	if (lockFile.exists())
-		lockFile.delete();
-	return lockFile.exists();
-}
-
-}
diff --git a/platform/org.eclipse.platform/src/org/eclipse/core/launcher/package.html b/platform/org.eclipse.platform/src/org/eclipse/core/launcher/package.html
deleted file mode 100644
index ca2e7ce..0000000
--- a/platform/org.eclipse.platform/src/org/eclipse/core/launcher/package.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-<head>
-   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-   <meta name="Author" content="IBM">
-   <meta name="GENERATOR" content="Mozilla/4.75 [en] (Windows NT 5.0; U) [Netscape]">
-   <title>Package-level Javadoc</title>
-</head>
-<body>
-Launches the Eclipse Platform.
-<h2>
-Package Specification</h2>
-
-This package is the main entry point to the Eclipse Platform.  To start the platform invoke the Main
-class in this package.
-<br>&nbsp;
-</body>
-</html>
diff --git a/platform/org.eclipse.platform/welcome.xml b/platform/org.eclipse.platform/welcome.xml
deleted file mode 100644
index f985556..0000000
--- a/platform/org.eclipse.platform/welcome.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?> 
-<welcomePage 
-	title="Eclipse Platform"
-	format="nowrap">
-	<intro>This page will help familiarize you with the Eclipse Workbench.
-To get started, read the sections below and click on the related links. </intro>
-
-<item><b>Installed Features </b>
-To find out more about the features installed in your workbench, choose <action pluginId="org.eclipse.ui"  class="org.eclipse.ui.internal.QuickStartAction">Help > Welcome...</action>
-and select the feature you are interested in.</item>
-
-<item><b>Perspectives, views and editors </b>
-A window contains one or more perspectives. A perspective consists of views (e.g. Navigator) 
-and editors for working with your resources.
-
-The shortcut bar at the far left of the window allows you to open new perspectives and move
-between perspectives that are already open. The perspective you are currently working with 
-is shown in the title of the window and in the shortcut bar as a pushed-in icon.</item>
-
-<item><b>Configuring your perspectives</b>
-You can move views and editors around the workbench by dragging their titlebars. You can
-also add more views to your current perspective by using Window > Show View. 
-To reset the perspective to its original state, choose <action pluginId="org.eclipse.ui"  class="org.eclipse.ui.internal.ResetPerspectiveAction">Window > Reset Perspective</action>. 
-
-Once you have arranged your perspective, you can save it using Window > Save Perspective As.... 
-You can customize the views, perspectives and New menu operations that show up for 
-your perspective. To do this choose <action pluginId="org.eclipse.ui"  class="org.eclipse.ui.internal.EditActionSetsAction">Window > Customize Perspective...</action> .  A view can
-additionally be converted into a Fast View by dragging it to the shortcut bar (at the 
-far left of the window). </item> 
-
-<item><b>Join a CVS team</b>
-To join a CVS development team, open the <action pluginId="org.eclipse.team.cvs.ui" class="org.eclipse.team.internal.ccvs.ui.actions.ShowCVSPerspectiveAction">CVS Repository Exploring perspective</action>. Next, specify
-the location of your CVS repository. To do this, choose <action pluginId="org.eclipse.team.cvs.ui" class="org.eclipse.team.internal.ccvs.ui.actions.NewCVSRepositoryAction">New > Repository Location...</action> from the
-CVS Repositories view popup menu. When the location wizard opens, fill in the details of your
-CVS repository and click Finish. 
-
-A repository location will appear in the CVS Repositories view. Expand the location, then expand
-the HEAD branch. You will see a list of the modules in that repository, which you can check out as
-an Eclipse project.
-
-For an anonymous connection to the Eclipse CVS repository, choose
-<action pluginId="org.eclipse.team.cvs.ui" class="org.eclipse.team.internal.ccvs.ui.actions.NewCVSAnonEclipseConnection">New > Anonymous Repository Location to dev.eclipse.org...</action>. Select the newly created location
-and expand HEAD. You will see the list of all the Eclipse modules, most of which are platform plugins.
-Select a plugin and choose <b>Checkout as Project</b> from the context menu. This will checkout
-the module from the CVS repository and create a plugin project by that name in your workspace.</item>
-
-
-<item><b>Learn more </b>
-To learn more you can browse the <topic id="/org.eclipse.platform.doc.user/toc.xml">Workbench User Guide</topic>.</item>
-
-
-</welcomePage>
\ No newline at end of file
diff --git a/update/org.eclipse.update.core.linux/.classpath b/update/org.eclipse.update.core.linux/.classpath
deleted file mode 100644
index 5921923..0000000
--- a/update/org.eclipse.update.core.linux/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="src"/>
-    <classpathentry kind="src" path="/org.eclipse.update.core"/>
-    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
-    <classpathentry kind="src" path="/org.eclipse.help"/>
-    <classpathentry kind="src" path="/org.apache.xerces"/>
-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.core.linux/.cvsignore b/update/org.eclipse.update.core.linux/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/update/org.eclipse.update.core.linux/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/update/org.eclipse.update.core.linux/.project b/update/org.eclipse.update.core.linux/.project
deleted file mode 100644
index d41874c..0000000
--- a/update/org.eclipse.update.core.linux/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.update.core.linux</name>

-	<comment></comment>

-	<projects>

-		<project>org.apache.xerces</project>

-		<project>org.eclipse.core.boot</project>

-		<project>org.eclipse.core.runtime</project>

-		<project>org.eclipse.help</project>

-		<project>org.eclipse.update.core</project>

-	</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.jdt.core.javanature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-	</natures>

-</projectDescription>

diff --git a/update/org.eclipse.update.core.linux/about.html b/update/org.eclipse.update.core.linux/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.core.linux/about.html
+++ /dev/null
@@ -1,30 +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">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/update/org.eclipse.update.core.linux/build.properties b/update/org.eclipse.update.core.linux/build.properties
deleted file mode 100644
index 40d668e..0000000
--- a/update/org.eclipse.update.core.linux/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = fragment.xml,\
-               os/,\
-               fragment.properties,\
-               about.html
-source.updatecorelinux.zip = src/
diff --git a/update/org.eclipse.update.core.linux/fragment.xml b/update/org.eclipse.update.core.linux/fragment.xml
deleted file mode 100644
index a21f2ae..0000000
--- a/update/org.eclipse.update.core.linux/fragment.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<fragment
-   id="org.eclipse.update.core.linux"
-   name="%fragmentNameLinux"
-   version="2.1.0"
-   provider-name="%providerName"
-   plugin-id="org.eclipse.update.core"
-   plugin-version="2.1.0"
-   match="compatible">
-
-   <runtime>
-   </runtime>
-
-
-</fragment>
diff --git a/update/org.eclipse.update.core.linux/os/linux/libupdate.so b/update/org.eclipse.update.core.linux/os/linux/libupdate.so
deleted file mode 100644
index 5533317..0000000
--- a/update/org.eclipse.update.core.linux/os/linux/libupdate.so
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.core.linux/src/build.xml b/update/org.eclipse.update.core.linux/src/build.xml
deleted file mode 100644
index b5b9703..0000000
--- a/update/org.eclipse.update.core.linux/src/build.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0"?>
-<project name="buildlibrary" default="run" basedir="."> 
-  
-  <!-- The properties ${eclipse-home} ${jdk-path} should be passed into this script -->
-  <!-- Set a meaningful default value for when it is not. -->
-  <property name="eclipse-home" value="${basedir}/../.."/>
-  <property name="jdk-path" value="${java.home}"/>  
-  <property name="destination" value="${eclipse-home}/org.eclipse.update.core.linux/os/linux/"/>
-  <property name="obj-path" value="${eclipse-home}/org.eclipse.update.core/src/"/>
-  <property name="src-path" value="${eclipse-home}/org.eclipse.update.core/src/"/>  
-  
-  <!-- sets the properties -->
-  <property name="library-name" value="libupdate"/>  
-  <property name="library-platform" value="so"/>    
-  <property name="library-file" value="${library-name}.${library-platform}"/>
-  
-  <!-- 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="${obj-path}" includes="${library-file}"/>
-      <fileset dir="${obj-path}" includes="${library-name}.o"/>
-    </delete>
-  </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">
-      <delete>
-      <fileset dir="${obj-path}" includes="${library-file}"/>
-      <fileset dir="${obj-path}" includes="${library-name}.o"/>
-    </delete>
-  </target>
-  
-  
-  <!-- This target runs the build. -->
-  <target name="run" depends="init,build,cleanup">
-  </target>
-  
-  <!-- This target build the library -->
-  <target name="build">
-    <echo message="Building ${library-file}"/>
-
-    <property name="header-path" value="${jdk-path}/include"/>
-    <property name="header-linux-path" value="${header-path}/linux" />
-
-	<echo message="gcc -o  ${library-file} -shared -I${src-path} -I${header-linux-path} ${library-file} -static -lc"/>
-
-    <apply executable="gcc" dest="${eclipse-home}/" parallel="false">
-      <arg value="-o"/>
-      <arg value="${library-file}"/>
-      <arg value="-shared"/>
-      <arg value="-I${src-path}"/>
-      <arg value="-I${header-path}"/>      
-      <arg value="-I${header-linux-path}"/>  
-	  <srcfile/>
-	  <arg value="-static"/>           
-      <arg value="-lc"/>	  
-      <fileset dir="${src-path}" includes="*.cpp"/>
-      <mapper type="glob" from="*.cpp" to="*.o"/>
-    </apply>
-    
-	<move file="${library-file}" todir="${destination}"/>
-  </target>
-  
-  
-</project>
\ No newline at end of file
diff --git a/update/org.eclipse.update.core.linux/src/update.cpp b/update/org.eclipse.update.core.linux/src/update.cpp
deleted file mode 100644
index fffaff9..0000000
--- a/update/org.eclipse.update.core.linux/src/update.cpp
+++ /dev/null
@@ -1,154 +0,0 @@
-/*

- * (c) Copyright IBM Corp. 2000, 2002.

- * All Rights Reserved.

- */

-

-# include <sys/types.h>

-# include <sys/statfs.h>

-# include <update.h>

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetFreeSpace

- * Signature: (Ljava/io/File;)J

- */

-JNIEXPORT jlong JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetFreeSpace(

-	JNIEnv * jnienv,

-	jclass javaClass,

-	jobject file) {

-

-	// to retrive the String

-	jclass cls;

-	jmethodID id;

-	jobject obj;

-

-	// java.io.File.getAbsolutePath()

-	const char * lpDirectoryName;

-

-	// Linux Parameters

-	struct statfs buffer;

-

-	// the result

-	jlong result = org_eclipse_update_configuration_LocalSystemInfo_SIZE_UNKNOWN;

-

-	// first, obtain the Path from the java.io.File parameter

-	cls = jnienv -> GetObjectClass(file);

-	id = jnienv -> GetMethodID(cls, "getAbsolutePath", "()Ljava/lang/String;");

-	obj = jnienv -> CallObjectMethod(file, id);

-	lpDirectoryName = jnienv -> GetStringUTFChars((jstring) obj, 0);

-

-	// cast one argument as jlong to have a jlong result

-	int err = statfs(lpDirectoryName,&buffer);

-	if (err==0){

-		long size = buffer.f_bsize;

-		jlong free = buffer.f_bfree;

-		result = size*free;

-	}

-

-	return result;

-}

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetLabel

- * Signature: (Ljava/io/File;)Ljava/lang/String;

- */

-JNIEXPORT jstring JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetLabel(

-	JNIEnv * jnienv,

-	jclass javaClass,

-	jobject file) {

-

-	// to retrive the String

-	jclass cls;

-	jmethodID id;

-	jobject obj;

-

-	// java.io.File.getAbsolutePath()

-	const char * lpDirectoryName;

-

-	// obtain the String from the parameter

-	cls = jnienv -> GetObjectClass(file);

-	id = jnienv -> GetMethodID(cls, "getAbsolutePath", "()Ljava/lang/String;");

-	obj = jnienv -> CallObjectMethod(file, id);

-	lpDirectoryName = jnienv -> GetStringUTFChars((jstring) obj, 0);

-

-	jstring result = NULL;

-

-	// Linux implementation following

-

-	return result;

-}

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetType

- * Signature: (Ljava/io/File;)I

- */

-JNIEXPORT jint JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetType(

-	JNIEnv * jnienv,

-	jclass javaClass,

-	jobject file) {

-

-	// to retrive the String

-	jclass cls;

-	jmethodID id;

-	jobject obj;

-

-	// java.io.File.getAbsolutePath()

-	const char * lpDirectoryName;

-

-	// obtain the String from the parameter

-	cls = jnienv -> GetObjectClass(file);

-	id = jnienv -> GetMethodID(cls, "getAbsolutePath", "()Ljava/lang/String;");

-	obj = jnienv -> CallObjectMethod(file, id);

-	lpDirectoryName = jnienv -> GetStringUTFChars((jstring) obj, 0);

-

-	int result;

-	

-	// Linux implemantation

-

-	result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_INVALID_PATH;

-	return result;

-}

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeListMountPoints

- * Signature: ()[Ljava/lang/String;

- */

-JNIEXPORT jobjectArray JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeListMountPoints(

-	JNIEnv * jnienv,

-	jclass javaClass) {

-

-	//

-	int drive;

-	char driveName[100];

-	jobjectArray returnArray;

-	int nDrive = 0;

-

-	// 

-	jclass stringClass;

-	jobject empty;

-	int index = 0;

-	jobject str;

-

-	// Linux implementation

-	// find mount points

-

-	drive = 0;

-	stringClass = jnienv -> FindClass("java/lang/String");

-	empty = jnienv -> NewStringUTF("");

-	//returnArray = jnienv -> NewObjectArray(nDrive, stringClass, empty);

-	// for now return null as method is not implemented

-	returnArray = NULL;

-

-	for (int i = 0; i < drive; i++) {

-		// Linux implementation, create String for each mount point

-

-		str = jnienv -> NewStringUTF(driveName);

-		jnienv -> SetObjectArrayElement(returnArray, index, str);

-		index++;

-	}

-

-	return returnArray;

-}

diff --git a/update/org.eclipse.update.core.linux/src/update.h b/update/org.eclipse.update.core.linux/src/update.h
deleted file mode 100644
index f88aa29..0000000
--- a/update/org.eclipse.update.core.linux/src/update.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/* DO NOT EDIT THIS FILE - it is machine generated */

-

-/*

- * (c) Copyright IBM Corp. 2000, 2002.

- * All Rights Reserved.

- */

-

-#include <jni.h>

-/* Header for class org_eclipse_update_configuration_LocalSystemInfo */

-

-#ifndef _Included_org_eclipse_update_configuration_LocalSystemInfo

-#define _Included_org_eclipse_update_configuration_LocalSystemInfo

-#ifdef __cplusplus

-extern "C" {

-#endif

-#undef org_eclipse_update_configuration_LocalSystemInfo_SIZE_UNKNOWN

-#define org_eclipse_update_configuration_LocalSystemInfo_SIZE_UNKNOWN -1L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_UNKNOWN

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_UNKNOWN -1L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_INVALID_PATH

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_INVALID_PATH -2L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOVABLE

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOVABLE 1L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FIXED

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FIXED 2L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOTE

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOTE 3L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_CDROM

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_CDROM 4L

-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_RAMDISK

-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_RAMDISK 5L

-/* Inaccessible static: listeners */

-/* Inaccessible static: hasNatives */

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetFreeSpace

- * Signature: (Ljava/io/File;)J

- */

-JNIEXPORT jlong JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetFreeSpace

-  (JNIEnv *, jclass, jobject);

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetLabel

- * Signature: (Ljava/io/File;)Ljava/lang/String;

- */

-JNIEXPORT jstring JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetLabel

-  (JNIEnv *, jclass, jobject);

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeGetType

- * Signature: (Ljava/io/File;)I

- */

-JNIEXPORT jint JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeGetType

-  (JNIEnv *, jclass, jobject);

-

-/*

- * Class:     org_eclipse_update_configuration_LocalSystemInfo

- * Method:    nativeListMountPoints

- * Signature: ()[Ljava/lang/String;

- */

-JNIEXPORT jobjectArray JNICALL Java_org_eclipse_update_configuration_LocalSystemInfo_nativeListMountPoints

-  (JNIEnv *, jclass);

-

-#ifdef __cplusplus

-}

-

-#endif

-#endif

diff --git a/update/org.eclipse.update.examples/bin/org/eclipse/update/examples/buildzip/java.page.jpage b/update/org.eclipse.update.examples/bin/org/eclipse/update/examples/buildzip/java.page.jpage
deleted file mode 100644
index 8b3ca30..0000000
--- a/update/org.eclipse.update.examples/bin/org/eclipse/update/examples/buildzip/java.page.jpage
+++ /dev/null
@@ -1,43 +0,0 @@
-

-

-java.util.Properties p = System.getProperties();

-java.util.Enumeration keys = p.keys();

-while (keys.hasMoreElements()) {

-	String key = (String)keys.nextElement();

-	System.out.println(key + " = " + (String)p.get(key));

-}

-

-

-



-String fileName = "d:\\downloads\\eclipse 2.0\\integration-eclipse-SDK-20020109-win32.zip";

-java.io.File archiveFile = new java.io.File(fileName);

-java.util.jar.JarFile jarArchive = new java.util.jar.JarFile(archiveFile);

-java.util.jar.JarEntry entry;

-java.util.Enumeration entries = jarArchive.entries();

-while(entries.hasMoreElements()) {

-	entry = (java.util.jar.JarEntry) entries.nextElement();

-	System.out.println(entry.getName());

-}

-

-

-String a = "223";

-String b = "123";

-a.compareTo(b);

-

-

-org.eclipse.update.core.Version v1 = 

-	new org.eclipse.update.core.Version(1,2,3,"build 127J");

-org.eclipse.update.core.Version v2 = 

-	new org.eclipse.update.core.Version(1,2,3,"build 127J");

-v1.compare(v2);

-

-

-java.io.File f = new java.io.File("d:\\downloads\\eclipse 2.0\\x\\");

-f.isDirectory();

-

-

-String s = "hello";

-Object a = java.lang.reflect.Array.newInstance(s.getClass(),0);

-System.out.println(a.getClass().getName());

-

-

diff --git a/update/org.eclipse.update.ui.forms/.classpath b/update/org.eclipse.update.ui.forms/.classpath
deleted file mode 100644
index ba738a7..0000000
--- a/update/org.eclipse.update.ui.forms/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="src/"/>
-    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>
-    <classpathentry kind="src" path="/org.eclipse.ui"/>
-    <classpathentry kind="src" path="/org.apache.xerces"/>
-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="src" path="/org.eclipse.swt"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.ui.forms/.cvsignore b/update/org.eclipse.update.ui.forms/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/update/org.eclipse.update.ui.forms/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/.project b/update/org.eclipse.update.ui.forms/.project
deleted file mode 100644
index 37d76d1..0000000
--- a/update/org.eclipse.update.ui.forms/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.update.ui.forms</name>

-	<comment></comment>

-	<projects>

-		<project>org.apache.xerces</project>

-		<project>org.eclipse.core.boot</project>

-		<project>org.eclipse.core.runtime</project>

-		<project>org.eclipse.swt</project>

-		<project>org.eclipse.ui</project>

-	</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.jdt.core.javanature</nature>

-		<nature>org.eclipse.pde.PluginNature</nature>

-	</natures>

-</projectDescription>

diff --git a/update/org.eclipse.update.ui.forms/about.html b/update/org.eclipse.update.ui.forms/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.ui.forms/about.html
+++ /dev/null
@@ -1,30 +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">
-<h2>About This Content</h2>
- 
-<p>20th June, 2002</p>	
-<h3>License</h3>
-<p>Eclipse.org makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Common Public License Version 1.0 (&quot;CPL&quot;).  A copy of the CPL is available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>.
-For purposes of the CPL, &quot;Program&quot; will mean the Content.</p>
-
-<h3>Contributions</h3>
-
-<p>If this Content is licensed to you under the terms and conditions of the CPL, any Contributions, as defined in the CPL, uploaded, submitted, or otherwise
-made available to Eclipse.org, members of Eclipse.org and/or the host of Eclipse.org web site, by you that relate to such
-Content are provided under the terms and conditions of the CPL and can be made available to others under the terms of the CPL.</p>
-
-<p>If this Content is licensed to you under license terms and conditions other than the CPL (&quot;Other License&quot;), any modifications, enhancements and/or
-other code and/or documentation (&quot;Modifications&quot;) uploaded, submitted, or otherwise made available to Eclipse.org, members of Eclipse.org and/or the
-host of Eclipse.org, by you that relate to such Content are provided under terms and conditions of the Other License and can be made available
-to others under the terms of the Other License.  In addition, with regard to Modifications for which you are the copyright holder, you are also
-providing the Modifications under the terms and conditions of the CPL and such Modifications can be made available to others under the terms of
-the CPL.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/build.properties b/update/org.eclipse.update.ui.forms/build.properties
deleted file mode 100644
index 3f6eaaf..0000000
--- a/update/org.eclipse.update.ui.forms/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.forms.jar = src/

-src.includes=about.html

-bin.includes = plugin.properties,\

-               *.jar,\

-               plugin.xml,\

-               about.html

diff --git a/update/org.eclipse.update.ui.forms/plugin.properties b/update/org.eclipse.update.ui.forms/plugin.properties
deleted file mode 100644
index 470a1ad..0000000
--- a/update/org.eclipse.update.ui.forms/plugin.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-#

-# plugin.xml properties

-#

-

-name = Install/Update Forms

-provider-name = Eclipse.org

-

diff --git a/update/org.eclipse.update.ui.forms/plugin.xml b/update/org.eclipse.update.ui.forms/plugin.xml
deleted file mode 100644
index e78a007..0000000
--- a/update/org.eclipse.update.ui.forms/plugin.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin

-   id="org.eclipse.update.ui.forms"

-   name="%name"

-   version="2.1.0"

-   provider-name="%provider-name"

-   class="org.eclipse.update.ui.forms.internal.FormsPlugin">

-

-   <runtime>

-      <library name="forms.jar">

-         <export name="*"/>

-      </library>

-   </runtime>

-   <requires>

-      <import plugin="org.eclipse.core.runtime"/>

-      <import plugin="org.eclipse.ui"/>

-      <import plugin="org.apache.xerces"/>

-   </requires>

-

-

-</plugin>

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractForm.java
deleted file mode 100644
index b83d823..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractForm.java
+++ /dev/null
@@ -1,224 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-import org.eclipse.swt.graphics.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.jface.preference.*;

-import org.eclipse.jface.preference.IPreferenceStore;

-import org.eclipse.jface.resource.*;

-import org.eclipse.jface.util.*;

-import org.eclipse.ui.*;

-

-/**

- * This class implements IForm interface and

- * provides some common services to its subclasses.

- * It handles some common properties like heading

- * text, image and colors, as well as

- * font change processing.

- */

-

-public abstract class AbstractForm implements IForm, IPropertyChangeListener {

-	protected FormWidgetFactory factory;

-	protected Color headingBackground;

-	protected Color headingForeground;

-	protected boolean headingVisible = true;

-	protected Image headingImage;

-	protected String headingText;

-	protected Font titleFont;

-

-	public AbstractForm() {

-		factory = new FormWidgetFactory();

-		titleFont = JFaceResources.getHeaderFont();

-		JFaceResources.getFontRegistry().addListener(this);

-		IPreferenceStore pstore = JFacePreferences.getPreferenceStore();

-		pstore.addPropertyChangeListener(new IPropertyChangeListener() {

-			public void propertyChange(PropertyChangeEvent e) {

-				if (e.getProperty().equals(JFacePreferences.HYPERLINK_COLOR)

-					|| e.getProperty().equals(

-						JFacePreferences.ACTIVE_HYPERLINK_COLOR)) {

-					updateHyperlinkColors();

-				}

-			}

-		});

-	}

-	

-	protected void updateHyperlinkColors() {

-		factory.updateHyperlinkColors();

-	}

-

-	/**

-	 * @see IForm#commitChanges(boolean)

-	 */

-	public void commitChanges(boolean onSave) {

-	}

-

-	/**

-	 * @see IForm#createControl(Composite)

-	 */

-	public abstract Control createControl(Composite parent);

-

-	/**

-	 * @see IForm#dispose()

-	 */

-	public void dispose() {

-		factory.dispose();

-		JFaceResources.getFontRegistry().removeListener(this);

-		IPreferenceStore pstore = JFacePreferences.getPreferenceStore();

-		pstore.removePropertyChangeListener(this);

-	}

-

-	/**

-	 * @see IForm#doGlobalAction(String)

-	 */

-	public boolean doGlobalAction(String actionId) {

-		return false;

-	}

-

-	/**

-	 * @see IForm#expandTo(Object)

-	 */

-	public void expandTo(Object object) {

-	}

-

-	/**

-	 * @see IForm#getControl()

-	 */

-	public abstract Control getControl();

-

-	/**

-	 * @see IForm#getFactory()

-	 */

-	public FormWidgetFactory getFactory() {

-		return factory;

-	}

-

-	/**

-	 * @see IForm#getHeadingBackground()

-	 */

-	public Color getHeadingBackground() {

-		return headingBackground;

-	}

-

-	/**

-	 * @see IForm#getHeadingForeground()

-	 */

-	public Color getHeadingForeground() {

-		return headingForeground;

-	}

-

-	/**

-	 * @see IForm#getHeadingImage()

-	 */

-	public Image getHeadingImage() {

-		return headingImage;

-	}

-

-	/**

-	 * @see IForm#getHeading()

-	 */

-	public String getHeadingText() {

-		if (headingText == null)

-			return "";

-		return headingText;

-	}

-

-	/**

-	 * @see IForm#initialize(Object)

-	 */

-	public void initialize(Object model) {

-	}

-

-	/**

-	 * @see IForm#isHeadingVisible()

-	 */

-	public boolean isHeadingVisible() {

-		return headingVisible;

-	}

-

-	/**

-	 * @see IForm#registerSection(FormSection)

-	 */

-	public void registerSection(FormSection section) {

-	}

-

-	/**

-	 * @see IForm#setFocus()

-	 */

-	public void setFocus() {

-	}

-

-	/**

-	 * @see IForm#setHeadingBackground(Color)

-	 */

-	public void setHeadingBackground(Color newHeadingBackground) {

-		this.headingBackground = newHeadingBackground;

-	}

-

-	/**

-	 * @see IForm#setHeadingForeground(Color)

-	 */

-	public void setHeadingForeground(Color newHeadingForeground) {

-		this.headingForeground = newHeadingForeground;

-	}

-

-	/**

-	 * @see IForm#setHeadingImage(Image)

-	 */

-	public void setHeadingImage(Image headingImage) {

-		this.headingImage = headingImage;

-	}

-

-	/**

-	 * @see IForm#setHeadingVisible(boolean)

-	 */

-	public void setHeadingVisible(boolean newHeadingVisible) {

-		this.headingVisible = newHeadingVisible;

-	}

-

-	/**

-	 * @see IForm#setHeading(String)

-	 */

-	public void setHeadingText(String headingText) {

-		this.headingText = headingText;

-	}

-

-	/**

-	 * @see IForm#update()

-	 */

-	public void update() {

-	}

-

-	protected boolean canPerformDirectly(String id, Control control) {

-		if (control instanceof Text) {

-			Text text = (Text) control;

-			if (id.equals(IWorkbenchActionConstants.CUT)) {

-				text.cut();

-				return true;

-			}

-			if (id.equals(IWorkbenchActionConstants.COPY)) {

-				text.copy();

-				return true;

-			}

-			if (id.equals(IWorkbenchActionConstants.PASTE)) {

-				text.paste();

-				return true;

-			}

-			if (id.equals(IWorkbenchActionConstants.SELECT_ALL)) {

-				text.selectAll();

-				return true;

-			}

-			if (id.equals(IWorkbenchActionConstants.DELETE)) {

-				int count = text.getSelectionCount();

-				if (count == 0) {

-					int caretPos = text.getCaretPosition();

-					text.setSelection(caretPos, caretPos + 1);

-				}

-				text.insert("");

-				return true;

-			}

-		}

-		return false;

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractSectionForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractSectionForm.java
deleted file mode 100644
index f8f6514..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractSectionForm.java
+++ /dev/null
@@ -1,209 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-import java.util.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.swt.dnd.Clipboard;

-import org.eclipse.swt.custom.ScrolledComposite;

-import org.eclipse.swt.graphics.*;

-

-/**

- * This form class understands form sections.

- * It assumes that they are part of the form

- * and it offers life cycle handling of sections

- * once they are registered.

- */

-

-public abstract class AbstractSectionForm extends AbstractForm {

-	public static final int H_SCROLL_INCREMENT = 5;

-	public static final int V_SCROLL_INCREMENT = 64;

-	protected Vector sections = null;

-

-	public void registerSection(FormSection section) {

-		if (sections == null)

-			sections = new Vector();

-		if (!sections.contains(section))

-			sections.add(section);

-	}

-

-	public void unregisterSection(FormSection section) {

-		if (sections != null && sections.contains(section))

-			sections.remove(section);

-	}

-

-	public void initialize(Object model) {

-		if (sections != null) {

-			for (Iterator iter = sections.iterator(); iter.hasNext();) {

-				FormSection section = (FormSection) iter.next();

-				section.initialize(model);

-			}

-		}

-	}

-

-	public void setFocus() {

-		if (sections != null && sections.size() > 0) {

-			FormSection firstSection = (FormSection) sections.firstElement();

-			firstSection.setFocus();

-		}

-	}

-

-	public void update() {

-		if (sections != null) {

-			for (Iterator iter = sections.iterator(); iter.hasNext();) {

-				FormSection section = (FormSection) iter.next();

-				section.update();

-			}

-		}

-	}

-

-	public void commitChanges(boolean onSave) {

-		if (sections != null) {

-			for (Iterator iter = sections.iterator(); iter.hasNext();) {

-				FormSection section = (FormSection) iter.next();

-				if (section.isDirty())

-					section.commitChanges(onSave);

-			}

-		}

-	}

-

-	public boolean doGlobalAction(String actionId) {

-		Control focusControl = getFocusControl();

-		if (focusControl == null)

-			return false;

-

-		if (canPerformDirectly(actionId, focusControl))

-			return true;

-		Composite parent = focusControl.getParent();

-		FormSection targetSection = null;

-		while (parent != null) {

-			Object data = parent.getData();

-			if (data != null && data instanceof FormSection) {

-				targetSection = (FormSection) data;

-				break;

-			}

-			parent = parent.getParent();

-		}

-		if (targetSection != null) {

-			return targetSection.doGlobalAction(actionId);

-		}

-		return false;

-	}

-

-	protected Control getFocusControl() {

-		Control control = getControl();

-		if (control == null || control.isDisposed())

-			return null;

-		Display display = control.getDisplay();

-		Control focusControl = display.getFocusControl();

-		if (focusControl == null || focusControl.isDisposed())

-			return null;

-		return focusControl;

-	}

-

-	public boolean canPaste(Clipboard clipboard) {

-		Control focusControl = getFocusControl();

-		if (focusControl == null)

-			return false;

-		Composite parent = focusControl.getParent();

-		FormSection targetSection = null;

-		while (parent != null) {

-			Object data = parent.getData();

-			if (data != null && data instanceof FormSection) {

-				targetSection = (FormSection) data;

-				break;

-			}

-			parent = parent.getParent();

-		}

-		if (targetSection != null) {

-			return targetSection.canPaste(clipboard);

-		}

-		return false;

-	}

-

-	public void dispose() {

-		if (sections != null) {

-			for (Iterator iter = sections.iterator(); iter.hasNext();) {

-				FormSection section = (FormSection) iter.next();

-				section.dispose();

-			}

-		}

-		super.dispose();

-	}

-

-	public static void ensureVisible(ScrolledComposite scomp, Control control) {

-		Point controlSize = control.getSize();

-		Point controlOrigin = getControlLocation(scomp, control);

-		ensureVisible(scomp, controlOrigin, controlSize);

-	}

-

-	public static void ensureVisible(ScrolledComposite scomp, Point controlOrigin, Point controlSize) {

-		Rectangle area = scomp.getClientArea();

-		Point scompOrigin = scomp.getOrigin();

-

-		int x = scompOrigin.x;

-		int y = scompOrigin.y;

-

-		if (controlOrigin.x < scompOrigin.x ) {

-			x = controlOrigin.x;

-		} else if (controlOrigin.x + controlSize.x > scompOrigin.x + area.width) {

-			x = controlOrigin.x + controlSize.x - area.width;

-		}

-

-		if (controlOrigin.y < scompOrigin.y) {

-			y = controlOrigin.y;

-		} else if (controlOrigin.y + controlSize.y > scompOrigin.y + area.height) {

-			y = controlOrigin.y + controlSize.y - area.height;

-		}

-		scomp.setOrigin(x, y);

-	}

-	

-	public static Point getControlLocation(ScrolledComposite scomp, Control control) {

-		int x = 0;

-		int y = 0;

-		Control currentControl = control;

-		for (;;) {

-			if (currentControl == scomp)

-				break;

-			if (currentControl.getLocation().x > 0)

-				x += currentControl.getLocation().x;

-			if (currentControl.getLocation().y > 0)

-				y += currentControl.getLocation().y;

-			currentControl = currentControl.getParent();

-		}

-		return new Point(x, y);

-	}

-	

-	public static void scrollVertical(ScrolledComposite scomp, boolean up) {

-		scroll(scomp, 0, up ? -V_SCROLL_INCREMENT : V_SCROLL_INCREMENT);

-	}

-	public static void scrollHorizontal(ScrolledComposite scomp, boolean left) {

-		scroll(scomp, left ? -H_SCROLL_INCREMENT : H_SCROLL_INCREMENT, 0);

-	}

-	public static void scrollPage(ScrolledComposite scomp, boolean up) {

-		Rectangle clientArea = scomp.getClientArea();

-		int increment = up ? -clientArea.height : clientArea.height;

-		scroll(scomp, 0, increment);

-	}

-	private static void scroll(ScrolledComposite scomp, int xoffset, int yoffset) {

-		Point origin = scomp.getOrigin();

-		Point contentSize = scomp.getContent().getSize();

-		int xorigin = origin.x + xoffset;

-		int yorigin = origin.y + yoffset;

-		xorigin = Math.max(xorigin, 0);

-		xorigin = Math.min(xorigin, contentSize.x - 1);

-		yorigin = Math.max(yorigin, 0);

-		yorigin = Math.min(yorigin, contentSize.y - 1);

-		scomp.setOrigin(xorigin, yorigin);

-	}

-

-	public static void updatePageIncrement(ScrolledComposite scomp) {

-		ScrollBar vbar = scomp.getVerticalBar();

-		if (vbar != null) {

-			Rectangle clientArea = scomp.getClientArea();

-			int increment = clientArea.height - 5;

-			vbar.setPageIncrement(increment);

-		}

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/CustomWorkbook.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/CustomWorkbook.java
deleted file mode 100644
index 9b2e00b..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/CustomWorkbook.java
+++ /dev/null
@@ -1,140 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.graphics.*;

-import java.util.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.swt.*;

-import org.eclipse.swt.custom.*;

-

-

-public class CustomWorkbook implements IFormWorkbook {

-	private Hashtable pages;

-	private IFormPage sourcePage;

-	private IFormPage lastFormPage;

-	private boolean firstPageSelected=true;

-	private CTabFolder tabFolder;

-	private Vector listeners=new Vector();

-	private IFormPage currentPage;

-

-public CustomWorkbook() {

-	pages = new Hashtable();

-}

-public void addFormSelectionListener(IFormSelectionListener listener) {

-	listeners.addElement(listener);

-}

-public void addPage(IFormPage page) {

-	CTabItem item = new CTabItem(tabFolder, SWT.NULL);

-	item.setText(page.getLabel());

-	item.setToolTipText(page.getTitle());

-	item.setData(page);

-	pages.put(page, item);

-	if (page.isSource()) sourcePage = page;

-	

-	if (firstPageSelected && currentPage == null)

-		selectPage(page);

-}

-public void createControl(Composite parent) {

-	tabFolder = new CTabFolder(parent, SWT.BOTTOM);

-	tabFolder.addSelectionListener(new SelectionAdapter() {

-		public void widgetSelected(SelectionEvent e) {

-			CTabItem item = (CTabItem) e.item;

-			IFormPage page = (IFormPage) item.getData();

-			if (page != null)

-				selectPage(page);

-		}

-	});

-	// listener to resize visible components

-	tabFolder.addListener(SWT.Resize, new Listener() {

-		public void handleEvent(Event e) {

-			if (currentPage != null)

-				setControlSize(currentPage.getControl());

-		}

-	});

-}

-private void fireSelectionChanged(IFormPage page) {

-	for (Iterator iter = listeners.iterator(); iter.hasNext();) {

-		IFormSelectionListener listener = (IFormSelectionListener) iter.next();

-		listener.formSelected(page);

-	}

-}

-public Control getControl() {

-	return tabFolder;

-}

-public IFormPage getCurrentPage() {

-	return currentPage;

-}

-public boolean isFirstPageSelected() {

-	return firstPageSelected;

-}

-public void removeFormSelectionListener(IFormSelectionListener listener) {

-	listeners.removeElement(listener);

-}

-public void removePage(IFormPage page) {

-	CTabItem item = (CTabItem) pages.get(page);

-	if (item != null)

-		item.dispose();

-}

-private void reselectPage(final IFormPage page) {

-	tabFolder.getDisplay().asyncExec(new Runnable() {

-		public void run() {

-		selectPage(page);

-		}

-	});

-}

-public void selectPage(final IFormPage page) {

-	final IFormPage oldPage = currentPage;

-	currentPage = page;

-

-	// It may take a while

-	BusyIndicator.showWhile(tabFolder.getDisplay(), new Runnable() {

-		public void run() {

-			switchPages(oldPage, page);

-		}

-	});

-}

-private void setControlSize(Control control) {

-	Rectangle bounds = tabFolder.getBounds();

-	Rectangle offset = tabFolder.getClientArea();

-	bounds.x += offset.x;

-	bounds.y += offset.y;

-	bounds.width = offset.width;

-	bounds.height = offset.height;

-	control.setBounds(bounds);

-	control.moveAbove(tabFolder);

-}

-private void setControlVisible(Control control) {

-	if (control == null)

-		return;

-	setControlSize(control);

-	control.setVisible(true);

-}

-public void setFirstPageSelected(boolean newFirstPageSelected) {

-	firstPageSelected = newFirstPageSelected;

-}

-private void switchPages(IFormPage oldPage, IFormPage newPage) {

-	if (oldPage != null && oldPage!=newPage) {

-		boolean okToSwitch = oldPage.becomesInvisible(newPage);

-		if (!okToSwitch) {

-			// We must try to go back to the source page

-			reselectPage(oldPage);

-			return;

-		}

-	}

-	if (newPage.getControl() == null)

-		newPage.createControl(tabFolder);

-	tabFolder.setSelection((CTabItem) pages.get(newPage));

-	if (oldPage != null && oldPage != newPage) {

-		Control oldControl = oldPage.getControl();

-		if (oldControl!=null) oldControl.setVisible(false);

-	}

-	Control newControl = newPage.getControl();

-	newPage.becomesVisible(oldPage);

-	setControlVisible(newControl);

-	fireSelectionChanged(newPage);

-}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ExpandableGroup.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ExpandableGroup.java
deleted file mode 100644
index fd2e880..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ExpandableGroup.java
+++ /dev/null
@@ -1,204 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-import org.eclipse.swt.graphics.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.events.*;

-

-public abstract class ExpandableGroup {

-	private String text;

-	private boolean expanded;

-	private Composite expansion;

-	protected SelectableFormLabel textLabel;

-	private Composite control;

-	private int style;

-	private boolean expandable=true;

-	

-class ExpandableLayout extends Layout {

-	protected void layout(Composite parent, boolean changed) {

-		Rectangle clientArea = parent.getClientArea();

-		Point size = textLabel.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);

-		int x = 0;

-		int y = 1;

-		

-		if (expandable) {

-			x = 8 + 8;

-		}

-		textLabel.setBounds(x, y, size.x, size.y);

-	

-		if (expandable)

-		   y = Math.max(size.y, 8) + 2 + 2;

-		else

-		   y = size.y + 2;

-		if (expanded) {

-			int areaWidth = clientArea.width - x;

-			size = expansion.computeSize(areaWidth, SWT.DEFAULT, changed);

-			expansion.setBounds(x, y, size.x, size.y);

-		}

-	}

-

-	protected Point computeSize(Composite parent, int wHint, int hHint, boolean changed) {

-		int width = 0, height = 0;

-		Point size = textLabel.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);

-		width = size.x;

-		height = size.y + 2 + 2;

-		if (expanded) {

-			size = expansion.computeSize(wHint, SWT.DEFAULT, changed);

-			width = Math.max(width, size.x);

-			height += size.y;

-		}

-		if (expandable) {

-			height = Math.max(height, 8);

-			width += 8 + 8;

-		}

-		return new Point(width, height);

-	}

-}

-

-	public ExpandableGroup() {

-	}

-	

-	public ExpandableGroup(int style) {

-		this.style = style;

-	}

-	

-	public Control getControl() {

-		return control;

-	}

-	

-	public void createControl(Composite parent, FormWidgetFactory factory) {

-		final Canvas container = new Canvas(parent, SWT.NULL);

-		container.setBackground(factory.getBackgroundColor());

-		container.setLayout(new ExpandableLayout());

-		container.addPaintListener(new PaintListener() {

-			public void paintControl(PaintEvent e) {

-				if (expandable) repaint(e);

-			}

-		});

-		container.addMouseListener(new MouseAdapter() {

-			public void mouseUp(MouseEvent e) {

-				Rectangle box = getBoxBounds(null);

-				if (box.contains(e.x, e.y)) {

-					setExpanded(!isExpanded());

-				}

-			}

-		});

-		textLabel = createTextLabel(container, factory);

-		getHyperlinkHandler(factory).registerHyperlink(textLabel, new HyperlinkAdapter () {

-			public void linkActivated(Control link) {

-				ExpandableGroup.this.linkActivated();

-				if (expandable) setExpanded(!isExpanded());

-			}

-		});

-		textLabel.addFocusListener(factory.visibilityHandler);

-		textLabel.addKeyListener(factory.keyboardHandler);		

-		if (text!=null) textLabel.setText(text);

-		expansion = factory.createComposite(container);

-		fillExpansion(expansion, factory);

-		this.control = container;

-	}

-	

-	protected SelectableFormLabel createTextLabel(Composite parent, FormWidgetFactory factory) {

-		SelectableFormLabel text = new SelectableFormLabel(parent, SWT.WRAP);

-		text.setBackground(factory.getBackgroundColor());

-		return text;

-	}

-	

-	protected HyperlinkHandler getHyperlinkHandler(FormWidgetFactory factory) {

-		return factory.getHyperlinkHandler();

-	}

-	

-	public abstract void fillExpansion(Composite expansion, FormWidgetFactory factory);

-	

-	public void setText(String text) {

-		this.text = text;

-		if (textLabel!=null)

-		   textLabel.setText(text);

-	}

-	

-	public String getText() {

-		return text;

-	}

-	

-	public boolean isExpanded() {

-		return expanded;

-	}

-	

-	public void setExpandable(boolean expandable) {

-		this.expandable = expandable;

-	}

-	

-	public boolean isExpandable() {

-		return expandable;

-	}

-	

-	public void setExpanded(boolean expanded) {

-		if (this.expanded != expanded) {

-			if (expanded) {

-				aboutToExpand();

-			}

-			else {

-				aboutToCollapse();

-			}

-			this.expanded = expanded;

-			expansion.setVisible(expanded);

-			control.layout();

-			if (expanded) {

-				this.expanded();

-			}

-			else {

-				collapsed();

-			}

-		}

-	}

-	

-	private void repaint(PaintEvent e) {

-		GC gc = e.gc;

-		Rectangle box = getBoxBounds(gc);

-		gc.setForeground(control.getDisplay().getSystemColor(SWT.COLOR_WIDGET_NORMAL_SHADOW));

-		gc.drawRectangle(box);

-		gc.setForeground(control.getDisplay().getSystemColor(SWT.COLOR_LIST_FOREGROUND));

-		gc.drawLine(box.x+2, box.y+4, box.x+6, box.y+4);

-		if (!isExpanded()) {

-			gc.drawLine(box.x+4, box.y+2, box.x+4, box.y+6);

-		}

-	}

-	

-	private Rectangle getBoxBounds(GC gc) {

-		int x = 0;

-		int y = 0;

-		boolean noGC = false;

-	

-		if (gc==null) {

-			gc = new GC(control);

-			noGC = true;

-		}

-		gc.setFont(textLabel.getFont());

-		int height = gc.getFontMetrics().getHeight();

-		y = height/2 - 4 +1;

-		y = Math.max(y, 0);

-		if (noGC) gc.dispose();

-		return new Rectangle(x, y, 8, 8);

-	}

-	

-	protected void updateLayout() {

-		control.layout();

-	}

-	

-	protected void aboutToExpand() {

-	}

-	

-	protected void aboutToCollapse() {

-	}

-	

-	protected void expanded() {

-	}

-	protected void collapsed() {

-	}

-	protected void linkActivated() {

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormButton.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormButton.java
deleted file mode 100644
index 5d7f87f..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormButton.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.swt.graphics.*;

-

-public class FormButton {

-	private Button button;

-	private Image image;

-	private FormWidgetFactory factory;

-	private Image hoverImage;

-	private boolean inside;

-	private Image disabledImage;

-

-public FormButton(Button button, FormWidgetFactory factory) {

-	this.button = button;

-	this.factory = factory;

-	button.addMouseTrackListener(new MouseTrackAdapter() {

-		public void mouseEnter(MouseEvent e) {

-			inside=true;

-			updateImage();

-		}

-		public void mouseExit(MouseEvent e) {

-			inside=false;

-			updateImage();

-		}

-	});

-}

-public Button getButton() {

-	return button;

-}

-public Image getDisabledImage() {

-	return disabledImage;

-}

-public Image getHoverImage() {

-	return hoverImage;

-}

-public Image getImage() {

-	return image;

-}

-public void setDisabledImage(Image newDisabledImage) {

-	disabledImage = newDisabledImage;

-}

-public void setEnabled(boolean enabled) {

-	button.setEnabled(enabled);

-	updateImage();

-}

-public void setHoverImage(Image newHoverImage) {

-	hoverImage = newHoverImage;

-}

-public void setImage(Image newImage) {

-	image = newImage;

-	if (hoverImage==null) hoverImage = image;

-	if (disabledImage==null) disabledImage = image;

-	updateImage();

-}

-public void updateImage() {

-	boolean enabled = button.isEnabled();

-	if (enabled == false) {

-		button.setImage(disabledImage);

-	} else {

-		if (inside) {

-			button.setCursor(factory.getHyperlinkCursor());

-			button.setImage(hoverImage);

-		} else {

-			button.setCursor(null);

-			button.setImage(image);

-		}

-	}

-}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormEntry.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormEntry.java
deleted file mode 100644
index a7b12e1..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormEntry.java
+++ /dev/null
@@ -1,97 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.widgets.*;

-import java.util.*;

-

-public class FormEntry {

-	private Text text;

-	private String value;

-	private boolean dirty;

-	private Vector listeners=new Vector();

-	boolean ignoreModify=false;

-

-public FormEntry(Text text) {

-	this.text = text;

-	this.value = text.getText();

-	addListeners();

-}

-public void addFormTextListener(IFormTextListener listener) {

-	listeners.addElement(listener);

-}

-private void addListeners() {

-	text.addKeyListener(new KeyAdapter() {

-		public void keyReleased(KeyEvent e) {

-			keyReleaseOccured(e);

-		}

-	});

-	text.addModifyListener(new ModifyListener() {

-		public void modifyText(ModifyEvent e) {

-			editOccured(e);

-		}

-	});

-	text.addFocusListener (new FocusAdapter() {

-		public void focusLost(FocusEvent e) {

-			if (dirty) commit();

-		}

-	});

-}

-public void commit() {

-	if (dirty) {

-		value = text.getText();

-		//notify

-		for (Iterator iter = listeners.iterator(); iter.hasNext();) {

-			((IFormTextListener) iter.next()).textValueChanged(this);

-		}

-	}

-	dirty = false;

-}

-protected void editOccured(ModifyEvent e) {

-	if (ignoreModify) return;

-	dirty = true;

-	for (Iterator iter = listeners.iterator(); iter.hasNext();) {

-		((IFormTextListener) iter.next()).textDirty(this);

-	}

-}

-

-public Text getControl() {

-	return text;

-}

-public java.lang.String getValue() {

-	return value;

-}

-public boolean isDirty() {

-	return dirty;

-}

-protected void keyReleaseOccured(KeyEvent e) {

-	if (e.character == '\r') {

-		// commit value

-		if (dirty) commit();

-	}

-	else if (e.character == '\u001b') { // Escape character

-		text.setText(value!=null?value:""); // restore old

-		dirty= false;

-	}

-}

-public void removeFormTextListener(IFormTextListener listener) {

-	listeners.removeElement(listener);

-}

-public void setDirty(boolean newDirty) {

-	dirty = newDirty;

-}

-public void setValue(String value) {

-	if (text!=null) text.setText(value!=null?value:"");

-	this.value = value;

-}

-

-public void setValue(String value, boolean blockNotification) {

-	ignoreModify = blockNotification;

-	setValue(value);

-	ignoreModify = false;

-}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormLabel.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormLabel.java
deleted file mode 100644
index 19f0093..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormLabel.java
+++ /dev/null
@@ -1,230 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import java.text.BreakIterator;

-

-import org.eclipse.swt.SWT;

-import org.eclipse.swt.accessibility.*;

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.graphics.*;

-import org.eclipse.swt.widgets.*;

-

-/**

- * FormText is a windowless control that

- * draws text in the provided context.

- */

-public class FormLabel extends Canvas {

-	private String text = "";

-	int textMarginWidth = 5;

-	int textMarginHeight = 5;

-	private boolean underlined;

-

-	public FormLabel(Composite parent, int style) {

-		super(parent, style);

-		addPaintListener(new PaintListener() {

-			public void paintControl(PaintEvent e) {

-				paint(e);

-			}

-		});

-	}

-	public String getText() {

-		return text;

-	}

-	public void setText(String text) {

-		if (text != null)

-			this.text = text;

-		else

-			text = "";

-	}

-

-	private void initAccessible() {

-		Accessible accessible = getAccessible();

-		accessible.addAccessibleListener(new AccessibleAdapter() {

-			public void getName(AccessibleEvent e) {

-				e.result = getText();

-			}

-

-			public void getHelp(AccessibleEvent e) {

-				e.result = getToolTipText();

-			}

-		});

-

-		accessible

-			.addAccessibleControlListener(new AccessibleControlAdapter() {

-			public void getChildAtPoint(AccessibleControlEvent e) {

-				Point pt = toControl(new Point(e.x, e.y));

-				e.childID =

-					(getBounds().contains(pt))

-						? ACC.CHILDID_SELF

-						: ACC.CHILDID_NONE;

-			}

-

-			public void getLocation(AccessibleControlEvent e) {

-				Rectangle location = getBounds();

-				Point pt = toDisplay(new Point(location.x, location.y));

-				e.x = pt.x;

-				e.y = pt.y;

-				e.width = location.width;

-				e.height = location.height;

-			}

-

-			public void getChildCount(AccessibleControlEvent e) {

-				e.detail = 0;

-			}

-

-			public void getRole(AccessibleControlEvent e) {

-				e.detail = ACC.ROLE_LABEL;

-			}

-

-			public void getState(AccessibleControlEvent e) {

-				e.detail = ACC.STATE_READONLY;

-			}

-		});

-	}

-

-	public void setUnderlined(boolean underlined) {

-		this.underlined = underlined;

-	}

-

-	public boolean isUnderlined() {

-		return underlined;

-	}

-

-	public Point computeSize(int wHint, int hHint, boolean changed) {

-		int innerWidth = wHint;

-		if (innerWidth != SWT.DEFAULT)

-			innerWidth -= textMarginWidth * 2;

-		Point textSize = computeTextSize(innerWidth, hHint);

-		int textWidth = textSize.x + 2 * textMarginWidth;

-		int textHeight = textSize.y + 2 * textMarginHeight;

-		return new Point(textWidth, textHeight);

-	}

-

-	public static int computeWrapHeight(GC gc, String text, int width) {

-		BreakIterator wb = BreakIterator.getWordInstance();

-		wb.setText(text);

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-

-		int saved = 0;

-		int last = 0;

-		int height = lineHeight;

-

-		for (int loc = wb.first();

-			loc != BreakIterator.DONE;

-			loc = wb.next()) {

-			String word = text.substring(saved, loc);

-			Point extent = gc.textExtent(word);

-			if (extent.x > width) {

-				// overflow

-				saved = last;

-				height += extent.y;

-			}

-			last = loc;

-		}

-		return height;

-	}

-

-	private Point computeTextSize(int wHint, int hHint) {

-		Point extent;

-		GC gc = new GC(this);

-

-		gc.setFont(getFont());

-		if ((getStyle() & SWT.WRAP) != 0 && wHint != SWT.DEFAULT) {

-			int height = computeWrapHeight(gc, text, wHint);

-			extent = new Point(wHint, height);

-		} else {

-			extent = gc.textExtent(getText());

-		}

-		gc.dispose();

-		return extent;

-	}

-

-	public static void paintWrapText(

-		GC gc,

-		Point size,

-		String text,

-		int marginWidth,

-		int marginHeight) {

-		paintWrapText(gc, size, text, marginWidth, marginHeight, false);

-	}

-

-	public static void paintWrapText(

-		GC gc,

-		Point size,

-		String text,

-		int marginWidth,

-		int marginHeight,

-		boolean underline) {

-		BreakIterator wb = BreakIterator.getWordInstance();

-		wb.setText(text);

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-		int descent = fm.getDescent();

-

-		int saved = 0;

-		int last = 0;

-		int y = marginHeight;

-		int width = size.x - marginWidth * 2;

-

-		for (int loc = wb.first();

-			loc != BreakIterator.DONE;

-			loc = wb.next()) {

-			String line = text.substring(saved, loc);

-			Point extent = gc.textExtent(line);

-			if (extent.x > width) {

-				// overflow

-				String prevLine = text.substring(saved, last);

-				gc.drawString(prevLine, marginWidth, y, true);

-				if (underline) {

-					Point prevExtent = gc.textExtent(prevLine);

-					int lineY = y + lineHeight - descent + 1;

-					gc.drawLine(marginWidth, lineY, prevExtent.x, lineY);

-				}

-

-				saved = last;

-				y += lineHeight;

-			}

-			last = loc;

-		}

-		// paint the last line

-		String lastLine = text.substring(saved, last);

-		gc.drawString(lastLine, marginWidth, y, true);

-		if (underline) {

-			int lineY = y + lineHeight - descent + 1;

-			Point lastExtent = gc.textExtent(lastLine);

-			gc.drawLine(marginWidth, lineY, marginWidth + lastExtent.x, lineY);

-		}

-	}

-

-	protected void paint(PaintEvent e) {

-		GC gc = e.gc;

-		Point size = getSize();

-		gc.setFont(getFont());

-		gc.setForeground(getForeground());

-		if ((getStyle() & SWT.WRAP) != 0) {

-			paintWrapText(

-				gc,

-				size,

-				text,

-				textMarginWidth,

-				textMarginHeight,

-				underlined);

-		} else {

-			gc.drawText(getText(), textMarginWidth, textMarginHeight, true);

-			if (underlined) {

-				FontMetrics fm = gc.getFontMetrics();

-				int descent = fm.getDescent();

-				int lineY = size.y - textMarginHeight - descent + 1;

-				gc.drawLine(

-					textMarginWidth,

-					lineY,

-					size.x - textMarginWidth,

-					lineY);

-			}

-		}

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormSection.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormSection.java
deleted file mode 100644
index 8205e19..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormSection.java
+++ /dev/null
@@ -1,425 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import org.eclipse.swt.graphics.*;

-import org.eclipse.swt.graphics.Point;

-import org.eclipse.swt.layout.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.swt.widgets.Composite;

-import org.eclipse.swt.*;

-import org.eclipse.jface.util.*;

-import org.eclipse.jface.resource.*;

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.dnd.Clipboard;

-

-public abstract class FormSection implements IPropertyChangeListener {

-	public static final int SELECTION = 1;

-	private String headerColorKey = FormWidgetFactory.DEFAULT_HEADER_COLOR;

-	private String headerText;

-	private Control client;

-	protected Label header;

-	protected Control separator;

-	private SectionChangeManager sectionManager;

-	private String description;

-	private boolean dirty;

-	protected Label descriptionLabel;

-	private ToggleControl toggle;

-	private boolean readOnly;

-	private boolean addSeparator = true;

-	private boolean descriptionPainted = true;

-	private boolean headerPainted = true;

-	private boolean collapsable = false;

-	private boolean collapsed = false;

-	private int widthHint = SWT.DEFAULT;

-	private int heightHint = SWT.DEFAULT;

-	private Composite control;

-

-	/*

-	 * This is a special layout for the section. Both the

-	 * header and the description labels will wrap and

-	 * they will use client's size to calculate needed

-	 * height. This kind of behaviour is not possible

-	 * with stock grid layout.

-	 */

-	class SectionLayout extends Layout {

-		int vspacing = 3;

-		int sepHeight = 2;

-

-		protected Point computeSize(

-			Composite parent,

-			int wHint,

-			int hHint,

-			boolean flush) {

-			int width = 0;

-			int height = 0;

-			int cwidth = 0;

-			int collapsedHeight = 0;

-

-			if (wHint != SWT.DEFAULT)

-				width = wHint;

-			if (hHint != SWT.DEFAULT)

-				height = hHint;

-

-			cwidth = width;

-

-			if (client != null) {

-				Point csize = client.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush);

-				if (width == 0) {

-					width = csize.x;

-					cwidth = width;

-				}

-				if (height == 0)

-					height = csize.y;

-			}

-

-			Point toggleSize = null;

-

-			if (collapsable && toggle != null)

-				toggleSize = toggle.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush);

-

-			if (hHint == SWT.DEFAULT && headerPainted && header != null) {

-				int hwidth = cwidth;

-				if (toggleSize != null)

-					hwidth = cwidth - toggleSize.x - 5;

-				Point hsize = header.computeSize(hwidth, SWT.DEFAULT, flush);

-				height += hsize.y;

-				collapsedHeight = hsize.y;

-				height += vspacing;

-			}

-

-			if (hHint == SWT.DEFAULT && addSeparator) {

-				height += sepHeight;

-				height += vspacing;

-				collapsedHeight += vspacing + sepHeight;

-			}

-			if (hHint == SWT.DEFAULT && descriptionPainted && descriptionLabel != null) {

-				Point dsize = descriptionLabel.computeSize(cwidth, SWT.DEFAULT, flush);

-				height += dsize.y;

-				height += vspacing;

-			}

-			if (toggle != null && toggle.getSelection()) {

-				// collapsed state

-				height = collapsedHeight;

-			}

-			return new Point(width, height);

-		}

-		protected void layout(Composite parent, boolean flush) {

-			int width = parent.getClientArea().width;

-			int height = parent.getClientArea().height;

-			int y = 0;

-			Point toggleSize = null;

-

-			if (collapsable) {

-				toggleSize = toggle.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush);

-			}

-			if (headerPainted && header != null) {

-				Point hsize;

-

-				int availableWidth = width;

-				if (toggleSize != null)

-					availableWidth = width - toggleSize.x - 5;

-				hsize = header.computeSize(availableWidth, SWT.DEFAULT, flush);

-				int hx = 0;

-				if (toggle != null) {

-					int ty = y + hsize.y - toggleSize.y;

-					toggle.setBounds(0, ty, toggleSize.x, toggleSize.y);

-					hx = toggleSize.x; // + 5;

-				}

-				header.setBounds(hx, y, availableWidth, hsize.y);

-

-				y += hsize.y + vspacing;

-			}

-			if (addSeparator && separator != null) {

-				separator.setBounds(0, y, width, 2);

-				y += sepHeight + vspacing;

-			}

-			if (toggle != null && toggle.getSelection()) {

-				return;

-			}

-			if (descriptionPainted && descriptionLabel != null) {

-				Point dsize = descriptionLabel.computeSize(width, SWT.DEFAULT, flush);

-				descriptionLabel.setBounds(0, y, width, dsize.y);

-				y += dsize.y + vspacing;

-			}

-			if (client != null) {

-				client.setBounds(0, y, width, height - y);

-			}

-		}

-	}

-

-	public FormSection() {

-		/*

-		// Description causes problems re word wrapping

-		// and causes bad layout in schema and

-		// feature editors when in Motif - turning off

-		if (SWT.getPlatform().equals("motif")) {

-			descriptionPainted = false;

-		}

-		*/

-		JFaceResources.getFontRegistry().addListener(this);

-	}

-	public void commitChanges(boolean onSave) {

-	}

-	public abstract Composite createClient(

-		Composite parent,

-		FormWidgetFactory factory);

-	public final Control createControl(

-		Composite parent,

-		final FormWidgetFactory factory) {

-		Composite section = factory.createComposite(parent);

-		SectionLayout slayout = new SectionLayout();

-		section.setLayout(slayout);

-		section.setData(this);

-

-		if (headerPainted) {

-			Color headerColor = factory.getColor(getHeaderColorKey());

-			header =

-				factory.createHeadingLabel(section, getHeaderText(), headerColor, SWT.WRAP);

-			if (collapsable) {

-				toggle = new ToggleControl(section, SWT.NULL);

-				toggle.setSelection(collapsed);

-				toggle.setBackground(factory.getBackgroundColor());

-				toggle.setActiveDecorationColor(factory.getHyperlinkColor());

-				toggle.setDecorationColor(factory.getColor(FormWidgetFactory.COLOR_COMPOSITE_SEPARATOR));

-				toggle.setActiveCursor(factory.getHyperlinkCursor());

-				toggle.addFocusListener(factory.visibilityHandler);

-				toggle.addKeyListener(factory.keyboardHandler);

-				toggle.addSelectionListener(new SelectionAdapter() {

-					public void widgetSelected(SelectionEvent e) {

-						doToggle();

-					}

-				});

-					header.addMouseListener(new MouseAdapter() {

-					public void mouseDown(MouseEvent e) {

-						toggle.setSelection(!toggle.getSelection());

-						toggle.redraw();

-						doToggle();

-					}

-				});

-				header.addMouseTrackListener(new MouseTrackAdapter() {

-					public void mouseEnter(MouseEvent e) {

-						header.setCursor(factory.getHyperlinkCursor());

-					}

-					public void mouseExit(MouseEvent e) {

-						header.setCursor(null);

-					}

-				});

-			}

-		}

-

-		if (addSeparator) {

-			//separator = factory.createSeparator(section, SWT.HORIZONTAL);

-			separator = factory.createCompositeSeparator(section);

-		}

-

-		if (descriptionPainted && description != null) {

-			descriptionLabel = factory.createLabel(section, description, SWT.WRAP);

-		}

-		client = createClient(section, factory);

-		section.setData(this);

-		control = section;

-		return section;

-	}

-	

-	private void doToggle() {

-		boolean collapsed = toggle.getSelection();

-		reflow();

-		if (descriptionLabel != null)

-		descriptionLabel.setVisible(!collapsed);

-		if (client != null)

-		client.setVisible(!collapsed);

-	}

-

-	protected void reflow() {

-		control.setRedraw(false);

-		control.getParent().setRedraw(false);

-		control.layout(true);

-		control.getParent().layout(true);

-		control.setRedraw(true);

-		control.getParent().setRedraw(true);

-	}

-

-	protected Text createText(

-		Composite parent,

-		String label,

-		FormWidgetFactory factory) {

-		return createText(parent, label, factory, 1);

-	}

-	protected Text createText(

-		Composite parent,

-		String label,

-		FormWidgetFactory factory,

-		int span) {

-		factory.createLabel(parent, label);

-		Text text = factory.createText(parent, "");

-		int hfill = span==1 ? GridData.FILL_HORIZONTAL : GridData.HORIZONTAL_ALIGN_FILL;

-		GridData gd =

-			new GridData(hfill | GridData.VERTICAL_ALIGN_CENTER);

-		//gd.grabExcessHorizontalSpace = true;

-		gd.horizontalSpan = span;

-		text.setLayoutData(gd);

-		return text;

-	}

-	protected Text createText(

-		Composite parent,

-		FormWidgetFactory factory,

-		int span) {

-		Text text = factory.createText(parent, "");

-		int hfill = span==1 ? GridData.FILL_HORIZONTAL : GridData.HORIZONTAL_ALIGN_FILL;

-		GridData gd =

-			new GridData(hfill | GridData.VERTICAL_ALIGN_CENTER);

-		//gd.grabExcessHorizontalSpace = true;

-		gd.horizontalSpan = span;

-		text.setLayoutData(gd);

-		return text;

-	}

-	public void dispose() {

-		JFaceResources.getFontRegistry().removeListener(this);

-	}

-	public boolean doGlobalAction(String actionId) {

-		return false;

-	}

-	public void expandTo(Object object) {

-	}

-	public final void fireChangeNotification(int changeType, Object changeObject) {

-		if (sectionManager == null)

-			return;

-		sectionManager.dispatchNotification(this, changeType, changeObject);

-	}

-	public final void fireSelectionNotification(Object changeObject) {

-		fireChangeNotification(SELECTION, changeObject);

-	}

-	public java.lang.String getDescription() {

-		return description;

-	}

-	public java.lang.String getHeaderColorKey() {

-		return headerColorKey;

-	}

-	public java.lang.String getHeaderText() {

-		return headerText;

-	}

-	public int getHeightHint() {

-		return heightHint;

-	}

-	public int getWidthHint() {

-		return widthHint;

-	}

-	public void initialize(Object input) {

-	}

-	public boolean isAddSeparator() {

-		return addSeparator;

-	}

-	public boolean isDescriptionPainted() {

-		return descriptionPainted;

-	}

-	public boolean isDirty() {

-		return dirty;

-	}

-	public boolean isHeaderPainted() {

-		return headerPainted;

-	}

-	public boolean isReadOnly() {

-		return readOnly;

-	}

-	public void sectionChanged(

-		FormSection source,

-		int changeType,

-		Object changeObject) {

-	}

-	public void setAddSeparator(boolean newAddSeparator) {

-		addSeparator = newAddSeparator;

-	}

-

-	private String trimNewLines(String text) {

-		StringBuffer buff = new StringBuffer();

-		for (int i = 0; i < text.length(); i++) {

-			char c = text.charAt(i);

-			if (c == '\n')

-				buff.append(' ');

-			else

-				buff.append(c);

-		}

-		return buff.toString();

-	}

-

-	public void setDescription(java.lang.String newDescription) {

-		// we will trim the new lines so that we can

-		// use layout-based word wrapping instead

-		// of hard-coded one

-		description = trimNewLines(newDescription);

-		//description = newDescription;

-		if (descriptionLabel != null)

-			descriptionLabel.setText(newDescription);

-	}

-	public void setDescriptionPainted(boolean newDescriptionPainted) {

-		descriptionPainted = newDescriptionPainted;

-	}

-	public void setDirty(boolean newDirty) {

-		dirty = newDirty;

-	}

-	public void setFocus() {

-		if (toggle!=null)

-			toggle.setFocus();

-	}

-	public void setHeaderColorKey(java.lang.String newHeaderColorKey) {

-		headerColorKey = newHeaderColorKey;

-	}

-	public void setHeaderPainted(boolean newHeaderPainted) {

-		headerPainted = newHeaderPainted;

-	}

-	public void setHeaderText(java.lang.String newHeaderText) {

-		headerText = newHeaderText;

-		if (header != null)

-			header.setText(headerText);

-	}

-	public void setHeightHint(int newHeightHint) {

-		heightHint = newHeightHint;

-	}

-	void setManager(SectionChangeManager manager) {

-		this.sectionManager = manager;

-	}

-	public void setReadOnly(boolean newReadOnly) {

-		readOnly = newReadOnly;

-	}

-

-	public void setWidthHint(int newWidthHint) {

-		widthHint = newWidthHint;

-	}

-

-	public void update() {

-	}

-

-	public void propertyChange(PropertyChangeEvent arg0) {

-		if (control != null && header != null) {

-			header.setFont(JFaceResources.getBannerFont());

-			control.layout(true);

-		}

-	}

-

-	/**

-	 * Gets the collapsable.

-	 * @return Returns a boolean

-	 */

-	public boolean getCollapsable() {

-		return collapsable;

-	}

-

-	/**

-	 * Sets the collapsable.

-	 * @param collapsable The collapsable to set

-	 */

-	public void setCollapsable(boolean collapsable) {

-		this.collapsable = collapsable;

-	}

-

-	public void setCollapsed(boolean collapsed) {

-		this.collapsed = collapsed;

-	}

-	

-	public boolean canPaste(Clipboard clipboard) {

-		return false;

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormWidgetFactory.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormWidgetFactory.java
deleted file mode 100644
index 56e5cd6..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormWidgetFactory.java
+++ /dev/null
@@ -1,406 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-

-import org.eclipse.swt.graphics.*;

-import java.util.*;

-import org.eclipse.swt.*;

-import org.eclipse.swt.widgets.*;

-import org.eclipse.jface.resource.*;

-import org.eclipse.swt.events.*;

-import org.eclipse.swt.custom.*;

-import org.eclipse.ui.IWorkbenchActionConstants;

-import org.eclipse.update.ui.forms.internal.engine.FormEngine;

-

-public class FormWidgetFactory {

-	public static final String DEFAULT_HEADER_COLOR = "__default__header__";

-	public static final String COLOR_BORDER = "__border";

-	public static final String COLOR_COMPOSITE_SEPARATOR = "__compSep";

-

-	private Hashtable colorRegistry = new Hashtable();

-	private Color backgroundColor;

-	private KeyListener deleteListener;

-	private Color foregroundColor;

-	private Display display;

-	public static final int BORDER_STYLE = SWT.NONE; //SWT.BORDER;

-	private BorderPainter borderPainter;

-	private Color borderColor;

-	private HyperlinkHandler hyperlinkHandler;

-	/* default */ VisibilityHandler visibilityHandler;

-	/* default */ KeyboardHandler keyboardHandler;

-

-	class BorderPainter implements PaintListener {

-		public void paintControl(PaintEvent event) {

-			Composite composite = (Composite) event.widget;

-			Control[] children = composite.getChildren();

-			for (int i = 0; i < children.length; i++) {

-				Control c = children[i];

-				if (c.getEnabled() == false && !(c instanceof CCombo))

-					continue;

-				if (c instanceof SelectableFormLabel)

-					continue;

-				if (c instanceof Text || c instanceof Canvas || c instanceof CCombo) {

-					Rectangle b = c.getBounds();

-					GC gc = event.gc;

-					gc.setForeground(c.getBackground());

-					gc.drawRectangle(b.x - 1, b.y - 1, b.width + 1, b.height + 1);

-					gc.setForeground(foregroundColor);

-					if (c instanceof CCombo)

-						gc.drawRectangle(b.x - 1, b.y - 1, b.width + 1, b.height + 1);

-					else 

-						gc.drawRectangle(b.x - 1, b.y - 2, b.width + 1, b.height + 3);

-				} else if (c instanceof Table || c instanceof Tree || c instanceof TableTree) {

-					Rectangle b = c.getBounds();

-					GC gc = event.gc;

-					gc.setForeground(borderColor);

-					//gc.drawRectangle(b.x - 2, b.y - 2, b.width + 3, b.height + 3);

-					gc.drawRectangle(b.x - 1, b.y - 1, b.width + 2, b.height + 2);

-				}

-			}

-		}

-	}

-

-	class VisibilityHandler extends FocusAdapter {

-		public void focusGained(FocusEvent e) {

-			Widget w = e.widget;

-			if (w instanceof Control) {

-				ensureVisible((Control) w);

-			}

-		}

-	}

-

-	class KeyboardHandler extends KeyAdapter {

-		public void keyPressed(KeyEvent e) {

-			Widget w = e.widget;

-			if (w instanceof Control) {

-				processKey(e.keyCode, (Control) w);

-			}

-		}

-	}

-

-	public FormWidgetFactory() {

-		this(Display.getCurrent());

-	}

-

-	public FormWidgetFactory(Display display) {

-		this.display = display;

-		initialize();

-	}

-

-	public static ScrolledComposite getScrolledComposite(Control c) {

-		Composite parent = c.getParent();

-

-		while (parent != null) {

-			if (parent instanceof ScrolledComposite) {

-				return (ScrolledComposite) parent;

-			}

-			parent = parent.getParent();

-		}

-		return null;

-	}

-

-	public static void ensureVisible(Control c) {

-		ScrolledComposite scomp = getScrolledComposite(c);

-		if (scomp != null) {

-			AbstractSectionForm.ensureVisible(scomp, c);

-		}

-	}

-

-	public static void processKey(int keyCode, Control c) {

-		ScrolledComposite scomp = getScrolledComposite(c);

-		if (scomp != null) {

-			switch (keyCode) {

-				case SWT.ARROW_DOWN :

-					AbstractSectionForm.scrollVertical(scomp, false);

-					break;

-				case SWT.ARROW_UP :

-					AbstractSectionForm.scrollVertical(scomp, true);

-					break;

-				case SWT.ARROW_LEFT :

-					AbstractSectionForm.scrollHorizontal(scomp, true);

-					break;

-				case SWT.ARROW_RIGHT :

-					AbstractSectionForm.scrollHorizontal(scomp, false);

-					break;

-				case SWT.PAGE_UP :

-					AbstractSectionForm.scrollPage(scomp, true);

-					break;

-				case SWT.PAGE_DOWN :

-					AbstractSectionForm.scrollPage(scomp, false);

-					break;

-			}

-		}

-	}

-

-	public Button createButton(Composite parent, String text, int style) {

-		int flatStyle = BORDER_STYLE == SWT.BORDER ? SWT.NULL : SWT.FLAT;

-		//int flatStyle = SWT.NULL;

-		Button button = new Button(parent, style | flatStyle);

-		button.setBackground(backgroundColor);

-		button.setForeground(foregroundColor);

-		if (text != null)

-			button.setText(text);

-		button.addFocusListener(visibilityHandler);

-		return button;

-	}

-	public Composite createComposite(Composite parent) {

-		return createComposite(parent, SWT.NULL);

-	}

-	public Composite createComposite(Composite parent, int style) {

-		Composite composite = new Composite(parent, style);

-		composite.setBackground(backgroundColor);

-		composite.addMouseListener(new MouseAdapter() {

-			public void mousePressed(MouseEvent e) {

-				((Control) e.widget).setFocus();

-			}

-		});

-		composite.setMenu(parent.getMenu());

-		return composite;

-	}

-	public Composite createCompositeSeparator(Composite parent) {

-		Composite composite = new Composite(parent, SWT.NONE);

-		composite.setBackground(getColor(COLOR_COMPOSITE_SEPARATOR));

-		return composite;

-	}

-

-	public Label createHeadingLabel(Composite parent, String text) {

-		return createHeadingLabel(parent, text, null, SWT.NONE);

-	}

-

-	public Label createHeadingLabel(Composite parent, String text, int style) {

-		return createHeadingLabel(parent, text, null, style);

-	}

-

-	public Label createHeadingLabel(Composite parent, String text, Color bg) {

-		return createHeadingLabel(parent, text, bg, SWT.NONE);

-	}

-

-	public Label createHeadingLabel(

-		Composite parent,

-		String text,

-		Color bg,

-		int style) {

-		Label label = new Label(parent, style);

-		if (text != null)

-			label.setText(text);

-		label.setBackground(backgroundColor);

-		label.setForeground(foregroundColor);

-		label.setFont(JFaceResources.getFontRegistry().get(JFaceResources.BANNER_FONT));

-		return label;

-	}

-

-	public Label createHyperlinkLabel(

-		Composite parent,

-		String text,

-		IHyperlinkListener listener) {

-		return createHyperlinkLabel(parent, text, listener, SWT.NULL);

-	}

-	public Label createHyperlinkLabel(

-		Composite parent,

-		String text,

-		IHyperlinkListener listener,

-		int style) {

-		Label label = createLabel(parent, text, style);

-		turnIntoHyperlink(label, listener);

-		return label;

-	}

-	public Label createLabel(Composite parent, String text) {

-		return createLabel(parent, text, SWT.NONE);

-	}

-	public Label createLabel(Composite parent, String text, int style) {

-		Label label = new Label(parent, style);

-		if (text != null)

-			label.setText(text);

-		label.setBackground(backgroundColor);

-		label.setForeground(foregroundColor);

-		return label;

-	}

-

-	public SelectableFormLabel createSelectableLabel(

-		Composite parent,

-		String text) {

-		return createSelectableLabel(parent, text, SWT.NONE);

-	}

-

-	public SelectableFormLabel createSelectableLabel(

-		Composite parent,

-		String text,

-		int style) {

-		SelectableFormLabel label = new SelectableFormLabel(parent, style);

-		if (text != null)

-			label.setText(text);

-		label.setBackground(backgroundColor);

-		label.setForeground(foregroundColor);

-		label.addFocusListener(visibilityHandler);

-		label.addKeyListener(keyboardHandler);

-		return label;

-	}

-

-	public FormEngine createFormEngine(Composite parent) {

-		FormEngine engine = new FormEngine(parent, SWT.WRAP);

-		engine.setBackground(backgroundColor);

-		engine.setForeground(foregroundColor);

-		engine.marginWidth = 1;

-		engine.marginHeight = 0;

-		engine.setHyperlinkSettings(getHyperlinkHandler());

-		engine.addKeyListener(keyboardHandler);

-		engine.setMenu(parent.getMenu());

-		return engine;

-	}

-

-	public Label createSeparator(Composite parent, int style) {

-		Label label = new Label(parent, SWT.SEPARATOR | style);

-		label.setBackground(backgroundColor);

-		label.setForeground(borderColor);

-		return label;

-	}

-	public Table createTable(Composite parent, int style) {

-		Table table = new Table(parent, BORDER_STYLE | style);

-		table.setBackground(backgroundColor);

-		table.setForeground(foregroundColor);

-		hookDeleteListener(table);

-		return table;

-	}

-	public Text createText(Composite parent, String value) {

-		return createText(parent, value, BORDER_STYLE | SWT.SINGLE);

-	}

-	public Text createText(Composite parent, String value, int style) {

-		Text text = new Text(parent, style);

-		if (value != null)

-			text.setText(value);

-		text.setBackground(backgroundColor);

-		text.setForeground(foregroundColor);

-		text.addFocusListener(visibilityHandler);

-		return text;

-	}

-	public Tree createTree(Composite parent, int style) {

-		Tree tree = new Tree(parent, BORDER_STYLE | style);

-		tree.setBackground(backgroundColor);

-		tree.setForeground(foregroundColor);

-		hookDeleteListener(tree);

-		return tree;

-	}

-	private void deleteKeyPressed(Widget widget) {

-		if (!(widget instanceof Control))

-			return;

-		Control control = (Control) widget;

-		for (Control parent = control.getParent();

-			parent != null;

-			parent = parent.getParent()) {

-			if (parent.getData() instanceof FormSection) {

-				FormSection section = (FormSection) parent.getData();

-				section.doGlobalAction(IWorkbenchActionConstants.DELETE);

-				break;

-			}

-		}

-	}

-	public void dispose() {

-		Enumeration colors = colorRegistry.elements();

-		while (colors.hasMoreElements()) {

-			Color c = (Color) colors.nextElement();

-			c.dispose();

-		}

-		hyperlinkHandler.dispose();

-		colorRegistry = null;

-	}

-	public Color getBackgroundColor() {

-		return backgroundColor;

-	}

-	public Color getBorderColor() {

-		return borderColor;

-	}

-	public Cursor getBusyCursor() {

-		return hyperlinkHandler.getBusyCursor();

-	}

-	public Color getColor(String key) {

-		return (Color) colorRegistry.get(key);

-	}

-	public Color getForegroundColor() {

-		return foregroundColor;

-	}

-	public HyperlinkHandler getHyperlinkHandler() {

-		return hyperlinkHandler;

-	}

-	public Cursor getHyperlinkCursor() {

-		return hyperlinkHandler.getHyperlinkCursor();

-	}

-	public Color getHyperlinkColor() {

-		return hyperlinkHandler.getForeground();

-	}

-	public Color getHyperlinkHoverColor() {

-		return hyperlinkHandler.getActiveForeground();

-	}

-	public int getHyperlinkUnderlineMode() {

-		return hyperlinkHandler.getHyperlinkUnderlineMode();

-	}

-	public void hookDeleteListener(Control control) {

-		if (deleteListener == null) {

-			deleteListener = new KeyAdapter() {

-				public void keyPressed(KeyEvent event) {

-					if (event.character == SWT.DEL && event.stateMask == 0) {

-						deleteKeyPressed(event.widget);

-					}

-				}

-			};

-		}

-		control.addKeyListener(deleteListener);

-	}

-	private void initialize() {

-		backgroundColor = display.getSystemColor(SWT.COLOR_LIST_BACKGROUND);

-		registerColor(COLOR_BORDER, 195, 191, 179);

-		registerColor(COLOR_COMPOSITE_SEPARATOR, 152, 170, 203);

-		registerColor(DEFAULT_HEADER_COLOR, 0x48, 0x70, 0x98);

-		if (isWhiteBackground())

-			borderColor = getColor(COLOR_BORDER);

-		else

-			borderColor = display.getSystemColor(SWT.COLOR_WIDGET_BACKGROUND);

-		foregroundColor = display.getSystemColor(SWT.COLOR_LIST_FOREGROUND);

-		hyperlinkHandler = new HyperlinkHandler();

-		hyperlinkHandler.setBackground(backgroundColor);

-		updateHyperlinkColors();

-		visibilityHandler = new VisibilityHandler();

-		keyboardHandler = new KeyboardHandler();

-	}

-	

-	public boolean isWhiteBackground() {

-		return backgroundColor.getRed()==255 && backgroundColor.getGreen()==255 &&

-			backgroundColor.getBlue()==255;

-	}

-

-	public void updateHyperlinkColors() {

-		Color hyperlinkColor = JFaceColors.getHyperlinkText(display);

-		Color activeHyperlinkColor = JFaceColors.getActiveHyperlinkText(display);

-		hyperlinkHandler.setForeground(hyperlinkColor);

-		hyperlinkHandler.setActiveForeground(activeHyperlinkColor);

-	}

-

-	public void paintBordersFor(Composite parent) {

-		if (BORDER_STYLE == SWT.BORDER)

-			return;

-		if (borderPainter == null)

-			borderPainter = new BorderPainter();

-		parent.addPaintListener(borderPainter);

-	}

-	public Color registerColor(String key, int r, int g, int b) {

-		Color c = new Color(display, r, g, b);

-		colorRegistry.put(key, c);

-		return c;

-	}

-	public void setBackgroundColor(Color color) {

-		backgroundColor = color;

-	}

-	public void setHyperlinkColor(Color color) {

-		hyperlinkHandler.setForeground(color);

-	}

-	public void setHyperlinkHoverColor(org.eclipse.swt.graphics.Color hoverColor) {

-		hyperlinkHandler.setActiveForeground(hoverColor);

-	}

-	public void setHyperlinkUnderlineMode(int newHyperlinkUnderlineMode) {

-		hyperlinkHandler.setHyperlinkUnderlineMode(newHyperlinkUnderlineMode);

-	}

-	public void turnIntoHyperlink(Control control, IHyperlinkListener listener) {

-		hyperlinkHandler.registerHyperlink(control, listener);

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPlugin.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPlugin.java
deleted file mode 100644
index 69296d3..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPlugin.java
+++ /dev/null
@@ -1,122 +0,0 @@
-package org.eclipse.update.ui.forms.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.*;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-public class FormsPlugin extends AbstractUIPlugin {
-	private static FormsPlugin instance;
-	private ResourceBundle resourceBundle;
-
-	/**
-	 * Constructor for FormsPlugin.
-	 * @param descriptor
-	 */
-	public FormsPlugin(IPluginDescriptor descriptor) {
-		super(descriptor);
-		instance = this;
-		try {
-			resourceBundle =
-				ResourceBundle.getBundle(
-					"org.eclipse.update.ui.forms.internal.FormsPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = FormsPlugin.getDefault().getResourceBundle();
-		try {
-			return bundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getFormattedMessage(String key, String[] args) {
-		String text = getResourceString(key);
-		return java.text.MessageFormat.format(text, args);
-	}
-
-	public static String getFormattedMessage(String key, String arg) {
-		String text = getResourceString(key);
-		return java.text.MessageFormat.format(text, new Object[] { arg });
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-
-	public static FormsPlugin getDefault() {
-		return instance;
-	}
-
-	public static IWorkbenchPage getActivePage() {
-		return getDefault().internalGetActivePage();
-	}
-
-	private IWorkbenchPage internalGetActivePage() {
-		return getWorkbench().getActiveWorkbenchWindow().getActivePage();
-	}
-
-	public static Shell getActiveWorkbenchShell() {
-		return getActiveWorkbenchWindow().getShell();
-	}
-
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		return getDefault().getWorkbench().getActiveWorkbenchWindow();
-	}
-
-	public static String getPluginId() {
-		return getDefault().getDescriptor().getUniqueIdentifier();
-	}
-
-	public static void logException(Throwable e) {
-		logException(e, true);
-	}
-
-	public static void logException(Throwable e, boolean showErrorDialog) {
-		if (e instanceof InvocationTargetException) {
-			e = ((InvocationTargetException) e).getTargetException();
-		}
-
-		IStatus status = null;
-		if (e instanceof CoreException) {
-			status = ((CoreException) e).getStatus();
-		} else {
-			String message = e.getMessage();
-			if (message == null)
-				message = e.toString();
-			status =
-				new Status(
-					IStatus.ERROR,
-					getPluginId(),
-					IStatus.OK,
-					message,
-					e);
-		}
-		log(status, showErrorDialog);
-	}
-
-	public static void log(IStatus status, boolean showErrorDialog) {
-		if (showErrorDialog)
-			ErrorDialog.openError(
-				getActiveWorkbenchShell(),
-				null,
-				null,
-				status);
-		Platform.getPlugin("org.eclipse.core.runtime").getLog().log(status);
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPluginResources.properties b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPluginResources.properties
deleted file mode 100644
index c8ad693..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPluginResources.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-
-FormEgine.linkPopup.open = &Open
-FormEgine.linkPopup.copyShortcut = &Copy as Shortcut
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HTMLTableLayout.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HTMLTableLayout.java
deleted file mode 100644
index 3232633..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HTMLTableLayout.java
+++ /dev/null
@@ -1,645 +0,0 @@
-package org.eclipse.update.ui.forms.internal;

-/*

- * (c) Copyright IBM Corp. 2000, 2001.

- * All Rights Reserved.

- */

-import org.eclipse.swt.graphics.*;

-import org.eclipse.swt.widgets.*;

-import java.util.*;

-import org.eclipse.swt.SWT;

-

-/**

- * This implementation of the layout algorithm

- * attempts to position controls in the composite

- * using a two-pass autolayout HTML table altorithm

- * recommeded by HTML 4.01 W3C specification.

- * The main differences with GridLayout is that

- * it has two passes and that width and height

- * are not calculated in the same pass.

- * <p>

- * The advantage of the algorithm over GridLayout

- * is that it is capable of flowing text controls

- * capable of line wrap. These controls do not

- * have natural 'preferred size'. Instead, 

- * they are capable of providing the required

- * height if the width is set. Consequently,

- * this algorithm first calculates the widths

- * that will be assigned to columns, and then

- * passes those widths to the controls to

- * calculate the height. When a composite

- * with this layout is a child of the scrolling

- * composite, they should interact in such

- * a way that reduction in the scrolling composite

- * width results in the reflow and increase of

- * the overall height.

- * <p>

- * If none of the columns contain expandable

- * and wrappable controls, the end-result

- * will be similar to the one provided

- * by GridLayout. The difference will

- * show up for layouts that contain

- * controls whose minimum and maximum

- * widths are not the same.

- */

-

-public class HTMLTableLayout extends Layout {

-	public int numColumns = 1;

-	public int leftMargin = 5;

-	public int rightMargin = 5;

-	public int topMargin = 5;

-	public int bottomMargin = 5;

-	public int horizontalSpacing = 5;

-	public int verticalSpacing = 5;

-	public boolean makeColumnsEqualWidth = false;

-	

-	private boolean initialLayout=true;

-	private Vector grid = null;

-	private int [] minColumnWidths, maxColumnWidths;

-	private int widestColumnWidth;

-	private int [] growingColumns;

-	

-	public int getMinimumWidth(Composite parent, boolean changed) {

-		changed = true;

-		initializeIfNeeded(parent, changed);

-		if (initialLayout) {

-		   changed = true;

-		   initialLayout = false;

-		}

-		if (grid==null || changed) {

-		   changed = true;

-		   grid = new Vector();

-		   createGrid(parent);

-		}

-		if (minColumnWidths==null)

-		   minColumnWidths = new int [numColumns];

-		for (int i=0; i<numColumns; i++) {

-			minColumnWidths[i] = 0;

-		}

-		return internalGetMinimumWidth(parent, changed);

-	}

-	

-	public int getMaximumWidth(Composite parent, boolean changed) {

-		changed = true;

-		initializeIfNeeded(parent, changed);

-		if (initialLayout) {

-		   changed = true;

-		   initialLayout = false;

-		}

-		if (grid==null || changed) {

-		   changed = true;

-		   grid = new Vector();

-		   createGrid(parent);

-		}

-		if (maxColumnWidths==null)

-		   maxColumnWidths = new int[numColumns];

-		for (int i=0; i<numColumns; i++) {

-			maxColumnWidths[i] = 0;

-		}

-		return internalGetMaximumWidth(parent, changed);

-	}

-	

-	/**

-	 * @see Layout#layout(Composite, boolean)

-	 */

-	protected void layout(Composite parent, boolean changed) {

-		Rectangle clientArea = parent.getClientArea();

-		Control [] children = parent.getChildren();

-		if (children.length ==0) return;

-		int parentWidth = clientArea.width;

-		changed = true;

-		initializeIfNeeded(parent, changed);

-		if (initialLayout) {

-		   changed = true;

-		   initialLayout = false;

-		}

-		if (grid==null || changed) {

-		   changed = true;

-		   grid = new Vector();

-		   createGrid(parent);

-		}

-		resetColumnWidths();

-		int minWidth = internalGetMinimumWidth(parent, changed);

-		int maxWidth = internalGetMaximumWidth(parent, changed);

-		

-		int tableWidth = parentWidth;

-		

-		int [] columnWidths;

-		

-		if (parentWidth < minWidth) {

-		   tableWidth = minWidth;

-		   if (makeColumnsEqualWidth) {

-		      columnWidths = new int[numColumns];

-		      for (int i=0; i<numColumns; i++) {

-		      	columnWidths[i] = widestColumnWidth;

-		      }

-		   }

-		   else

-		      columnWidths = minColumnWidths;

-		}

-		else if (parentWidth > maxWidth) {

-			if (growingColumns.length==0) {

-		   		tableWidth = maxWidth;

-		   		columnWidths = maxColumnWidths;

-			}

-			else {

-				columnWidths = new int [numColumns];

-				int colSpace = tableWidth - leftMargin - rightMargin;

-				colSpace -= (numColumns-1)*horizontalSpacing;

-				int extra = parentWidth - maxWidth;

-				int colExtra = extra / growingColumns.length;

-				for (int i=0; i<numColumns; i++) {

-					columnWidths[i] = maxColumnWidths[i];

-				

-					if (isGrowingColumn(i)) {

-						columnWidths[i] += colExtra;

-					}

-				}

-			}

-		}

-		else {

-			columnWidths = new int [numColumns];

-			if (makeColumnsEqualWidth) {

-				int colSpace = tableWidth - leftMargin - rightMargin;

-				colSpace -= (numColumns-1)*horizontalSpacing;

-				int col = colSpace/numColumns;

-				for (int i=0; i<numColumns; i++) {

-					columnWidths[i] = col;

-				}

-			}

-			else {

-			   int [] extraSpace = calculateExtraSpace(tableWidth, maxWidth, minWidth);

-			   for (int i=0; i<numColumns; i++) {

-				  int minCWidth = minColumnWidths[i];

-		   		  columnWidths[i] = minCWidth + extraSpace[i];

-			   }

-			}

-		}

-		int x = 0;

-		int y = topMargin;

-		// assign widths 

-		for (int i=0; i<grid.size(); i++) {

-			TableData [] row = (TableData [])grid.elementAt(i);

-			// assign widths, calculate heights

-			int rowHeight = 0;

-			x = leftMargin;

-			for (int j=0; j<numColumns; j++) {

-				TableData td = row[j];

-				if (td.isItemData==false) {

-					continue;

-				}

-				Control child = children[td.childIndex];

-				int span = td.colspan;

-				int cwidth = 0;

-				for (int k=j; k<j+span; k++) {

-					cwidth += columnWidths[k];

-					if (k<j+span-1) cwidth += horizontalSpacing;

-				}

-				Point size = computeSize(child, cwidth, changed);

-				td.compWidth = cwidth;

-				if (td.heightHint!=SWT.DEFAULT) {

-					size = new Point(size.x, td.heightHint);

-				}

-				td.compSize = size;

-				rowHeight = Math.max(rowHeight, size.y);

-			}

-			for (int j=0; j<numColumns; j++) {

-				TableData td = row[j];

-				if (td.isItemData==false) {

-					continue;

-				}

-				Control child = children[td.childIndex];

-				placeControl(child, td, x, y, rowHeight);

-				x += td.compWidth;

-				if (j<numColumns-1) x+= horizontalSpacing;		

-			}

-			y += rowHeight + verticalSpacing;

-		}

-	}

-	

-boolean isGrowingColumn(int col) {

-	if (growingColumns==null) return false;

-	for (int i=0; i<growingColumns.length; i++) {

-		if (col == growingColumns[i]) return true;

-	}

-	return false;

-}	

-	

-int [] calculateExtraSpace(int tableWidth, int maxWidth, int minWidth) {

-	int fixedPart = leftMargin + rightMargin + (numColumns-1)*horizontalSpacing;

-	int D = maxWidth - minWidth;

-	

-	int W = tableWidth -fixedPart - minWidth;

-	

-	int extraSpace [] = new int [numColumns];

-

-	int rem = 0;

-	for (int i=0; i<numColumns; i++) { 

-		int cmin = minColumnWidths[i];

-		int cmax = maxColumnWidths[i];

-		int d = cmax - cmin;

-		int extra = D!=0 ? (d * W)/D : 0;

-		if (i<numColumns-1) {

-			extraSpace [i] = extra;

-			rem += extra;

-		}

-		else {

-			extraSpace[i] = W - rem;

-		}

-	}

-	return extraSpace;

-}

-	

-Point computeSize(Control child, int width, boolean changed) {

-	int widthArg = width;

-	if (!isWrap(child))

-	   widthArg = SWT.DEFAULT;

-	Point size = child.computeSize(widthArg, SWT.DEFAULT, changed);

-	return size;

-}

-

-void placeControl(Control control, TableData td, int x, int y, int rowHeight) {

-	int xloc = x + td.indent;

-	int yloc = y;

-	int width = td.compSize.x;

-	int height = td.compSize.y;

-	int colWidth = td.compWidth;

-	

-	// align horizontally

-	if (td.align==TableData.CENTER) {

-		xloc = x + colWidth/2 - width/2;

-	}

-	else if (td.align==TableData.RIGHT) {

-		xloc = x + colWidth - width;

-	}

-	else if (td.align==TableData.FILL) {

-		width = colWidth;

-	}

-	// align vertically

-	if (td.valign == TableData.MIDDLE) {

-		yloc = y + rowHeight/2 - height/2;

-	}

-	else if (td.valign==TableData.BOTTOM) {

-		yloc = y + rowHeight - height;

-	}

-	else if (td.valign==TableData.FILL) {

-		height = rowHeight;	

-	}

-	control.setBounds(xloc, yloc, width, height);

-}

-

-void createGrid(Composite composite) {

-	int row, column, rowFill, columnFill;

-	Control[] children;

-	TableData spacerSpec;

-	Vector growingCols = new Vector();

-

-	// 

-	children = composite.getChildren();

-	if (children.length==0) return;

-

-	// 

-	grid.addElement(createEmptyRow());

-	row = 0;

-	column = 0;

-

-	// Loop through the children and place their associated layout specs in the

-	// grid.  Placement occurs left to right, top to bottom (i.e., by row).

-	for (int i = 0; i < children.length; i++) {

-		// Find the first available spot in the grid.

-		Control child = children[i];

-		TableData spec = (TableData) child.getLayoutData();

-		while (((TableData[]) grid.elementAt(row))[column] != null) {

-			column = column + 1;

-			if (column >= numColumns) {

-				row = row + 1;

-				column = 0;

-				if (row >= grid.size()) {

-					grid.addElement(createEmptyRow());

-				}

-			}

-		}

-		// See if the place will support the widget's horizontal span.  If not, go to the

-		// next row.

-		if (column + spec.colspan - 1 >= numColumns) {

-			grid.addElement(createEmptyRow());

-			row = row + 1;

-			column = 0;

-		}

-

-		// The vertical span for the item will be at least 1.  If it is > 1,

-		// add other rows to the grid.

-		for (int j = 2; j <= spec.rowspan; j++) {

-			if (row + j > grid.size()) {

-				grid.addElement(createEmptyRow());

-			}

-		}

-

-		// Store the layout spec.  Also cache the childIndex.  NOTE: That we assume the children of a

-		// composite are maintained in the order in which they are created and added to the composite.

-		((TableData[]) grid.elementAt(row))[column] = spec;

-		spec.childIndex = i;

-		

-		if (spec.grabHorizontal) {

-			updateGrowingColumns(growingCols, spec, column);

-		}

-

-		// Put spacers in the grid to account for the item's vertical and horizontal

-		// span.

-		rowFill = spec.rowspan - 1;

-		columnFill = spec.colspan - 1;

-		for (int r = 1; r <= rowFill; r++) {

-			for (int c = 0; c < spec.colspan; c++) {

-				spacerSpec = new TableData();

-				spacerSpec.isItemData = false;

-				((TableData[]) grid.elementAt(row + r))[column + c] = spacerSpec;

-			}

-		}

-		for (int c = 1; c <= columnFill; c++) {

-			for (int r = 0; r < spec.rowspan; r++) {

-				spacerSpec = new TableData();

-				spacerSpec.isItemData = false;

-				((TableData[]) grid.elementAt(row + r))[column + c] = spacerSpec;

-			}

-		}

-		column = column + spec.colspan - 1;

-	}

-

-	// Fill out empty grid cells with spacers.

-	for (int k = column + 1; k < numColumns; k++) {

-		spacerSpec = new TableData();

-		spacerSpec.isItemData = false;

-		((TableData[]) grid.elementAt(row))[k] = spacerSpec;

-	}

-	for (int k = row + 1; k < grid.size(); k++) {

-		spacerSpec = new TableData();

-		spacerSpec.isItemData = false;

-		((TableData[]) grid.elementAt(k))[column] = spacerSpec;

-	}

-	growingColumns = new int [growingCols.size()];

-	for (int i=0; i<growingCols.size(); i++) {

-		growingColumns[i] = ((Integer)growingCols.get(i)).intValue();

-	}

-}

-

-pri